Rabbit 集群部署
1、RabbitMQ是用erlang语言编写的,所以我们先安装erlang语言环境
配置erlang语言环境
# vim /etc/yum.repos.d/rabbitmq-erlang.repo
[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/20/el/7
gpgcheck=1
gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
enabled=1
# rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
# yum install erlang socat -y #安装erlang
2、安装rabbitmq服务
下载rabbitmq地址:http://www.rabbitmq.com/download.html
#wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.13/rabbitmq-server-3.7.13-1.el7.noarch.rpm
# yum localinstall rabbitmq-server-3.7.13-1.el7.noarch.rpm
(或者 # yum install rabbitmq-server-3.7.7-1.el7.noarch.rpm)
3、启用RabbitMQ的web插件 ,方便后期管理界面:
# rabbitmq-plugins enable rabbitmq_management
4、设置开机启动
# systemctl enable rabbitmq-server.service #设置开机启动服务
# systemctl start rabbitmq-server #启动服务
# systemctl status rabbitmq-server.service #查看服务
# ll /var/lib/rabbitmq/.erlang.cookie
注:发现/var/lib/rabbitmq/.erlang.cookie的文件拥有者是root,而rabbitmq服务是以rabbitqm普通用户运行的, 这就无法往.erlang.cookie里写入数据,所以可能报错。
# chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie #修改文件拥有者
5、# netstat -antup | grep 5672 #查看端口号
6、为RabbitMQ创建用户并赋权。
# rabbitmqctl add_user cdnfresh cdnfresh #添加用户
# rabbitmqctl set_user_tags cdnfresh administrator #设置用户权限为administrator
# rabbitmqctl cluster_status #查看集群状态
# rabbitmqctl list_users #查看所有用户
在浏览器测试登录,发现可以登录(ip+port 15672)
7、配置rabbitmq集群
# 在第一个节点启动rabbitmq-server生成cookie文件
# rabbitmq-server -detached
# 设置所有节点同一认证Erlang Cookie,将第一个节点上的cookie文件拷贝到其他节点上,注意.erlang.cookie权限
# chmod 777 /var/lib/rabbitmq/.erlang.cookie
# scp -P38199 .erlang.cookie MQ02:/var/lib/rabbitmq/
# scp -P38199 .erlang.cookie MQ03:/var/lib/rabbitmq/
# chmod 400 /var/lib/rabbitmq/.erlang.cookie (每个节点都要执行)
# chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
# chown -R rabbitmq:rabbitmq /etc/rabbitmq
8、启动rabbitmq集群,将MQ02、MQ03加入MQ01
# rabbitmq-server -detached
# rabbitmqctl stop_app
# rabbitmqctl join_cluster rabbit@MQ01
# rabbitmqctl start_app
9、查看集群状态
# rabbitmqctl cluster_status
10、安装rabbitmq_delayed_message_exchange 插件
Rabbitmq官网下载即可
# rabbitmq-plugins list 查看插件
# unzip rabbitmq_delayed_message_exchange-20171201-3.7.x.zip
解压之后得到 rabbitmq_delayed_message_exchange-20171201-3.7.x.ez 文件
# mv rabbitmq_delayed_message_exchange-20171201-3.7.x.ez /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.13/plugins/
# rabbitmq-plugins enable rabbitmq_delayed_message_exchange 安装完毕查看即可
Rabbit 集群部署的更多相关文章
- Linux运维--12.手动部署Rabbit集群
1.安装rabbit组件 10.100.2.51 controller1 10.100.2.52 controller2 10.100.2.53 controller3 #每个节点 yum insta ...
- Linux运维---16. Kolla部署OpenStack外接rabbit集群
# 前提时rabbit集群已经搭建完成 vim /etc/kolla/globals.yml enable_rabbitmq: "no" rpc_transport_url: &q ...
- RabbitMQ学习之集群部署
我们先搭建一个普通集群模式,在这个模式基础上再配置镜像模式实现高可用,Rabbit集群前增加一个反向代理,生产者.消费者通过反向代理访问RabbitMQ集群. 架构图如下: 设计架构可以如下:在一个集 ...
- rabbitMQ集群部署以及集群之间同步
MQ集群部署 期待的部署架构 其中,一个机房有两台机器部署MQ,并组成集群,有一个机房的MQ集群作为中心集群,其他机房的MQ集群将消息同步到中心MQ集群中. 安装erlang,略.. 安装rabbit ...
- RabbitMQ消息队列(十)-高可用集群部署实战
前几章讲到RabbitMQ单主机模式的搭建和使用,我们在实际生产环境中出于对性能还有可用性的考虑会采用集群的模式来部署RabbitMQ. RabbitMQ集群基本概念 Rabbit模式大概分为以下三种 ...
- Centos6.9下RabbitMQ集群部署记录
之前简单介绍了CentOS下单机部署RabbltMQ环境的操作记录,下面详细说下RabbitMQ集群知识,RabbitMQ是用erlang开发的,集群非常方便,因为erlang天生就是一门分布式语言, ...
- k8s-rabbitmq-(一)集群部署
K8S版本:1.10.1 rabbitmq版本:3.6.14 从来没用过这个软件,所以对里面很多术语看不太懂.最后通过https://www.kubernetes.org.cn/2629.html 大 ...
- 160328、rabbitMQ集群部署示例
环境:Centos 6.5 x86_64MQ网址:http://www.rabbitmq.com/SERVER101\SERVER102 SERVER103 一.单节点安装 #yum install ...
- RabbitMQ(6) 集群部署
单节点部署 rabbitmq单节点部署比较简单,可以使用apt-get等工具快速安装部署. wget -O- https://www.rabbitmq.com/rabbitmq-release-sig ...
随机推荐
- HDU 6521 Party
6521 思路: 线段树玄学剪枝, 俗称吉司机线段树. 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize ...
- h5微信支付在微信内页使用微信公众号支付
由于app的迭代,原本的微信支付是使用原生写的 然后h5这边做交互,现在需要修改使用h5的微信支付,于是就有了现在的这个例子,微信支付其实对于我们前端来说就是调用接口然后,根据链接进行支付,其中有点坑 ...
- OO-第一单元总结
经过了前三次作业和两次实验的引导,我的编程思路在逐步从面向过程转向面向对象.也对面向对象有了初步的理解.虽然第一次实验由于自己没有及时完成导致没有提交过有些遗憾,但是第二次实验还是提交了几次的(虽然由 ...
- 正向代理or反向代理
正向代理 我访问不了某网站比如www.google.com,但是我能访问一个代理服务器 这个代理服务器呢,它能访问那个我不能访问的网站,于是我先连上代理服务器,告诉它我需要那个无法访问网站的内容,代理 ...
- ansible如果兼容Centos5
基本安装 安装gcc,用于编译python源码 yum install gcc 更新python版本 centos自带python2.6版本,由于centos已对python深度依赖,所以更新pyth ...
- Django的认证系统和Django admin的简单使用
Django自带的用户认证 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Djang ...
- php(一)搭建php开发环境
1.下载php语言包 php作为一门语言,本身可以是一个纯绿色版的"文件夹"——称之为"php语言包".windows版的下载地址:https://window ...
- 学习笔记(一)HTML基础
HTML 基础 HTML 简介 HTML (Hyper textmarkup language) 中文译名为"超文本标记语言",主要是通过 HTML 标记对网页中的文本.图片.声音 ...
- js中Array数组基本方法
总结:push() 添加元素到数组未尾, 返回数组长度 unshift() 添加元素到数组头部, 返回数组长度 pop() 删除数组未尾元素, 返回删除元素 shift() 删除数组头部元素, 返回删 ...
- ZedBoard前期准备工作
1. 资源下载 内核:https://github.com/Xilinx/linux-xlnx/releases uboot:https://github.com/Xilinx/u-boot-xlnx ...