Linux运维--12.手动部署Rabbit集群

时间:2023-03-09 23:46:17
Linux运维--12.手动部署Rabbit集群

1.安装rabbit组件

10.100.2.51 controller1
10.100.2.52 controller2
10.100.2.53 controller3
#每个节点
yum install erlang rabbitmq-server -y
systemctl enable rabbitmq-server.service

2.构建rabbit集群

# 任意一个节点(controller1)
[root@controller01 ~]# systemctl start rabbitmq-server.service
[root@controller01 ~]# rabbitmqctl cluster_status
# 分发.erlang.cookie
scp /var/lib/rabbitmq/.erlang.cookie  controller3:/var/lib/rabbitmq/
scp /var/lib/rabbitmq/.erlang.cookie  controller2:/var/lib/rabbitmq/
# controller2/controller3
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
systemctl start rabbitmq-server
# 构建集群,controller02/03节点以ram节点的形式加入集群
[root@controller2 ~]# rabbitmqctl stop_app
Stopping rabbit application on node rabbit@controller2
[root@controller2 ~]# rabbitmqctl join_cluster --ram rabbit@controller1
Clustering node rabbit@controller2 with rabbit@controller1
[root@controller2 ~]# rabbitmqctl start_app
#集群状态
[root@controller1 ~]# rabbitmqctl  cluster_status
Cluster status of node rabbit@controller1
[{nodes,[{disc,[rabbit@controller1]},
         {ram,[rabbit@controller3,rabbit@controller2]}]},
 {running_nodes,[rabbit@controller1]},
 {cluster_name,<<"rabbit@controller1">>},
 {partitions,[]},
 {alarms,[{rabbit@controller1,[]}]}]
  1. rabbit账号

    #添加用户
    [root@controller1 ~]# rabbitmqctl add_user openstack openstack
    Creating user "openstack"
    #设置新建账号的状态
    [root@controller1 ~]# rabbitmqctl set_user_tags openstack administrator
    Setting tags for user "openstack" to [administrator]
    # 设置新建账号的权限
    [root@controller1 ~]# rabbitmqctl set_permissions -p "/" openstack "." "." ".*"
    Setting permissions for user "openstack" in vhost "/"
    # 查看用户
    [root@controller1 ~]# rabbitmqctl list_users
    Listing users
    openstack [administrator]
    guest [administrator]

4.镜像队列ha

 rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
 [root@controller1 ~]#  rabbitmqctl list_policies
Listing policies
/   ha-all  all ^   {"ha-mode":"all"}   0

5.安装web管理界面

[root@controller01 ~]# rabbitmq-plugins enable rabbitmq_management