RabbitMQ集群架构模式

news/2024/12/2 13:46:03/

 

 

 

 

 搭建Mirror镜像集群:

 

 

 

 

4369是erlang的发现端口
5672是rabbitmq的通信端口
15672是rabbitmq的可视化控制台的端口号
25672是erlang底层发送消息和分配消息的底层端口


firewall-cmd --zone=public --add-port=4369/tcp --permanent

firewall-cmd --zone=public --add-port=5672/tcp --permanent

firewall-cmd --zone=public --add-port=15672/tcp --permanent


firewall-cmd --zone=public --add-port=25672/tcp --permanent

firewall-cmd --reload

 

find / -name *.cookie   查询到该文件里面是一串字符,我们要让多台机子的该文件的字符一致
所以下面我们要进行远程拷贝
scp /var/lib/rabbitmq/.erlang.cookie 192.168.70.182:/var/lib/rabbitmq

进行权限设置
chmod 400 /var/lib/rabbitmq/.erlang.cookie    注意分别在两台机子上实现 

 

 分别启动两台服务器的rabbit
我们要在从机上配置我这里选择了第二台进行配置

暂停从机的rabbit的服务
rabbitmqctl stop_app

把从机加入到主机上
rabbitmqctl join_cluster rabbit@m1

启动从机的服务
rabbitmqctl start_app


最后检验结果
rabbitmqctl cluster_status 
会出现如下结果:
[{no des,[{disc,[rabbit@m1,rabbit@m2]}]},
 {running_nodes,[rabbit@m1,rabbit@m2]},
 {cluster_name,<<"rabbit@m1">>},
 {partitions,[]},
 {alarms,[{rabbit@m1,[]},{rabbit@m2,[]}]}]

 第一台的操作会复制到第二台服务》

Haproxy负载均衡:

 

 yum install haproxy    进行安装HA代理服务器 


rpm -ql haproxy        查看安装文件,主要查看目录结构


启动 haproxy服务命令   haproxy


然后查找ha的配置文件   
find / -name haproxy.cfg
会出现如下两个文件
    /etc/haproxy/haproxy.cfg
    /usr/share/doc/haproxy-1.5.18/examples/haproxy.cfg
    使用vim对   /etc/haproxy/haproxy.cfg进行编辑

 

#对MQ集群进行监听
listen rabbitmq_cluster
    bind 0.0.0.0:5672
    option tcplog
    mode tcp 
    option  clitcpka
    timeout connect 1s 
    timeout client  10s
    timeout server  10s
    balance roundrobin
    server node1 192.168.132.137:5672 check inter 5s rise 2 fall 3  
    server node2 192.168.132.139:5672 check inter 5s rise 2 fall 3

#开启haproxy监控服务    
listen http_front
    bind 0.0.0.0:1080
    stats refresh 30s
    stats uri /haproxy?stats
    stats auth admin:admin

haproxy
配置完成之后启动
haproxy -f /etc/haproxy/haproxy.cfg


通过火狐浏览器进行检验操作
http://localhost:1080/haproxy?stats


最后可以查看haproxy的暴露的端口

 

 

 本机访问:

Consumer

public class Consumer {//一般情况先启动消费端public static void main(String[] args) throws IOException, TimeoutException {Connection connection = RabbitUtils.getConnection();Channel channel = connection.createChannel();channel.queueDeclare(RabbitContent.QEUEU_HELLO,false,false,false,null);//开始接受消息//参数2为是否自动签收,如果为true表示自动如果为false表示不自动//channel.basicConsume(RabbitContent.QEUEU_HELLO, false, new MyConsumer(channel));channel.basicConsume(RabbitContent.QEUEU_HELLO, false, new DefaultConsumer(channel){@Overridepublic void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException {String msg = new String(body);System.out.println("接受到消息:" + msg);//最后我么要做签收操作,目录是我们收到了消息就要把队列中的消息删除channel.basicAck(envelope.getDeliveryTag(),false);}});}
}

 producer.java:

