debian

RabbitMQ集群如何在Debian搭建

小樊
40
2025-05-02 15:39:22
栏目: 智能运维

在Debian上搭建RabbitMQ集群涉及多个步骤,包括安装Erlang、添加RabbitMQ仓库、安装RabbitMQ、配置集群等。以下是详细的步骤:

安装Erlang

首先,确保系统中已安装Erlang,因为RabbitMQ是使用Erlang语言编写的,它的运行需要依赖Erlang环境。

sudo apt-get update
sudo apt-get install -y erlang-nox

添加RabbitMQ官方仓库

添加RabbitMQ官方仓库的密钥,然后更新系统源并安装RabbitMQ。

curl -sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor
sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg /dev/null

echo "deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] http://ppa.launchpad.net/rabbitmq/rabbitmq-erlang/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
echo "deb [signed-by=/usr/share/keyrings/com.rabbitmq.team.gpg] http://ppa.launchpad.net/rabbitmq/rabbitmq-server/ubuntu focal main" | sudo tee -a /etc/apt/sources.list.d/rabbitmq.list

sudo apt-get update
sudo apt-get install -y rabbitmq-server

启动和配置RabbitMQ

启动RabbitMQ服务并查看其状态。

sudo systemctl start rabbitmq-server
sudo systemctl status rabbitmq-server

如果服务正常启动,你应该能够看到类似 Active: active (running) 的状态信息。

启用RabbitMQ管理插件(可选,但推荐)。

sudo rabbitmq-plugins enable rabbitmq_management
sudo systemctl restart rabbitmq-server

访问管理界面,默认情况下,管理界面可以通过 http://服务器IP地址:15672 访问,使用默认的用户名和密码登录,用户名是 guest,密码也是 guest

搭建RabbitMQ集群

  1. 停止所有RabbitMQ服务

    在每台节点上执行以下命令:

    sudo service rabbitmq-server stop
    
  2. 移除RabbitMQ配置记录与存储文件

    位于 /var/lib/rabbitmq/mnesia/var/lib/rabbitmq/nodes/var/lib/rabbitmq/nodes.log 等。

    sudo rm -rf /var/lib/rabbitmq/mnesia/*
    sudo rm -rf /var/lib/rabbitmq/nodes/*
    sudo rm -rf /var/lib/rabbitmq/nodes.log
    
  3. 按顺序启动所有机器

    在每台节点上执行以下命令:

    sudo service rabbitmq-server start
    
  4. 建立集群

    在任意一台节点上执行以下命令(假设该节点为主节点):

    sudo rabbitmqctl stop_app
    sudo rabbitmqctl reset
    sudo rabbitmqctl join_cluster rabbit@master
    sudo rabbitmqctl start_app
    

    其中 master 是主节点的名称,其他节点使用相同的命令加入集群。

  5. 检查集群状态

    在任意一台节点上执行以下命令:

    sudo rabbitmqctl cluster_status
    

    输出包含集群中的节点与运行中的节点,兼以主机名标志。

安全配置

为了提高安全性,可以添加用户并限制其权限,同时启用管理插件。

sudo rabbitmqctl add_user admin administrators
sudo rabbitmqctl set_user_tags admin administrators
sudo rabbitmqctl set_permissions -p / admins
sudo rabbitmq-plugins enable rabbitmq_management

配置防火墙

确保只开放必要的端口,例如RabbitMQ的默认端口5672和管理插件的15672端口。

sudo ufw allow 5672/tcp
sudo ufw allow 15672/tcp
sudo ufw reload

以上步骤应该可以帮助你在Debian系统上成功搭建RabbitMQ集群。

0
看了该问题的人还看了