OpenStack HA集群2-RabbitMQ集群

简介:

1、安装RabbitMQ-server

[root@controller1 ~]# yum install -y erlang rabbitmq-server

[root@controller1 ~]# systemctl start rabbitmq-server.service

[root@controller1 ~]# systemctl enable rabbitmq-server.service

[root@controller1 ~]# systemctl status rabbitmq-server.service

[root@controller1 ~]# systemctl list-unit-files | grep rabbitmq

rabbitmq-server.service                       enabled

以上三个节点同时进行


2

[root@controller1 ~]# rabbitmqctl add_user openstack zoomtech

Creating user "openstack" ...

[root@controller1 ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Setting permissions for user "openstack" in vhost "/" ...


[root@controller1 ~]# /usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_management_agent

The following plugins have been enabled:

  webmachine

  rabbitmq_web_dispatch

  rabbitmq_management_agent

  rabbitmq_management

  mochiweb

  amqp_client

Applying plugin configuration to rabbit@controller1... failed.

 * Could not contact node rabbit@controller1.

   Changes will take effect at broker restart.

 * Options: --online  - fail if broker cannot be contacted.

            --offline - do not try to contact broker.

[root@controller1 ~]# systemctl restart rabbitmq-server.service

[root@controller1 ~]# systemctl status rabbitmq-server.service


登录:http://192.168.17.132:15672/#/

Username: guest      Password:guest


新增一个用户,在三个节点中操作

[root@controller1 ~]# rabbitmqctl add_user mqadmin mqadmin

Creating user "mqadmin" ...

[root@controller1 ~]# rabbitmqctl set_permissions -p / mqadmin ".*" ".*" ".*"

Setting permissions for user "mqadmin" in vhost "/" ...

[root@controller1 ~]# rabbitmqctl status


复制.erlang.coolie到controller2和controller3

[root@controller1 ~]# scp /var/lib/rabbitmq/.erlang.cookie controller2:/var/lib/rabbitmq/.erlang.cookie

[root@controller1 ~]#

[root@controller1 ~]# scp /var/lib/rabbitmq/.erlang.cookie controller3:/var/lib/rabbitmq/.erlang.cookie


将controller2加入到controller1集群中

[root@controller2 ~]# systemctl restart rabbitmq-server.service


[root@controller2 ~]# rabbitmqctl stop_app

Stopping node rabbit@controller2 ...


[root@controller2 ~]# rabbitmqctl join_cluster --ram rabbit@controller1

Clustering node rabbit@controller2 with rabbit@controller1 ...


[root@controller2 ~]# rabbitmqctl start_app

Starting node rabbit@controller2 ...


将controller3加入到controller1集群中

[root@controller3 ~]# systemctl restart rabbitmq-server.service


[root@controller3 ~]# rabbitmqctl stop_app

Stopping node rabbit@controller3 ...


[root@controller3 ~]# rabbitmqctl join_cluster --ram rabbit@controller1

Clustering node rabbit@controller3 with rabbit@controller1 ...


在Controller1上查看集群状态

[root@controller1 ~]# rabbitmqctl cluster_status

Cluster status of node rabbit@controller1 ...

[{nodes,[{disc,[rabbit@controller1]},

         {ram,[rabbit@controller3,rabbit@controller2]}]},

 {running_nodes,[rabbit@controller3,rabbit@controller2,rabbit@controller1]},

 {cluster_name,<<"rabbit@controller1">>},

 {partitions,[]},

 {alarms,[{rabbit@controller3,[]},

          {rabbit@controller2,[]},

          {rabbit@controller1,[]}]}]


[root@controller2 ~]# rabbitmqctl cluster_status

Cluster status of node rabbit@controller2 ...

[{nodes,[{disc,[rabbit@controller1]},

         {ram,[rabbit@controller3,rabbit@controller2]}]},

 {running_nodes,[rabbit@controller3,rabbit@controller1,rabbit@controller2]},

 {cluster_name,<<"rabbit@controller1">>},

 {partitions,[]},

 {alarms,[{rabbit@controller3,[]},

          {rabbit@controller1,[]},

          {rabbit@controller2,[]}]}]


本文转自    OpenStack2015 博客,原文链接:   http://blog.51cto.com/andyliu/1901022     如需转载请自行联系原作者


相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
运维 分布式计算 DataWorks
阿里云大数据ACP(一)大数据开发平台 DataWorks 1
阿里云大数据ACP(一)大数据开发平台 DataWorks 1
1736 0
阿里云大数据ACP(一)大数据开发平台 DataWorks 1
|
存储 安全 算法
无线加密技术的种类、工作原理
【4月更文挑战第22天】
628 0
|
机器学习/深度学习 算法
深度学习之因果发现算法
基于深度学习的因果发现算法是一个旨在从复杂数据中自动挖掘变量之间潜在因果关系的研究领域。它结合了传统因果推理方法与深度学习的强大特征提取能力,帮助应对高维、非线性数据中的因果结构发现。
1162 9
|
存储 NoSQL Java
深入学习Redis:从入门到实战
深入学习Redis:从入门到实战
1254 1
|
Rust 安全 物联网
解锁物联网安全新纪元!Rust如何悄然革新系统级编程,让智能设备“零风险”连接未来?
【8月更文挑战第31天】随着物联网(IoT)技术的发展,设备安全与效率成为关键挑战。Rust语言凭借其内存安全、高性能和并发优势,逐渐成为物联网开发的新宠。本文通过智能门锁案例,展示Rust如何确保生物识别数据的安全传输,并高效处理多用户请求。Rust的应用不仅限于智能家居,还广泛用于工业自动化和智慧城市等领域,为物联网开发带来革命性变化。
426 1
|
安全 网络架构
什么是 ESS?
【8月更文挑战第24天】
2619 0
|
存储 编译器 芯片
JAX 中文文档(五)(5)
JAX 中文文档(五)
273 0
|
数据库 Python
什么问题会导致404?如何解决404?
什么问题会导致404?如何解决404?
|
存储 SQL PHP
彩虹外链网盘界面UI美化版超级简洁好看
彩虹外链网盘界面UI美化版超级简洁好看
323 0
|
数据采集 Windows
【音视频 ffmpeg 学习】麦克风数据采集,命令行播放 持续更新
【音视频 ffmpeg 学习】麦克风数据采集,命令行播放 持续更新