systemctlでvernemqが立ち上がらない IT by NHM - 2021-01-292021-02-17 困った時のジャーナル。epmd@0.0.0.0.socketが悪さしてるらしい。 journalctl -xe 1月 29 07:44:26 nhmasaaazu systemd[1]: Unit vernemq.service entered failed state. 1月 29 07:44:26 nhmasaaazu systemd[1]: vernemq.service failed. 1月 29 07:44:59 nhmasaaazu sudo[9968]: ec2-user : TTY=pts/0 ; PWD=/tmp ; USER=root ; COMMAND=/bin/systemctl start vernemq 1月 29 07:44:59 nhmasaaazu sudo[9968]: pam_unix(sudo:session): session opened for user root by ec2-user(uid=0) 1月 29 07:44:59 nhmasaaazu polkitd[1237]: Registered Authentication Agent for unix-process:9969:1924499 (system bus name :1.346 1月 29 07:44:59 nhmasaaazu systemd[1]: Cannot add dependency job for unit epmd@0.0.0.0.socket, ignoring: Unit not found. vernemq.service sudo cat /etc/systemd/system/vernemq.service # systemd unit file [Unit] Description=VerneMQ Server After=network.target epmd@0.0.0.0.socket Wants=network.target epmd@0.0.0.0.socket とりあえずコメントアウトしてから起動させてみる。 sudo systemctl daemon-reload sudo systemctl start vernemq うまくいったのでコメントアウトをやめて起動させてみる。成功! vernemq startで起動できるということはAfterとWantsのepmdは必要ないと思われる。 rebootしてもvernemq起動できてたので初回systemctl起動させるときだけに問題があるのか?。
EC2にMQTTブローカー(vernemq)を設定する。 IT by NHM - 2021-01-292021-02-17 作業用ディレクトリに移動してコンパイルするためのライブラリをインストールする。 cd /tmp sudo amazon-linux-extras install -y epel sudo yum -y install git openssl openssl-devel gcc-c++ unixODBC unixODBC-devel fop ncurses ncurses-devel wxGTK-devel leveldb-devel snappy-devel 今回はerlangをコンパイルするか下記からダウンロードすることも可能 Download Erlang Packageshttps://www.erlang-solutions.com/resources/download.html ソース取得して展開してコンパイルしてインストール。 wget http://erlang.org/download/otp_src_23.2.tar.gz tar -zxf otp_src_23.2.tar.gz cd otp_src_23.2/ ./configure make sudo make install amazon linux 2向けのバイナリをダウンロードしてインストールする。 cd /tmp wget https://github.com/vernemq/vernemq/releases/download/1.11.0/vernemq-1.11.0.amzn2.x86_64.rpm sudo yum install -y vernemq-1.11.0.amzn2.x86_64.rpm リソースの制限を確認しておく(open files)。 ulimit -aS core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i)