emqtt集群搭建,haproxy负载均衡

emqtt集群搭建,haproxy负载均衡

1、准备:

		1)、下载所需安装包并上传至服务器
		2)、3台centOS7 系统的虚机或者服务器

2、emq集群搭建

进入解压后的eqmx里的etc文件夹,编辑emqx.conf文件(3台服务器都需进行如下操作,node.name分别为node1,node2,node3)
修改以下内容:
		cluster.discovery = static    ==========>> 改为静态发现配合下面的命令可以自动发现集群节点
		cluster.static.seeds = node1@192.168.0.210,node2@192.168.0.211,node3@192.168.0.212
		node.name = node1@192.168.0.210 ============>> 节点名称和ip     
		node.dist_listen_min = 6369		
		node.dist_listen_max = 7369

3、 启动emqx

		启动emqx命令为
		./bin/emqx start
		停止emqx命令为:
		./bin/emqx stop

4、Dashboard

服务器ip+18083 查看emq的状态等信息(3个节点集群实现完成)

在这里插入图片描述

5、haproxy安装

进入解压后的haproxy-1.8.10里执行:
		make TARGET=linux2628 ARCH=x86_64 PREFIX=/home/soft/haproxy
		make install PREFIX=/home/soft/haproxy
安装完成后,进入haproxy文件下的sbin里面新建haproxy.cfg文件,并添加配置	
global
	    log 127.0.0.1 local0
	    log 127.0.0.1 local1 notice
	    daemon
	    nbproc 2
	    maxconn 51200
	    pidfile /home/soft/haproxy/sbin/haproxy.pid

	defaults
	    log global
	    mode http
	    option httplog
	    option dontlognull
	    retries 3
	    option abortonclose
	    timeout connect 5000ms
	    timeout client 30000ms
	    timeout server 60000ms
	    balance roundrobin
	
	listen stats
	    bind *:9080				##管理页面端口
	    mode http
	    option httplog
	    maxconn 10
	    stats refresh 30s
	    stats uri /stats
	    stats realm Haproxy Manager
	    stats hide-version
	    stats admin if TRUE
	
	listen mqtt
	    bind *:1890				##mqtt集群入口,也就是其他地方连接emq的端口号
	    mode tcp
	    maxconn 50000
	    option clitcpka 
	    timeout client 3h
	    timeout server 3h
	    option tcplog
	    balance leastconn
	    server node1 192.168.0.210:1883 check inter 10000 fall 2 rise 5 weight 1      ## node1 node2 node3 为emq集群的节点名称
	    server node2 192.168.0.211:1883 check inter 10000 fall 2 rise 5 weight 1
	    server node3 192.168.0.212:1883 check inter 10000 fall 2 rise 5 weight 1
haproxy启动命令:
	./haproxy -f haproxy.cfg

在这里插入图片描述

6、用MQTT.fx测试

在这里插入图片描述
在这里插入图片描述

消息推送成功,订阅也可实现,可以尝试关掉某台然后进行详细测试

版权声明:本文为zsf_join原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。