部署 Apache RocketMQ 集群主要包括以下几个步骤:
1. 准备多个节点
确保你有多个节点可用,并且这些节点都能够相互通信。
2. 下载 RocketMQ
从 Apache RocketMQ 的官方网站下载最新版本的 RocketMQ:
wget https://mirror.bit.edu.cn/apache/rocketmq/4.9.1/rocketmq-all-4.9.1-bin-release.tar.gz
3. 解压 RocketMQ
解压下载的 RocketMQ 压缩包:
tar -xzf rocketmq-all-4.9.1-bin-release.tar.gz
cd rocketmq-all-4.9.1-bin-release
4. 配置 RocketMQ
在每个节点上编辑 RocketMQ 的配置文件,主要是 conf/broker.conf 和 conf/namesrv.conf。确保以下配置项正确设置:
broker.conf
# broker的名称
brokerName=broker-a
# broker 的 id,每个节点必须唯一
brokerId=0
# namesrv 的地址
namesrvAddr=namesrv1:9876;namesrv2:9876
namesrv.conf
# namesrv 的名称
brokerName=broker-a
# namesrv 的地址
listenPort=9876
确保在每个节点上的配置文件中,brokerId 是唯一的。
5. 启动 RocketMQ 服务
在每个节点上启动 RocketMQ 服务,分别启动 Namesrv 和 Broker。首先启动 Namesrv,然后再启动 Broker。
# 启动 Namesrv
nohup sh bin/mqnamesrv &
# 启动 Broker
nohup sh bin/mqbroker -n namesrv1:9876;namesrv2:9876 &
6. 验证 RocketMQ 集群
在任意一个节点上执行以下命令来验证 RocketMQ 集群是否正常运行:
sh bin/mqadmin clusterList -n namesrv1:9876;namesrv2:9876
7. 配置 RocketMQ 集群的高可用性
可以使用 RocketMQ 提供的自动选举机制来保证集群的高可用性。详细信息请参考 RocketMQ 的官方文档。
以上是在 CentOS 上部署 Apache RocketMQ 集群的基本步骤。在生产环境中,你可能还需要进行更多的配置和优化,例如配置负载均衡、监控和警报等。