EMQ X Broker 啟動


以下的 shell 命令,都是在 emqx 的安裝目錄下進行的,因此需要先執行:

cd <emqx安裝目錄>

一、啟停管理

啟動 EMQ X Broker

sudo bin/emqx start

停止 EMQ X Broker

sudo bin/emqx stop

1.1 啟動失敗

參考自 4.1.x 版本常見錯誤

我遇到了 EMQ X Broker v4.1.1 failed to start within 15 seconds 錯誤,執行 ./bin/emqx console 輸出的錯誤內容包含:

{application_start_failure,kernel,{{shutdown,{failed_to_start_child,kernel_safe_sup,{on_load_function_failed,crypto}}}, ..}

原因是 4.1.x 需要 OPENSSL 大於 1.0.2

1.1.1 查看已安裝的openssl包

rpm –qa | grep openssl

2.1.2 卸載已安裝的openssl包

sudo rpm -e --justdb --nodeps <yourpackage>

1.1.3 openssl_lib安裝

前兩步已經清理好了老的openssl_lib,現在可以安裝新版本了:

sudo rpm -ivh openssl-libs-1.0.2k-19.el7.x86_64.rpm

1.2 修改node.name之后重啟

停止 emqx 后,修改 etc/emqx.conf 文件中的 node.name 的值之后,重啟前需要做一些清理工作

如果是用命令 sudo bin/emqx start 啟動的,那么將存在 data/root_erl_pipes 目錄

同理,如果你用 bin/emqx start 啟動emqx,那么將存在 data/<當前用戶的用戶名>_erl_pipes 目錄

我們需要在重啟前清除這些目錄

1.2.1 刪除

刪除 data/root_erl_pipes 目錄

rm -rf data/root_erl_pipes/

刪除所有 xxx_erl_pipes 之后,你就可以重啟了~

二、插件管理

查看所有插件:

bin/emqx_ctl plugins list

查看特定插件,如 emqx_dashboard

bin/emqx_ctl plugins list | grep emqx_dashboard

結果如下:

Plugin(emqx_dashboard, description=EMQ X Web Dashboard, active=false)
  • active=false 表示狀態不活躍(未啟動)

重啟插件

bin/emqx_ctl plugins reload emqx_dashboard

三、設置crontab自動重啟

3.1 新建/更新/刪除定時任務

crontab –e

3.2 crontab表達式

Linux crontab 在線工具 https://tool.lu/crontab/

例如:

*/5 * * * * /bin/bash /home/geekziyu/emqx_monitor.sh

/home/geekziyu/emqx_monitor.sh 腳本內容如下:

#!/bin/bash
time=$(date "+%Y-%m-%d %H:%M:%S")
if [ `ps -ef | grep emqx | grep -v grep | wc -l` -ge 4 ];then
echo $time      runing >> /home/geekziyu/emqx_reboot_log
else
cd /home/geekziyu/emqx_deploy_411/emqx/bin
sudo ./emqx start
echo $time      reboot >> /home/geekziyu/emqx_reboot_log
fi

3.3 查看定時任務

crontab –l

四、集群管理

查看集群狀態:

bin/emqx_ctl cluster status

初始狀態是每個單機各自都是一個“集群”,互相獨立。

加入集群:

bin/emqx_ctl cluster join <node.name>

表示當前節點接入到 <node.name> 所在的集群中

退出集群:

bin/emqx_ctl cluster leave


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM