OpenStack中RabbitMQ高可用性配置

  采用镜像队列的方案进行配置html

一、 网络拓扑node

node1:10.10.11.1vim

node2:10.10.11.2cookie

 

二、 配置hosts网络

node1+node2:app

vim /etc/hostsspa

>10.10.11.1 rab1server

>10.10.11.2 rab2htm

 

三、 安装epelrabbitmq

node1+node2:

Centos 5.x

wget http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -Uvh epel-release-5*.rpm

Centos 6.x

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -Uvh epel-release-6*.rpm

 

四、 安装erlang

node1+node2:

yum install erlang

 

五、 下载rabbitMQ并安装 

node1+node2:

yum install rabbitmq-server

 

【下载地址: http://www.rabbitmq.com/install-rpm.html

rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc

      yum install rabbitmq-server-3.3.5-1.noarch.rpm】

 

六、 运行rabbitMQ

node1+node2:

chkconfig rabbitmq-server on

service rabbitmq-server start

 

七、 确保节点使用相同的Erlang cookie文件

 

先中止两个节点的rabbitMQ

node1:

scp /var/lib/rabbitmq/.erlang.cookie \
root@rab2:/var/lib/rabbitmq/.erlang.cookie

 

八、 关闭防火墙

node1+node2:

service iptables stop

 

九、 配置rabbitMQ集群

node2:

rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@rab1
rabbitmqctl start_app
 

九、检测集群配置

rabbitmqctl cluster_status

 

十、配置镜像队列

rabbitmqctl set_policy HA '^(?!amq\.).*' '{"ha-mode": "all"}'

 

十一、配置服务使用镜像队列

RabbitMQ HA cluster host:port pairs:

rabbit_hosts=rabbit1:5672,rabbit2:5672

How frequently to retry connecting with RabbitMQ:

rabbit_retry_interval=1

How long to back-off for between retries when connecting to RabbitMQ:

rabbit_retry_backoff=2

Maximum retries with trying to connect to RabbitMQ (infinite by default):

rabbit_max_retries=0

Use durable queues in RabbitMQ:

rabbit_durable_queues=false

Use HA queues in RabbitMQ (x-ha-policy: all):

rabbit_ha_queues=true

If you change the configuration from an old setup which did not use HA queues, you should interrupt the service:

# rabbitmqctl stop_app
# rabbitmqctl reset
# rabbitmqctl start_app

Services currently working with HA queues: OpenStack Compute, OpenStack Block Storage, OpenStack Networking, Telemetry.

相关文章
相关标签/搜索