#rabbit2$ rabbitmqctl stop_app
#rabbit2$ rabbitmqctl change_cluster_node_type disc #or
#rabbit2$ rabbitmqctl change_cluster_node_type ram #rabbit2$ rabbitmqctl start_app
#===================================================
##到此,rabbit3加入集群成功
echo \echo \
echo \read
##查看Rabbit_Cluster集群的状态 rabbitmqctl cluster_status
#=============================== #If you need from the cluster #rabbitmqctl stop_app #rabbitmqctl reset #rabbitmqctl start_app
#===============================
echo \read exit
3.4 添加Rabbit_Cluster管理用户
执行完以上的步骤集群中各个节点基本配置完毕了,现在要做的是添加用户和设置权限,请在主节点(rabbit2)上执行: 添加用户,设置密码。在这里需要提醒一下,新版本(3.3.0)的RabbitMQ为了安全性考虑仅允许localhost使用
guest账户,所以最好根据应用需要建立自己的账户。因为要使用web页面管理,所以我建立了两个账户['web_admin','mgmt_admin']: ? 账号1:web_admin 密码:admin ? 账号2:mgmt_admin 密码:admin1
/usr/sbin/rabbitmqctl add_user web_admin admin
/usr/sbin/rabbitmqctl add_user mgmt_admin admin1
3.5 设置用户tags
a) 前一步创建的两个用户tag分别设为
['monitoring','administrator'],设置完之后可以使用rabbitmqctl list_users查看 /usr/sbin/rabbitmqctl set_user_tags web_admin monitoring /usr/sbin/rabbitmqctl set_user_tags mgmt_admin administrator
3.6 设置用户权限
下面命令的意义是对mgmt_admin用户赋予所有虚拟主机vhost(/),配置、写、读的权限(.*,正则表达式)
/usr/sbin/rabbitmqctl set_permissions -p / mgmt_admin \\
注:web_admin没有配置,默认是只读权限。
4. 设置高可用策略
为了使用HAProxy做负载均衡,必须将整个RabbitMQ集群的状态设置为镜像模式,具体方式是通过以下命令,注意策略的设置也是在3.x版本中添加的功能,2.x版本是没有的。
4.1 方法一(命令):
/usr/sbin/rabbitmqctl set_policy ha-all \mode\
注:这里是设置消息均在所有节点进行同步,也即,Rabbit_Cluster任一节点出问题均不影响访问。
4.2 方法二(web页面):
http://192.168.100.192:15672
用管理员权限(账号:mgmt_admin 密码:admin1)
举例,再添加一个my_ha策略
a) 点击admin菜单-->右侧的Policies选项-->左侧最下下边的Add / update a policy b) 按照图中的内容根据自己的需求填写
c) 点击Add policy添加策略
此时你就会来你的两台rabbitmq服务器的网页管理端amind菜单下看见刚才创建的队列了.
d) 下面我们来添加一个queues队列来看看效果,这里只是测试结果,其它的先不填写
注意红框中的 x-ha-policy = all 这个,网上说没有这个不会进行复制,但是我测试的时候好像可以复制的,至少queues队列是可以的,先添上吧.
在这里边添加的时候你是可以指定Node选项也就是把这个queues放在哪个node节点上,不过做镜像的时候就没有必要了,呵呵
至此,RabbitMQ的安装配置部分结束,可以访问
http://192.168.100.192:15672 (191和193也可访问)用户名web_admin,密码admin。看看一些基本信息
5. 安装配置 Haproxy+Keeplived 5.1 Rabbit2主机
vim 03_rabbit2_ha+keep.sh #!/bin/bash ##安装配置Haproxy
apt-get -y install haproxy ##配置Haproxy
cat <
defaults
log mode
global http
log 127.0.0.1 log 127.0.0.1
local0
local1 notice
chroot /var/lib/haproxy user haproxy group haproxy daemon
maxconn 4096
option httplog option dontlognull