【消息中间件运维 -- RabbitMQ】虚拟机中CentOS安装RabbitMQ与单机多实例集群搭建
发布日期:2021-05-07 20:53:52 浏览次数:24 分类:精选文章

本文共 2573 字,大约阅读时间需要 8 分钟。

【消息中间件运维 – RabbitMQ】CentOS环境下RabbitMQ单机与多实例集群安装指南

【1】安装Erlang环境

在CentOS系统上安装Erlang环境之前,需要先安装必要的开发工具和依赖项。以下是具体操作步骤:

  • 安装必要的软件包:
  • yum -y install make gcc gcc-c++ kernel-devel m4 openssl-devel
    yum -y install ncurses ncurses-devel
    1. 创建Erlang编译目录并下载源码:
    2. mkdir -p /usr/local/erlang
      wget http://erlang.org/download/otp_src_18.2.1.tar.gz
      tar xvfz otp_src_18.2.1.tar.gz
      cd otp_src_18.2.1
      ./configure --prefix=/usr/local/erlang
      make install
      1. 配置Erlang环境:
      2. vim /etc/profile

        在配置文件末尾添加以下内容:

        export ERLANG_HOME=/usr/local/erlang
        export PATH=$PATH:$ERLANG_HOME/bin
        source /etc/profile

        【2】单机安装与配置RabbitMQ

        RabbitMQ的安装步骤如下:

      3. 下载RabbitMQ服务器源码包:
      4. wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz
        1. 安装xz解压工具:
        2. yum install xz
          1. 解压并安装RabbitMQ:
          2. xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
            tar -xvf rabbitmq-server-generic-unix-3.6.9.tar
            cp -r rabbitmq_server-3.6.9 /usr/local/rabbitmq
            1. 创建软链接并配置系统环境:
            2. cd /usr/local/bin
              ln -s /usr/local/rabbitmq/sbin/rabbitmqctl rabbitmqctl
              1. 配置PATH环境变量:
              2. echo "/usr/local/rabbitmq/sbin" >> /etc/profile
                source /etc/profile
                1. 启用RabbitMQ管理插件并运行:
                2. rabbitmq-plugins enable rabbitmq_management
                  rabbitmq-server -detached
                  1. 添加用户及权限:
                  2. rabbitmqctl add_user admin admin
                    rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
                    rabbitmqctl set_user_tags admin administrator

                    【3】单机多实例集群搭建

                    在搭建集群之前,请确保:

                  3. 删除Mnesia存储目录中的所有文件:
                  4. rm -rf /var/lib/rabbitmq/mnesia/*
                    1. 启动并配置三个RabbitMQ实例:
                    2. RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit rabbitmq-server -detached
                      RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached
                      RABBITMQ_NODE_PORT=5674 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15674}]" RABBITMQ_NODENAME=rabbit3 rabbitmq-server -detached
                      1. 将rabbit2和rabbit3加入集群:
                      2. rabbitmqctl -n rabbit2 stop_app
                        rabbitmqctl -n rabbit2 reset
                        rabbitmqctl -n rabbit2 join_cluster rabbit@`hostname -s`
                        rabbitmqctl -n rabbit2 start_app
                        rabbitmqctl -n rabbit3 stop_app
                        rabbitmqctl -n rabbit3 reset
                        rabbitmqctl -n rabbit3 join_cluster rabbit@`hostname -s`
                        rabbitmqctl -n rabbit3 start_app

                        【4】常见问题及解决方法

                        【问题1】宿主机无法访问虚拟机中RabbitMQ服务:

                      3. 在VMware虚拟机中:
                      4. vim /etc/vmware/esx.conf

                        在# SSH部分添加以下配置:

                        listen 0.0.0.0 22
                        1. 重启VMware服务:
                        2. systemctl restart vmware-nat
                          systemctl restart vmware-dhcpd

                          【问题2】ERROR: node with name “rabbit” already running on “localhost”:

                        3. 关闭相关进程:
                        4. ps aux | grep epmd
                          ps aux | grep erl
                          1. 停止和删除相关进程:
                          2. kill -9 
                            <进程id>

                            【5】本文基于实际操作总结,未涉及具体生产环境配置,建议根据实际情况调整参数。如有疑问,请参考RabbitMQ官方文档或相关技术博客。

    上一篇:【数据库运维】Linux下安装配置ODBC
    下一篇:【缓存技术运维--Redis】CentOS下Redis集群环境搭建

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2025年04月02日 05时11分38秒