debian

RabbitMQ在Debian上的部署流程

小樊
45
2025-10-02 14:00:22
栏目: 智能运维

一、前置准备

二、安装Erlang(RabbitMQ依赖环境) RabbitMQ基于Erlang语言开发,需先安装兼容的Erlang环境。

三、安装RabbitMQ Server

四、基础配置(单节点)

  1. 启用Web管理插件(推荐):
    sudo rabbitmq-plugins enable rabbitmq_management
    插件启用后需重启服务生效:sudo systemctl restart rabbitmq-server
  2. 访问管理界面
    默认通过http://<服务器IP>:15672访问,初始用户为guest/guest(仅限本地登录)。
  3. 创建管理员用户(替换adminyour_password为实际值):
    sudo rabbitmqctl add_user admin your_password
    sudo rabbitmqctl set_user_tags admin administrator  # 设置为管理员角色
    sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"  # 授权所有权限
    
  4. 创建虚拟主机(可选,用于隔离环境):
    sudo rabbitmqctl add_vhost my_vhost  # 创建虚拟主机my_vhost
    sudo rabbitmqctl set_permissions -p my_vhost admin ".*" ".*" ".*"  # 授权用户admin访问
    ```。
    
    
    

五、安全加固(生产环境必做)

六、集群部署(可选,高可用) 若需搭建集群(以2节点为例),需完成以下步骤:

  1. 确保所有节点Erlang Cookie一致
    • 在主节点(如node1)查看Cookie:cat /var/lib/rabbitmq/.erlang.cookie
    • 复制到其他节点(如node2):sudo scp /var/lib/rabbitmq/.erlang.cookie user@node2:/var/lib/rabbitmq/
    • 设置Cookie权限:sudo chmod 400 /var/lib/rabbitmq/.erlang.cookie(所有节点均需执行)
  2. 启动集群
    • node1上启动服务:sudo systemctl start rabbitmq-server
    • node2上停止应用、重置并加入集群:
      sudo rabbitmqctl stop_app
      sudo rabbitmqctl reset
      sudo rabbitmqctl join_cluster rabbit@node1  # node1为主节点
      sudo rabbitmqctl start_app
      
  3. 验证集群状态
    在任意节点执行:sudo rabbitmqctl cluster_status(显示所有节点已加入集群)。

七、验证功能

0
看了该问题的人还看了