暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Centos6.4安装Rabbitmq集群

尚浩宇 2021-10-28
354

1、erlang

先执行如下命令安装依赖


    yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel
    yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget



    然后去http://www.erlang.org/downloads下载源码包到服务器上


      tar -zxvf otp_src_20.2.tar.gz -C usr/local/

      解压后执行

        ./otp_build autoconf
        ./configure
        make && make install


        全部执行完成后输入erl命令验证安装

        注意:每台机器都要执行如上步骤

        2、安装rabbitmq

        首先确认主机是否设置hostname,不能是localhost,否则无法建立集群

        到https://github.com/rabbitmq/rabbitmq-server/releases下载rabbitmq包

        解压文件

          tar xvf rabbitmq-server-generic-unix-3.7.4.tar 
          mv rabbitmq_server-3.7.4/ rabbitmq


          然后修改环境变量,增加


            export PATH=$PATH:/opt/rabbitmq/sbin

            更新环境变量


              source  etc/profile

              启动rabbitmq


                rabbitmq-server -detached

                增加用户使后台能够访问


                  mkdir etc/rabbitmq
                  rabbitmq-plugins enable rabbitmq_management
                  rabbitmqctl add_user root root
                  rabbitmqctl set_permissions -p root "." "." ".*"
                  rabbitmqctl set_user_tags root administrator



                  注意:每台机器都要执行如上步骤

                  3、集群配置

                  停止其中1台机器


                    rabbitmqctl stop

                    复制存货的那一台机器运行rabbit用户的根目录下的.erlang.cookie文件,如/root/.erlang.cookie,把这个文件复制替换到停止的那台机器对应用户的同名文件,同时赋权


                      chmod 400 .erlang.cookie

                      启动停止的节点,查看日志,观察cookie是否生效


                        rabbitmq-server -detached

                        查看节点状态,此时应该只有1台


                          rabbitmqctl cluster_status

                          然后在刚刚停止的节点上执行

                            rabbitmqctl stop_app
                            rabbitmqctl join_cluster rabbit@dev01
                            rabbitmqctl start_app


                            此时再查看集群状态应该是

                              [root@dev02 ~]# rabbitmqctl cluster_status
                              Cluster status of node rabbit@dev02 ...
                              [{nodes,[{disc,[rabbit@dev01,rabbit@dev02]}]},
                              {running_nodes,[rabbit@dev01,rabbit@dev02]},
                              {cluster_name,<<"rabbit@dev01">>},
                              {partitions,[]},
                              {alarms,[{rabbit@dev01,[]},{rabbit@dev02,[]}]}]


                              在管理系统上应该也是如下图

                              有兴趣的大佬大神可以关注下小弟的微信公共号,一起学习交流,扫描以下二维码关注即可。


                              文章转载自尚浩宇,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                              评论