码迷,mamicode.com
首页 > 其他好文 > 详细

CentOS7环境rabbitmq集群管理

时间:2017-11-07 12:21:49      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:star   rpm安装   完成后   cookie   systemctl   init   user   cache   参考   

CentOS7系统内核版本:3.10.0-514.26.2.el7.x86_64

一、对应主机host地址(三台主机host文件要保持一致)

10.100.2.10 v01-app-rabbitmq01
10.100.2.11 v01-app-rabbitmq02
10.100.2.12 v01-app-rabbitmq03

二、3台主机都安装相同的软件:

1.erlang安装:  

下载地址:
http://www.rabbitmq.com/releases/erlang/

[root@v01-app-rabbitmq01 opt]# wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el6.x86_64.rpm
[root@v01-app-rabbitmq01 opt]# rpm -ivh erlang-19.0.4-1.el6.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
   1:erlang-19.0.4-1.el6              ################################# [100%]
[root@v01-app-rabbitmq01 opt]# 

2.rabbitMQ安装:

下载地址:https://dl.bintray.com/rabbitmq/rabbitmq-server-rpm/

[root@v01-app-rabbitmq01 opt]# wget https://dl.bintray.com/rabbitmq/rabbitmq-server-rpm/rabbitmq-server-3.6.12-1.el6.noarch.rpm
[root@v01-app-rabbitmq01 opt]# rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
[root@v01-app-rabbitmq01 opt]# rpm -ivh rabbitmq-server-3.6.12-1.el6.noarch.rpm
错误:依赖检测失败:
        socat 被 rabbitmq-server-3.6.12-1.el6.noarch 需要
解决报错:

[root@v01-app-rabbitmq01 opt]# wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo
[root@v01-app-rabbitmq01 opt]# yum makecache -y
[root@v01-app-rabbitmq01 opt]# yum install socat -y
[root@v01-app-rabbitmq01 opt]# rpm -ivh rabbitmq-server-3.6.12-1.el6.noarch.rpm
准备中...                          ################################# [100%]
正在升级/安装...
   1:rabbitmq-server-3.6.12-1.el6     ################################# [100%]

3.安装管理插件:

web管理插件
rabbitmq-plugins enable rabbitmq_management 

日志跟踪插件
rabbitmq-plugins enable rabbitmq_tracing

安装rabbitmq_delayed_message_exchange(延时队列)

默认插件目录:
cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.12/plugins
wget https://dl.bintray.com/rabbitmq/community-plugins/rabbitmq_delayed_message_exchange-0.0.1.ez

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

4.启动服务和查看状态:  

service rabbitmq-server start
service rabbitmq-server status

#CentOS7推荐使用如下方法:
systemctl start rabbitmq-server.service
systemctl status rabbitmq-server.service

至此3台上面的rabbitmq都已安装完成,并且启动正常,现在开始配置集群服务。

三、普通集群配置

1.说明:

Rabbitmq的集群是依附于erlang的集群来工作的,所以必须先构建起erlang的集群镜像。Erlang的集群中各节点是经由过程一个magic cookie来实现的,这个cookie存放在 $home/.erlang.cookie 中,我的是用rpm安装的,所以.erlang.cookie就放在/var/lib/rabbitmq中

2.复制cookie内容
erlang.cookie是erlang实现分布式的必要文件,erlang分布式的每个节点上要保持相同的.erlang.cookie文件,同时保证文件的权限是400,不然节点之间就无法通信。

打开文件然后需要先把其中的一台服务器的.erlang.cookie中的内容复制到别的机器上,最好是复制内容,因为文件权限不对的话会出现问题,在最后退出保存的时候使用wq!用!来进行强制保存即可.

也可是直接使用scp传过去,记得文件权限和用户属主属组如scp .erlang.cookie root@10.100.2.12:/tmp

3.erlang.cookie复制完成后,逐个重启节点服务:

systemctl restart rabbitmq-server.service
systemctl status rabbitmq-server.service

4.添加到集群:

将rabbit@v01-app-rabbitmq01作为集群主节点,在节点rabbitmq02和节点rabbitmq03上面分别执行如下命令,以加入集群中.

rabbitmqctl stop_app 
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@v01-app-rabbitmq01
rabbitmqctl start_app

5.3台都查看集群状态

rabbitmqctl cluster_status

6.账号管理

添加账号:
rabbitmqctl add_user admin admin
添加 权限tag
rabbitmqctl set_user_tags admin administrator

删除用户(删除guest用户)
[root@v01-app-rabbitmq01 rabbitmq]# rabbitmqctl delete_user guest
Deleting user "guest"

修改用户的密码
rabbitmqctl  change_password  Username  Newpassword

[root@v01-app-rabbitmq01 ~]# rabbitmqctl  change_password  admin 0GM1aol4z8GeSZY99
Changing password for user "admin"

查看当前用户列表
rabbitmqctl  list_users
Listing users
admin   [administrator]

7.访问WEB地址:10.100.2.10:15672

至此rabbitmq普通集群模式创建完成.

从集群中移除节点:

[root@v01-app-rabbitmq02 rabbitmq]# rabbitmqctl stop_app
Stopping rabbit application on node ‘rabbit@v01-app-rabbitmq02‘
[root@v01-app-rabbitmq02 rabbitmq]# rabbitmqctl reset
Resetting node ‘rabbit@v01-app-rabbitmq02‘
[root@v01-app-rabbitmq02 rabbitmq]#  rabbitmqctl start_app
Starting node ‘rabbit@v01-app-rabbitmq02‘

日志文件:

/var/log/rabbitmq/rabbit@v01-app-rabbitmq01.log
/var/log/rabbitmq/rabbit@v01-app-rabbitmq01-sasl.log

  

  

 

 

 

参考文档:
rabbitmq——用户管理
http://www.cnblogs.com/AloneSword/p/4200051.html
http://blog.csdn.net/njys1/article/details/53001728

集群高可用配置:
http://88250.b3log.org/rabbitmq-clustering-ha
http://www.cnblogs.com/flat_peach/archive/2013/04/07/3004008.html
http://www.cnblogs.com/wangiqngpei557/p/6158094.html

在WEB端创建镜像队列:
https://jingyan.baidu.com/article/e73e26c0c3841b24adb6a7b9.html

CentOS7环境rabbitmq集群管理

标签:star   rpm安装   完成后   cookie   systemctl   init   user   cache   参考   

原文地址:http://www.cnblogs.com/saneri/p/7798251.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!