有一些是从网上参考的,根据自己的业务需求补全他们,感谢前辈们。
目标:以集群方式延迟推送任务,并达到高可用和负载均衡。
集群配置方案:
- 高可用集群搭建方案
- 节点A: 与节点B、节点C 进行消息同步, 所以节点A 节点B 节点C 都可用作消费者访问节点,注意A点不参与生产,它只是作为消费者,起到分摊压力的作用。
- 节点B: 作为 master 主节点, 作为生产者访问节点和消费者访问节点
- 节点C: 作为 slave 从节点, 作为 生产者访问节点和消费者访问节点, 当 master 节点挂掉后, slave 自动转换为 master 节点.
- 高可用集群搭建步骤
- 这里使用三台服务器进行搭建,节点B 和节点C使用 Master/Slave这种方式实现高可用,KahaDb进行持久化数据。那两台服务器就需要共享文件系统支持,这里我使用了NFS。
假设:
节点A: 192.168.1.1
节点B: 192.168.2.2
节点C: 192.168.3.3
##在B节点:192.168.2.2##
1.共享文件夹(按喜好建),用于节点B 节点C 共享。
mkdir mq/data
2.安装NFS
yum install nfs-utils
3.设置开机自启动
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server
sudo systemctl enable nfs-lock
sudo systemctl enable nfs-idmap
4.开启nfs相关服务
sudo systemctl start rpcbind
sudo systemctl start nfs-server
sudo systemctl start nfs-lock
sudo systemctl start nfs-idmap
5.固定端口号(在每次启动的时候nfs的rpc端口号可能变,可以用这个命令查看rpcinfo -plocalhost)
vim /etc/sysconfig/nfs
##添加
RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004
##重启
service nfs restart
6.对应上面的端口开启防火墙
7.声明开放目录&&授权ip
echo "/home/xxx/mq/data 192.168.3.3(rw,sync,no_root_squash)" >> /etc/exports
##/home/xxx/mq/data 本服务器需要共享的文件夹
##192.168.