1.1首先根据项目要求分配好的服务器IP如下(服务器为Ubuntu操作系统): 172.16.201.84 172.16.201.87 172.16.201.89 每台服务器都需要下载rabbitmq的server包 执行命令如下: apt-get install rabbitmq-server 创建用户: rabbitmqctl add_user openstack rabbitmq(账号:openstack;密码:rabbitmq) 给用户读写权限: rabbitmqctl set_permissions openstack “." ".” “.*” 启动服务: rabbitmq-plugins enable rabbitmq_management 给用户admin权限: sudo rabbitmqctl set_user_tags openstack administrator 开启节点 sudo service rabbitmq-server start
到此本机rabbitmq以配置完成!!!
配置集群方法如下: 每台服务器都需要先修改/etc/hosts配置文件
上图中,第一个红框内的shell-mq1为本机IP地址(87配置为shell-mq2,89配置为shell-mq3)
下面的红框内是每台服务器IP对应的主机名(3台服务器配置一样就可以)
由于rabbitmq是根据.erlang来编写,所以如果本机没有erlang的话,需要再安装一下 Rabbitmq集群配置是根据.erlang.cookie来进行集群配置的,所以要保证三台服务器的.erlang.cookie要保持一致,.erlang.cookie存放的路径有两个,一个是/root/.erlang.cookie 另一个路径是:/var/lib/rabbitmq/.erlang.cookie,启动服务的时候会提示使用哪个.erlang.cookie的,如果不清楚使用哪个路径下的.erlang.cookie,把这三台服务器的两个路径下的.erlang.cookie,都弄成一样的就可以了 首先把三台服务器的rabbitmq服务开启 我这三台服务使用的是这个路径下的/var/lib/rabbitmq/.erlang.cookie 然后cat一下84服务器的.erlang.cookie 所以要保证3台服务器下的/var/lib/rabbitmq/.erlang.cookie要保持一致
登录87和89服务器,执行如下命令(保持一致): echo TBSQVLUTIJOFROHXPUDQ > /var/lib/rabbitmq/.erlang.cookie 然后87和89服务器执行如下命令(添加集群): sudo rabbitmqctl stop_app rabbitmqctl join_cluster rabbit@shell-mq1 查看集群状态: sudo rabbitmqctl cluster_status 有问题可以参考文档: https://blog.csdn.net/zyz511919766/article/details/41896747
1.2Centos系统搭建rabbitmq以及集群搭建 登录服务器,需要安装依赖,命令如下: yum install gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel wxGTK-gl wxGTK-devel wxBase fop wget http://erlang.org/download/otp_src_19.1.tar.gz tar -xvzf otp_src_19.1.tar.gz cd otp_src_19.1/ ./configure --prefix=/opt/erlang make && make install 如上命令是安装erlang(ubuntu服务器自带erlang) 安装成功后执行erl命令看能否进入 下载mq:地址:http://www.rabbitmq.com/releases/rabbitmq-server/ 下载完成后上传到服务器路径:/usr/local/ 这里用的是3.6.5版本 解压包: xz -d rabbitmq-server-generic-unix-3.6.5.tar.xz tar -xvf rabbitmq-server-3.6.5.tar mv rabbitmq-server-3.6.5 rabbitmq 配置环境变量: vi /etc/profile #set rabbitmq environment export PATH=$PATH:/usr/local/rabbitmq/sbin 保存退出 刷新profile source /etc/profile
执行命令: cd /usr/local/rabbitmq/sbin/ ./rabbitmq-server -detached(启动服务) ./rabbitmqctl status(查看集群状态) ./rabbitmqctl stop(关闭服务) ./rabbitmq-plugins enable rabbitmq_management
Centos添加集群 添加集群: 每台服务器都需要在/etc/hosts文件下,把需要添加集群的主机名以及IP地址写上 查看集群:rabbitmqctl cluster_status 三台服务器都需要开启服务, 第二台以及第三台服务器执行命令:rabbitmqctl stop_app 第二台以及第三台服务器执行命令:rabbitmqctl join_cluster rabbit@host-192-168-111-104(host-192-168-111-104是第一台服务器主机名) 添加完毕
启服务就可以了 查看下集群rabbitmqctl cluster_status 配置成功!!