由于工作需求,需要安装rabbitmq,学习之余,记录一下安装过程

准备基础编译环境
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto

#######################################################################################
安装 erlang
首先编辑/etc/yum.repos.d/rabbitmq-erlang.repo(没有则创建一个)
vi /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
repo_gpgcheck=0
enabled=1

//保存:wq
yum clean all
yum makecache
yum update
yum install erlang

输入erl查看安装状态。
# erl
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3 (abort with ^test1)
1>
当出现以上信息时表示安装完成。ctrl+z退出即可。
#######################################################################################
安装之前,确认每一台linux的设备的主机名都是唯一的(十分重要)
这里以最简单的例子作为演示,将作为集群的rabbitmq服务器设置编号这里
192.168.12.11 test1
192.168.12.21 test2
#######################################################################################
[root@test1 ]#vi /etc/hosts

127.0.0.1 test1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 test1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.12.11 test1
192.168.12.21 test2
//保存:wq
//测试 ping test1 test2
test2服务器同样配置
######################################################################################

下载rabbitmq安装包
cd /home/software
wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.6/rabbitmq-server-3.7.6-1.el7.noarch.rpm
安装(可以使用yum和rpm -ivh安装,rpm的话需要在安装一个插件)
yum install rabbitmq-server/3.7.6/rabbitmq-server-3.7.6-1.el7.noarch.rpm
/usr/sbin/rabbitmq-server -detached //后台启动服务
/usr/sbin/rabbitmq-plugins enable rabbitmq_management //启动web管理插件
/usr/sbin/rabbitmqctl add_user test test //添加用户test,密码test
/usr/sbin/rabbitmqctl set_user_tags test administrator //设置test为administrator权限
_________________________________________________________________________________________
常用命令(在test1)上:
/usr/sbin/rabbitmq-server -detached //后台启动服务
/usr/sbin/rabbitmqctl start_app //启动服务
/usr/sbin/rabbitmqctl stop_app //关闭服务
/usr/sbin/rabbitmq-plugins enable rabbitmq_management //启动web管理插件
/usr/sbin/rabbitmqctl add_user test test //添加用户,密码
/usr/sbin/rabbitmqctl set_user_tags test administrator //设置test为administrator权限
/usr/sbin/rabbitmqctl status //查看mq状态
/usr/sbin/rabbitmqctl cluster_status //查看mq集群状态
/usr/sbin/rabbitmqctl join_cluster --ram rabbit@test2 //将test2的mq加入到test1集群中来
_________________________________________________________________________________________
启动服务
/usr/sbin/rabbitmq-server -detached
查看状态
/usr/sbin/rabbitmqctl status
###########################################################################################
如果实在执行rabbitmqctl出现错误类似(rabbitmq "Error: unable to connect to node 'rabbit@OS-controller': nodedown")
这里需要重新启动rabbitmq服务
systemctl restart rabbitmq-server.service
然后再执行ok
###########################################################################################启动后查看配置集群的erlang.cookie(这个文件是隐藏文件可以在相关目录ls -a查看,配置集群需要将加入的cookie都设为一个值,rpm和编译安装的位置可能不同,通过find找出所有的cookie,为了方便,我都设置成为一个值)
find / -name .erlang.cookie
cat .erlang.cookie
AOTYJPXOZUTGVGSZIDEN
1将所有的cookie值设置为相同
2将所有的cookie权限设置为rw
chmod 600 .erlang.cookie

开始配置集群
第一步,停止当前的mq服务器,(test2)为例子
/usr/sbin/rabbitmqctl stop_app
第二步,将test2加入到test1中
/usr/sbin/rabbitmqctl join_cluster --ram rabbit@test1
第三步,启动服务
/usr/sbin/rabbitmqctl start_app
第四步,查看状态
/usr/sbin/rabbitmqctl cluster_status
也可以打开web界面查看
web界面默认为15672 网页管理 5672 AMQP端口
访问192.168.12.11:15672即可
账户密码为我们上面设置的test
配置ok

参考文档

http://www.rabbitmq.com/install-rpm.html // 官方文档

https://www.cnblogs.com/php-linux/p/7660174.html  //CentOS7下RabbitMQ服务安装配置

https://www.cnblogs.com/knowledgesea/archive/2017/03/11/6535766.html  //Rabbitmq集群高可用部署详细

最新文章

  1. 分布式搜索elasticsearch配置文件详解
  2. NSUserDefaults:熟悉与陌生(转)
  3. JS魔法堂:被玩坏的innerHTML、innerText、textContent和value属性
  4. 409. Longest Palindrome
  5. psql-07表:分区表
  6. Android常见控件— — —ProgressBar
  7. acdream 1738 世风日下的哗啦啦族I 分块
  8. 黑马程序员--C#中属性和字段(变量)的区别
  9. Q105971:Converting a Regular GUID to a Compressed GUID
  10. hdoj 2896 病毒侵袭(AC自动机)
  11. Android触控屏幕Gesture(GestureDetector和SimpleOnGestureListener的使用教程)
  12. wamp问题:关于另个php.ini文件的”…
  13. war包部署到腾讯云中报404的排错经历
  14. Python3学习之路~7.2 类的特殊成员方法
  15. [macOS] finder变慢提速
  16. ShellSort
  17. Protocol Buffers学习教程
  18. BGP - 1,基本概念
  19. url后面带斜杠与不带斜杠的区别
  20. 【编程之外】从《海贼王》的视角走进BAT的世界

热门文章

  1. C# 时间对比
  2. R语言图表
  3. Java 之jdbc连接mysql数据库
  4. viod 0是什么?
  5. PAT_A1107#Social Clusters
  6. [luogu2148 SDOI2009] E&D (博弈论)
  7. JS练习:替换式图片自动轮播
  8. Django-搭建win7虚拟环境-virtualenv
  9. 【codeforces 776E】The Holmes Children
  10. bupt summer training for 16 #7 ——搜索与DP