public class Producer {public static void main(String[] args) throws IOException, TimeoutException {//创建物理连接Connection connection = RabbitUtils.getConnection();//创建虚拟连接Channel channel = connection.createChannel();//通过Channel来进行数据的传输操作//我这里要向mq发送消息channel.queueDeclare(RabbitContent.QEUEU_HELLO,false, false, false,null);String str = "NBANBANBA";channel.basicPublish("", RabbitContent.QEUEU_HELLO, null, str.getBytes());System.out.println("消息发送成功");channel.close();connection.close();}
}

 


http://www.ppmy.cn/news/117692.html

相关文章

移动定制机s5820刷机,root

端午回家了一趟&#xff0c;发现老爸换了个新手机&#xff0c;s5820,移动的定制机。老爸和我抱怨说手机越来越慢了&#xff0c;问我能不能清理变一点。 拿过了一看果然是定制机&#xff0c;安装了很多的软件&#xff0c;新浪微博呀&#xff0c;人人呀&#xff0c;一大堆乱七八糟…

h3c 交换机 s5048PV5-EI stp配置

1 生成树协议概述 1.1 STP简介 1.1.1 STP的协议报文 1.1.2 STP的基本概念 1.1.3 STP的拓扑计算过程 1.1.4 STP算法实现举例 1.1.5 STP的BPDU传递机制 1.1.6 STP的时间参数 1.2 RSTP简介 1.2.1 RSTP的协议报文 1.2.2 RSTP的基本概念 1.2.3 RSTP的工作原理 1.2.4 RST…

H3C S5820V2_5830V2交换机IRF2堆叠后升级方法

升级前的准备工作l 准备好升级所需的软件版本文件S5820V2_5830V2-CMW710-R2208P01.ipe&#xff1b; l 通过ftp或tftp将版本文件上传到slot1和slot2的flash:/目录下&#xff1b; 1.1. 先升级Master设备&#xff0c;再升级Slave步骤 步骤 工作内容 1 先删除配置中关于mad检测…

华为S5720-52X-PWR-LI/S5720-52X-LI交互机堆叠和VLAN配置

主要配置流程为&#xff1a; 交换机设备上电通过console线或网线连接到交换机后&#xff0c;进行参数和堆叠配置断电&#xff0c;连接好光纤重新上电 1. 首次登录交换机 使用Putty软件&#xff0c;通过串口&#xff0c;连接到交换机: 2. 机上交换机配置 &#xff08;1&…

H3C双向NAT典型组网配置案例

组网说明&#xff1a; 本案例采用H3C HCL模拟器来模拟实现双向NAT的组网&#xff0c;由于模拟器和本物理机的局限性&#xff0c;因此采用模拟器的S5820交换机开启WEB功能模拟成为WEB服务器。在该网络拓扑图中&#xff0c;内网和外网已经有了明确的标识&#xff0c;某局点申请了…

华为交换机S5720命令

1.OSI 七层模型 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。 2.华为产品文档&#xff1a; http://support.huawei.com 3.ACL 访问控制列表 访问控制列表&#xff08;Access Control List&#xff0c;ACL&#xff09; 是路由器和交换机接口的指令列表&a…

华为OD机试之数列描述(Java源码)

数列描述 题目描述 有一个数列a[N] (N60)&#xff0c;从a[0]开始&#xff0c;每一项都是一个数字。数列中a[n1]都是a[n]的描述。其中a[0]1。规则如下&#xff1a; a[0]:1a[1]:11(含义&#xff1a;其前一项a[0]1是1个1&#xff0c;即“11”。表示a[0]从左到右&#xff0c;连续出…

IEEE1588工业以太网交换机

工业网络环境必备IEEE1588工业以太网交换机 SYN2421型IEEE1588工业以太网交换机是一款支持IEEE1588网络测控系统精确时钟同步协议的高性能网管型工业以太网交换机&#xff0c;支持基于硬件时间戳的IEEE1588v2&#xff0c;支持主时钟、从时钟、BC、P2P TC和E2E TC等多种时钟模式…