在Debian系统上搭建RabbitMQ集群需要以下步骤:
RabbitMQ需要Erlang环境作为依赖,因此首先需要安装Erlang。
sudo apt update
sudo apt install erlang-nox
为了获取最新版本的RabbitMQ,需要添加RabbitMQ官方APT仓库。
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
echo "deb https://dl.bintray.com/rabbitmq/debian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
sudo apt update
使用APT包管理器安装RabbitMQ服务器。
sudo apt install rabbitmq-server
安装完成后,启动并设置RabbitMQ服务开机自启动。
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
RabbitMQ节点之间通过Erlang Cookie进行身份验证,确保所有节点的Cookie一致。
# 在任意节点上找到Erlang Cookie文件
cat /var/lib/rabbitmq/.erlang.cookie
# 将Cookie文件复制到其他节点
scp /var/lib/rabbitmq/.erlang.cookie user@node2:/var/lib/rabbitmq/
scp /var/lib/rabbitmq/.erlang.cookie user@node3:/var/lib/rabbitmq/
在任意节点上执行以下命令,将其他节点加入到集群中。
# 停止应用
sudo rabbitmqctl stop_app
# 重置节点(首次加入集群时执行)
sudo rabbitmqctl reset
# 加入集群
sudo rabbitmqctl join_cluster rabbit@node1
# 启动应用
sudo rabbitmqctl start_app
在任意节点上查看集群状态,确认所有节点已成功加入集群。
sudo rabbitmqctl cluster_status
启用Web管理插件,方便通过浏览器管理RabbitMQ。
sudo rabbitmq-plugins enable rabbitmq_management
通过浏览器访问RabbitMQ管理界面,使用集群中任意节点的IP地址和默认用户名(guest/guest)登录。
http://<your_server_ip>:15672
以上步骤涵盖了在Debian系统上搭建RabbitMQ集群的主要流程。请注意,为了确保集群的高可用性,建议配置镜像队列和监控工具,如Prometheus和Grafana。