centos6.9 rabbitmq 3.6.8升级3.8.2

2020-03-27 10:25:42 浏览数 (1)

一、概述

由于之前搭建的版本过低,有很多漏洞需要修复。因此需要升级到最新版本3.8.2

上一篇链接:

https://www.cnblogs.com/xiao987334176/p/12303664.html

二、正式升级

环境说明

操作系统

ip

主机名

配置

centos 6.9

192.168.31.7

mq_01

1核2g

centos 6.9

192.168.31.216

mq_02

1核2g

centos 6.9

192.168.31.214

mq_03

1核2g

备份数据

登录到mq后台,点击Export definitions,导出数据。数据文件为json

下载更新文件

mq_01执行

代码语言:javascript复制
mkdir -p /data/software/rabbitmq_update
cd  /data/software/rabbitmq_update
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.2/rabbitmq-server-3.8.2-1.el6.noarch.rpm

复制文件到另外2台服务器

mq_01执行

代码语言:javascript复制
scp -P 22 -r rabbitmq_update 192.168.31.216:/data/software/
scp -P 22 -r rabbitmq_update 192.168.31.214:/data/software/

关闭并卸载mq

3台服务器都执行一下

代码语言:javascript复制
/etc/init.d/rabbitmq-server stop
yum remove -y rabbitmq-server erlang*
rm -rf /var/lib/rabbitmq/*
rm -rf /data/rabbitmq/mnesia/*
rm -rf /usr/lib64/erlang
rm -rf /var/lib/rabbitmq

安装更新源

3台服务器都执行一下

代码语言:javascript复制
yum install -y wget
cd /data/software/rabbitmq_update
rpm -ivh erlang-solutions-1.0-1.noarch.rpm

将erlang的yum源并将yum源改为国内清华的yum源

代码语言:javascript复制
vim /etc/yum.repos.d/erlang_solutions.repo

内容如下:

代码语言:javascript复制
[erlang-solutions]
name=Centos $releasever - $basearch - Erlang Solutions
#baseurl=http://packages.erlang-solutions.com/rpm/centos/$releasever/$basearch
baseurl=https://mirrors4.tuna.tsinghua.edu.cn/erlang-solutions/centos/6/
gpgcheck=1
#gpgkey=http://packages.erlang-solutions.com/debian/erlang_solutions.asc
gpgkey=http://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=1

安装erlang

3台服务器都执行一下

代码语言:javascript复制
yum -y install erlang
yum clean all

安装rabbitmq

3台服务器都执行一下

代码语言:javascript复制
rpm -ivh rabbitmq-server-3.8.2-1.el6.noarch.rpm
cd /etc/rabbitmq/
mv rabbitmq.conf rabbitmq.config
/etc/init.d/rabbitmq-server start

拷贝cookie

其它2台主机拷贝第一台的cookie

登录mq_02,mq_03执行

代码语言:javascript复制
scp -P 27 192.168.10.184:/var/lib/rabbitmq/.erlang.cookie  /var/lib/rabbitmq/
chown -R rabbitmq.rabbitmq /var/lib/rabbitmq/.erlang.cookie
chmod 600 /var/lib/rabbitmq/.erlang.cookie

安装插件

3台都安装一下

代码语言:javascript复制
rabbitmq-plugins enable rabbitmq_management

创建用户及授权

3台都执行一下

代码语言:javascript复制
rabbitmqctl add_user admin 'admin123'
rabbitmqctl set_permissions -p / admin . . .
rabbitmqctl set_user_tags admin administrator

加入mq集群

其他2台节点,加入到第一台 登录mq_02,mq_03节点,先关闭,加入,最后启动

代码语言:javascript复制
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbit@mq_01
rabbitmqctl start_app

查看集群状态

登录任意节点查看

代码语言:javascript复制
rabbitmqctl cluster_status

导入数据

访问mq后台,如果左上角出现rabbitmq ReferenceError: disable_stats is not defined 等待几分钟,刷新一下即可

登录之后,点击 Import definitions 选择json文件,点击Upload broker definitions,开始导入。

最后由开发人员,测试一下生产和消费是否正常。

本文参考链接:

https://www.cnblogs.com/wangkaiok/p/11942855.html

https://blog.csdn.net/bushcat2015/article/details/88627969

https://www.jianshu.com/p/83acc90c2792

0 人点赞