Rabbitmq--集群

目录

2.配置各节点host

3.修改cookie

4.重启RabbitMQ服务

5.在2节点上执行

6.在3节点执行

7.集群状态

8.需要重新设置用户

9.解除集群节点

10.Nginx负载均衡配置


也可以不改

vi /etc/hostname

2.配置各节点host

 让各节点都能识别对方

vi /etc/hosts

192.168.3.132 rabbitmq-node1

192.168.3.133 rabbitmq-node2

192.168.3.134 rabbitmq-node3

3.修改cookie

 以确保各个节点的cookie文件使用的同一个值, 在node1上执行远程命令

scp /var/lib/rabbitmq/.erlang.cookie root@rabbitmq-node2:/var/lib/rabbitmq/.erlang.cookie

scp /var/lib/rabbitmq/.erlang.cookie root@rabbitmq-node3:/var/lib/rabbitmq/.erlang.cookie

4.重启RabbitMQ服务

    顺带启动Erlang虚拟机和RabbitMQ应用服务(在三个节点上执行)

rabbitmq-server -detached

5.在2节点上执行

rabbitmqctl stop_app #只关闭Rabbitmq服务

rabbitmqctl reset

rabbitmqctl join_cluster rabbit@rabbitmq-node1

rabbitmqctl start_app #只启动应用服务

6.在3节点执行

rabbitmqctl stop_app #只关闭Rabbitmq服务

rabbitmqctl reset

rabbitmqctl join_cluster rabbit@rabbitmq-node1

rabbitmqctl start_app #只启动应用服务

7.集群状态

rabbitmqctl cluster_status

8.需要重新设置用户

  8.1 创建账号

rabbitmqctl add_user admin admin

  8.2 设置用户角色

rabbitmqctl set_user_tags admin administrator

  8.3 设置用户权限

rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

9.解除集群节点

  node2和node3机器分别执行

rabbitmqctl stop_app

rabbitmqctl reset

rabbitmqctl start_app

rabbitmqctl cluster_status

rabbitmqctl forget_cluster_node_rabbit@rabbitmq-node2(node1机器上执行)

10.Nginx负载均衡配置

  文件编码:ANSI这个重要,否则会出错, 

  消息队列端口5672代理5672,  消息队列端口15672代理5672

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}
	
stream {
	upstream stream_rabbitmq_backend {    
		server 192.168.4.136:5672;
		server 192.168.4.137:5672;
		server 192.168.4.138:5672;
	}
	server {            
		listen 5672;            
		proxy_pass stream_rabbitmq_backend;    
	}
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
	
    #tcp_nopush     on;
    keepalive_timeout  65;

    #gzip  on;
	upstream stream_15672 {
		server 192.168.4.136:15672;
		server 192.168.4.137:15672;
		server 192.168.4.138:15672;
	}
	
	server {
		listen 15672;
		server_name 192.168.4.139;
		location / {	
			root html;
			proxy_pass http://stream_15672;
			index index.html index.htm;		
		}
    }

    include /etc/nginx/conf.d/*.conf;	 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wang_peng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值