注意:集群需额外开启4370与5370端口,且4370端口应仅限集群内服务器可访问。注意,该端口不可更改。具体请参考FMO服务器集群安全配置 - LiKai Blog
若您遇到集群配置失败或提示EMQX不存在等情况,请参考FMO4.0 语音服务器搭建教程 - LiKai Blog卸载并重新安装EMQX与SAS服务。
一 Cookie生成
集群要求服务器Cookie值一致。首先创建Cookie,先生成一串字符,在任意一台服务器上打开终端,运行:
openssl rand -hex 16
复制并保存输出的字符串。
二 集群配置
(Docker也可用,也可以让Docker与非Docker服务器一起集群)
1.下载脚本
打开终端,运行:
if [ -f /usr/bin/curl ]; then curl -O https://tylk.cc/fmo_file/fmo-sas/cluster.sh; else wget -O cluster.sh https://tylk.cc/fmo_file/fmo-sas/cluster.sh; fi && chmod +x cluster.sh
2.创建集群
在一台服务器上运行:
sudo bash cluster.sh create --name emqx@自己服务器的IP --cookie 第一步生成的字符串
例如:sudo bash cluster.sh create --name emqx@192.168.1.100 --cookie R8jKp3mL9qZ2xWv7bY6nT5cA1sD4fG0hJ
3.加入集群
在其它服务器上运行:
sudo bash cluster.sh join --name emqx@自己服务器的IP -n emqx@要加入的集群的服务器IP --cookie 第一步生成的字符串
例如:sudo bash cluster.sh join --name emqx@192.168.1.101 -n emqx@192.168.1.100 --cookie R8jKp3mL9qZ2xWv7bY6nT5cA1sD4fG0hJ
稍等片刻即可加入集群,若其它服务器本身也为独立服务器,则会组成集群。
4.退出集群
若需要退出集群,运行以下命令:
sudo bash cluster.sh leave
提醒:可以键入以下命令查看帮助,了解脚本功能:
sudo bash cluster.sh