Linux(Centos7)单机部署RabbiMq

单机部署:
1、安装erlang环境:

最简单的方法,上传rpm包或下载

# wget https://github.com/rabbitmq/erlang-rpm/releases/download/v21.3.8.11/erlang-21.3.8.11-1.el7.x86_64.rpm
# yum -y localinstall erlang-21.3.8.11-1.el7.x86_64.rpm
2、安装RabbitMq:

最简单的方法,上传rpm包或下载包

# wget https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/noarch/rabbitmq-server-3.7.7-1.el7.noarch.rpm
# yum -y localinstall rabbitmq-server-3.7.7-1.el7.noarch.rpm
3、添加开机启动:
# systemctl daemon-reload
# systemctl start rabbitmq-server
# systemctl enable rabbitmq-server
4、查看启动状态和端口:
# systemctl status rabbitmq-server 或 rabbitmqctl status

看到是running即为启动成功。

# ss -atunlp |grep 5672

成功启动会启动三个端口,分别是5672、15672、25672

5、新建一个用户和密码(用于登录web,更新之后默认的guest用户已经不能登录了):
5.1 创建用户和密码
# rabbitmqctl add_user rabbit1 rabbit1

# 设置创建的用户为管理员
# rabbitmqctl set_user_tags rabbit1 administrator

# 查看用户
# rabbitmqctl list_users

# 查看用户权限
# rabbitmqctl list_user_permissions rabbit1
6、开启RabbitMq的web访问界面:
# rabbitmq-plugins enable rabbitmq_management

集群部署:

环境准备:(相互解析,且均单机部署完成)

  • 192.168.47.145 zabbix
  • 192.168.47.147 zabbix1
  • 192.168.47.129 zabbix2
1、创建好数据存放目录和日志存放目录(每台都要弄):
1.1 数据存放目录
# mkdir -p /opt/rabbitmq/data

1.2 日志存放目录
# mkdir -p /opt/rabbitmq/logs

1.3 授权
# chmod 777 -R /opt/rabbitmq

1.4 更改属主与属组
# chown rabbitmq.rabbitmq -R /opt/rabbitmq

1.5 创建配置文件
# vim /etc/rabbitmq/rabbitmq-env.conf
RABBITMQ_MNESIA_BASE=/opt/rabbitmq/data 
RABBITMQ_LOG_BASE=/opt/rabbitmq/logs

1.6 重启服务
# systemctl restart rabbitmq-server
2、拷贝cookie:

拷贝其中一台rabbitmq的cookie到其他节点。被拷贝的rabbitmq为master,在这里将rabbitmq1做为master RabbitMq的集群是依附于erlang的集群来工作的,所以必须先构建起erlang的集群景象。Erlang的集群中各节点是经由 过程一个magic cookie来实现的,这个cookie存放在/var/lib/rabbitmq/.erlang.cookie中,文件是400的权 限。所以必须保证各节点cookie一致,不然节点之间就无法通信。 (官方在介绍集群的文档中提到过.erlang.cookie 一般会存在这两个地址:第一个是home/.erlang.cookie;第二个地 方就是/var/lib/rabbitmq/.erlang.cookie。如果我们使用解压缩方式安装部署的rabbitmq,那么这个文件会在{home} 目录下,就是$home/.erlang.cookie。如果我们使用rpm等安装包方式进行安装的,那么这个文件会在/var/lib/ rabbitmq目录下。)

# scp /var/lib/rabbitmq/.erlang.cookie zabbix1:/var/lib/rabbitmq/.erlang.cookie

# scp /var/lib/rabbitmq/.erlang.cookie zabbix2:/var/lib/rabbitmq/.erlang.cookie
3、重启服务:
# systemctl restart rabbitmq-server
4、将节点加入集群:
4.1 停止节点,切记不是停止服务
# rabbitmqctl stop_app 

4.2 如果有数据需要重置一下
# rabbitmqctl reset 

4.3 添加到了哪台节点,@后面的是节点的主机名(建议不要设置太长的主机名,否则解析不完整会导致出错)
# rabbitmqctl join_cluster rabbit@zabbix

4.4 启动节点
# rabbitmqctl start_app 

4.5 在每台机器上查看集群状态
# rabbitmqctl cluster_status

每台机器显示出三台节点,表示已经添加成功!

1)默认rabbitmq启动后是磁盘节点,在这个cluster命令下,mq02和mq03是内存节点,mq01是磁盘节点。

2)如果要使mq02、mq03都是磁盘节点,去掉–ram参数即可。

3)如果想要更改节点类型,可以使用命令rabbitmqctl change_cluster_node_type disc(ram),前提是必须停掉 rabbit应用 在RabbitMQ集群集群中,必须至少有一个磁盘节点,否则队列元数据无法写入到集群中,当磁盘节点宕掉时,集群 将无法写入新的队列元数据信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值