rabbitmq集群原理,linux卸载rabbitmq
01、安装前准备
1 :下载地址: https://www.rabbit MQ.com/download.html
2 )环境准备(CentOS7.x /Erlang
因为RabbitMQ是用Erlang语言开发的,所以系统环境必须提供Erlang环境。 第一步是安装电子语言。
erlang版与RabbitMQ版的比较根据:https://www.rabbit MQ.com/which-Erlang.html
可靠抽屉所需的RabbitMQ版本和Erlang 俩个版本一定要配套
已下载ESL-Erlang _ 23.3.1-1 _ centos _7_ amd64.rpm和rabbit MQ-server-3.8.13-1.el8.noarch.rpm
网址:链接: https://www.aliyundrive.com/s/zvbvwkepp 95
01、安装步骤
使用xftp工具将上面下载的两个文件复制到usr/local下
使用xshell进入cd /usr/local/下
首先升级yum,然后输入yum update
然后解压缩输入: rpm-uvhesl-Erlang _ 23.3.1-1 _ centos _7_ amd64.rpm
完成后,运行并安装3360 yum install-yesl-Erlang _ 23.3.1-1 _ centos _7_ amd64.rpm
然后安装socat yum安装socat
解压缩rabbitmqrpm-uvhrabbitmq-server-3.8.13-1.el8.noarch.rpm
系统启动rabbit MQ-server启动服务
系统状态rabbit MQ-server显示状态
系统启用rabbit MQ-server将打开电源
下一次安装的是聊天界面:
必须在srrdhc目录中运行
umask 0022 rabbit MQ -如果pluginsenablerabbitmq _ management不是自己购买的服务器,则必须检查安装。 /etc下的主机文件中是否添加了192.168.2.132 F
前面是主机ip后面是主机名
添加用户(因为guest用户只允许本地访问) rabbitmqctl add_user admin admin将操作权限设置为分配给用户
rabbitmqctlset _ user _ tagsadminadministrator用户级别:
1、管理员可以登录控制台、查看所有信息、管理rabbitmq、monitoring监视器可以登录控制台、查看所有信息3、策略标记器策略创建者可以查看
然后关闭防火墙。 我安装在虚拟机上了
关闭防火墙:系统停止防火墙d
停止启动以禁用启动系统禁用防火墙d
同时关闭selinux:setsebool-pnix _ enabled 1
或所需端口firewall-cmd-- zone=public-- add-port=15672/TCP-- permanent firewall-cmd-- zone=public-- add-pone TCP---permanent firewall-cmd---zone=public---- TCP---permanent firewall-cmd-- zone=public-- cmd-- zone TCP---permanent firewall-cmd---zone=publine TCP---permanent firewall-cmd-- zone=public-TCP---permanent firewall-cmd---zone=public---add TCP---permanent firewall-cmd-- zone=public-- cmd-- zone TCP---permanent firewall-- cmd-- zone=pubbblic
接下来,配置群集
请先了解:关于rabbitmq集群
33559 www.Jian Shu.com/p/b 7cc 32 b 94 d2a
准备两台Centos7机器。 主机名称分别为f、g . (配置一个之后,我将在VMware工作站专业版中克隆几个。 创建克隆后,请务必更改主机名。 否则,无法构建集群。 ) ) ) ) ) )。
2、IP地址分别为F—192.168.2.132、G—192
.168.2.133。3、修改hosts文件如下,下面是G这台机器的hosts文件内容,F也需要如下配置:
[root@G rrdhc]# cat /etc/hosts127.0.0.1 G localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 G localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.2.132 G192.168.2.133 F要是多台的话每台的host里的内容都要一致
保证两台机器都能够相互ping通
在上述的两台机器上安装rabbitmq完成之后,你可以看到你的机器中有如下1个文件。路径在$HOME中或者在/var/lib/rabbitmq中,文件名称为.erlang.cookie,他是一个隐藏文件。那么这文件存储的内容是什么,是做什么用的呢?
这样说吧:RabbitMQ的集群是依赖erlang集群,而erlang集群是通过这个cookie进行通信认证的,因此我们做集群的第一步就是同步cookie,将两台机器中的.erlang.cookie文件内容保持一致.
保持一致后,先对F操作
普通模式的搭建
sudo rabbitmqctl stop_appsudo rabbitmqctl resetsudo rabbitmqctl start_app然后对G操作
sudo rabbitmqctl stop_appsudo rabbitmqctl resetsudo rabbitmqctl join_cluster rabbit@F --ram 将G添加到集群中去sudo rabbitmqctl start_app这样就搭建完毕
上述配置的RabbitMQ默认集群模式,但并不包管队列的高可用性,尽管互换机、绑定这些可以复制到集群里的任何一个节点,然则队列内容不会复制。固然该模式解决一项目组节点压力,但队列节点宕机直接导致该队列无法应用,只能守候重启,所以要想在队列节点宕机或故障也能正常应用,就要复制队列内容到集群里的每个节点,须要创建镜像队列。
镜像队列是基于普通的集群模式的,所以你还是得先配置普通集群,然后才能设置镜像队列,我们就以上面的集群接着做。
我是通过上面开启的网页的管理端来设置的镜像队列,也可以通过命令,这里先说其中的网页设置方式:
1、点击admin菜单–>右侧的Policies选项–>左侧最下下边的Add/update a policy。
2、按照图中的内容根据自己的需求填写。
3、点击Add policy添加策略。
此时你就会来你的两台rabbitmq服务器的网页管理端amind菜单下看见刚才创建的队列了,下面我们来添加一个queues队列来看看效果,这里只是测试结果,其它的先不填写。
设置镜像队列策略
在任意一个节点上执行:
root@F:~ # rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
将所有队列设置为镜像队列,即队列会被复制到各个节点,各个节点状态保持一直。
我们去G上查看策略。
root@G:~ # rabbitmqctl list_policies
Listing policies …
/ ha-all all ^ {“ha-mode”:“all”} 0
…done.
此时镜像集群就已经完成了,可以在任意节点上创建队列,看看其他两个节点是否会同步。
第一次写文章也不会排版…