rabbitmq主从搭建

 安装erlang

1 tar xf otp_src_21.1.tar.gz
2 cd otp_src_21.1
3 ./configure --prefix=/usr/local/erlang
4 make && make install
5 echo "export PATH=$PATH:/usr/local/erlang/bin:/usr/local/rabbitmq/sbin" >> /etc/profile
6 source /etc/profile

安装rabbitmq-server

 1 tar xf rabbitmq-server-generic-unix-3.7.9.tar.xz
 2 mv rabbitmq_server-3.7.9 rabbitmq
 3 mv rabbitmq /usr/local/
 4     
 5 # rabbitmq配置文件
 6 cat rabbitmq-env.conf 
 7     RABBITMQ_NODENAME=rabbitmq_node01
 8     RABBITMQ_NODE_IP_ADDRESS=192.168.65.83
 9     RABBITMQ_NODE_PORT=5672
10     RABBITMQ_MNESIA_BASE=/data/rabbitmq/db
11     RABBITMQ_LOG_BASE=/data/logs/rabbitmq
12         
13 cat rabbitmq.config
14     [
15     {rabbit,
16       [
17      {tcp_listeners, [5672]},
18      {dump_log_write_threshold, [1000]},
19      {vm_memory_high_watermark, 0.5},
20      {hipe_compile,true}
21       ]
22       }
23     ].
24         
25 // 安装rabbitmq_management前要先启动rabbitmq
26 rabbitmq-server -detached  // 后台启动
27     
28 // 开启rabbitmq_management插件会自动在配置目录生成enabled_plugins文件
29 rabbitmq-plugins enable rabbitmq_management 
30     
31 cat enabled_plugins 
32     [rabbitmq_management].
33 
34 在启动用户家目录下生成一个.erlang.cookie文件

rbbitmq集群

  Rabbitmq的集群是依附于erlang的集群来工作的,所以必须先构建起erlang的集群景象。Erlang的集群中各节点是经由过程一个magic cookie来实现的,这个cookie存放在 $home/.erlang.cookie (像我的root用户安装的就是放在我的root/.erlang.cookie),文件是400的权限。设置不同节点间同一认证的 Erlang Cookie,采用从主节点 copy 的方式保持 Cookie 的一致性。

 

 1     scp /root/.erlang.cookie 192.168.1.1:/root/.erlang.cookie
 2     // 先停掉rabbitmq服务
 3     rabbitmqctl stop 
 4     // 启动rabbitmq服务
 5     rabbitmq-server -detached
 6     // 查看节点状态
 7     rabbitmqctl cluster_status
 8     // 停止rabbit_node01节点的应用
 9     rabbitmqctl -n rabbitmq_node01@gjzc_rabbitmq_cluster01 stop_app  // 一定要是hostname,不能写ip
10     // 将rabbit_node01添加到集群节点rabbit中去
11     rabbitmqctl -n rabbit_node01@gjzc_rabbitmq_cluster01 join_cluster rabbit_node02@gjzc_rabbitmq_cluster02
12     // 查看集群节点的状态
13     rabbitmqctl cluster_status     
14     // 启动rabbit_node01节点的应用
15     rabbitmqctl -n rabbitmq_node01@gjzc_rabbitmq_cluster01 start_app
16     
17     ]# rabbitmqctl cluster_status
18         Cluster status of node rabbitmq_node01@gjzc_rabbitmq_cluster01 ...
19         [{nodes,[{disc,[rabbitmq_node01@gjzc_rabbitmq_cluster01,
20                         rabbitmq_node02@gjzc_rabbitmq_cluster02]}]},
21          {running_nodes,[rabbitmq_node02@gjzc_rabbitmq_cluster02,
22                          rabbitmq_node01@gjzc_rabbitmq_cluster01]},
23          {cluster_name,<<"rabbitmq_node02@gjzc_rabbitmq_cluster02">>},
24          {partitions,[]},
25          {alarms,[{rabbitmq_node02@gjzc_rabbitmq_cluster02,[]},
26                   {rabbitmq_node01@gjzc_rabbitmq_cluster01,[]}]}]

 

创建用户

1 rabbitmqctl add_user {用户名} {密码}
2 
3 // 设置权限
4 rabbitmqctl set_user_tags {用户名} {权限}

 

创建超级用户

rabbitmqctl add_user admin1 admin1
rabbitmqctl set_user_tags admin1 administrator

 

posted @ 2018-12-26 18:59  ︻◣_蝸犇り~  阅读(3318)  评论(0编辑  收藏  举报