emqx社区版资源连接下载 EMQX | EMQ
1、下载 emqx-centos7-v4.1.5.x86_64.rpmSHA256
wget https://www.emqx.com/zh/downloads/broker/4.1.5/emqx-centos7-v4.1.5.x86_64.rp
2、安装
29 30 31 服务器(自选) 安装包路径/opt/emqx
yum install emqx-centos7-v4.1.5.x86_64.rpm
3、运行
配置路径vim /etc/emqx/emqx.conf 软件路径/usr/lib/emqx/bin
emqx start(启动) emqx stop(关闭)
EMQ X默认配置中启用了匿名认证 生产环境中请禁用匿名认证。
allow_anonymous = false 不允许匿名访问
- 正确的方式加入集群
在30上执行 30加入到31的集群
./bin/emqx_ctl cluster join emqx@192.xxx.xxx.31
在29上执行 29加入到31的集群
./bin/emqx_ctl cluster join emqx@192.xxx.xx.31
- 查看状态
./bin/emqx_ctl cluster status
- 退出集群
在30上执行 主动退出集群
./bin/emqx_ctl cluster leave
在30上执行 强制从集群删除其他节点 删除29节点
./bin/emqx_ctl cluster force-leave emqx@192.xxx.xx.29
备注
emqx提供了三种消息发布服务质量
Quality of Service等级是发送与接收端的一种关于保证交付信息的协议。一共有3 个QoS 等级:
- "0 >至多一次" 消息发布完全依赖底层TCP/IP 网络,会发生消息丢失或者重复,这一级别可用于如下情况,环境,传感器数据,丢失一次度记录无所谓,因为不久之后会有第二次发送;
- "1 >至少一次" 确保消息到达,但消息重复可能发生;
- “2 >只有一次",确保消息到达一次,这一级别可用于如下情况,在计费系统中,消息重复或者丢失导致不正确的结果。
4、负载均衡配置
架构设计如图:
29、30、31服务器安装EMQX,07台服务器安装Nginx。
- 安装nginx 命令yum install -y nginx
如果出现No package nginx available,说明需要配置 epel 源
yum -y install epel-release
配置文件路径为 /etc/nginx/nginx.conf
修改后需要nginx -s reload
在配置文件内通过配置Nginx(跟http同级),如下达到负载、轮询、权重
- 启动 nginx
systemctl enable nginx
systemctl start nginx
如果报错directive -“stream”
yum -y install nginx-all-modules.noarch
- 使用
使用直接访问07台服务器http://192.xxx.xx.7/ 账号/密码 admin/public
5、本地消息保存配置
配置文件:/etc/eqmx/plugins/emqx_retainer.conf
6、持久化设置
通过插件方式实现:参考连接https://blog.csdn.net/emqx_broker/article/details/103989959
(本地还未实现)
7、本地测试负载
下载客户端工具MQTTX,https://mqttx.app/zh(下载链接) Mac端直接App Store下载,
配置Nginx监听SSL的端口1884,建立连接。如下:
新建多个连接,连接配置一样。如下:
多试几次看看负载、权重有没有生效。如下:
8、运维告警集成
https://www.modb.pro/db/242358