RabbmitMQ集群搭建流程
参考资料
1.rabbmitMQ集群搭建
http://my.oschina.net/guol/blog/186445
http://blog.ftofficer.com/2010/03/translation-rabbitmq-python-rabbits-and-warrens/
http://www.360doc.com/content/14/0912/09/15077656_408834747.shtml
http://www.cnblogs.com/lzzhang/p/4786468.html
http://wenku.baidu.com/link?url=esD2eJeldjww93lErRm4Ui5AFJ34cNFBxX73jpXTzkzJjo9BACzxI8jeko_genwKDwRpGLJbHv_X2Tw9LBN2rmM4H6bZs5h622FrxZkq1vu
http://www.cnblogs.com/flat_peach/archive/2013/04/07/3004008.html
2.zookeeper集群搭建
http://www.cnblogs.com/xiaoxutongxue/p/3554242.html
3.nginx安装教程
http://blog.csdn.net/dyllove98/article/details/8892509
搭建流程
1.zookeeper搭建流程 (1)qa环境现在使用的zookeeper用的是伪集群,其实就是一台机器,ip全在一台机器上,这里配置端口的时候要尤其注意,不能重复,否则zookeeper是启动不起来的 (2)线上正式环境应该用的是一个正式的zookeeper集群,正式集群的搭建参考:http://www.cnblogs.com/xiaoxutongxue/p/3554242.html 查看两台机器的zookeeper状态,有一台是leader有两台是follower就启动正常了。
2.rabbmitMQ单机搭建流程 (1) Erlang 安装(rabbmitMQ的使用erlang语言写的,安装rabbmitMQ的底层依赖) A.创建erlang文件夹,mkdir /usr/local/erlang B.把安装文件拷贝进去,cp /root/otp_src_R14B.tar.gz /usr/local/erlang/ C.添加文件的权限,chmod +x otp_src_R14B.tar.gz D.解压文件, tar -zxf otp_src_R14B01.tar.gz E.安装文件 ./configure、make 、make install(这是三个不同的命令,三次命令依次安装完成) (2) xmlto (rabbmitMQ编译安装时需要使用) A.创建路径, mkdir /usr/local/xmlto B.拷贝文件到路径下, cp /root/xmlto-0.0.23.tar.gz /usr/local/xmlto/ C.添加权限 D.解压并且安装,yum install -y docbook-style-xsl、./configure、make 、make install(这是四个不同的命令,四次命令依次安装完成) (3)SimpleJson安装(python已经安装好的前提下) A.创建路径,拷贝进去,添加文件权限,解压文件夹,进入解压以后的路径完成安装 安装命令: python setup.py install(这是由于simplejson是依赖python脚本的) (4)rabbmitMQ安装 A.创建路径,拷贝文件,添加文件权限,解压文件,进入路径之后,命令 ln -s rabbitmq-server-generic-unix rabbitmq( 建立软链接) 注意要把机器hostname和ip地址配置在hosts文件中。 B.开启rabbmitMQ的后台web管理页面(先启动运行rabbmitMQ,在开启后台web管理) sbin/rabbitmq-plugins enable rabbitmq_management C.关闭机器的防火墙 D.添加管理员账号(http://blog.csdn.net/zyz511919766/article/details/42292655 ) 添加用户:sbin/rabbitmqctl add_user user_admin passwd_admin 把用户变成管理员:sbin/rabbitmqctl set_user_tags user_admin administrator
3.rabbmitMQ集群搭建 A.保证/root/.erlang.cookie的值一致 B.把rabbit@QA-5-83节点加入rabbit@QA-5-82节点(在rabbit@QA-5-83机器上运行以下命令) sbin/rabbitmqctl join_cluster rabbit@QA-5-82(这是加入了一个磁盘节点,也就是内部节点) (如果是内存节点,加入的命令是rabbitmqctl join_cluster --ram rabbit@queue 多了一个--ram的参数代表是内存节点,对外公开使用的一般是外部节点也就是内存节点) C.开启所有的节点sbin/rabbitmqctl start_app D.查看集群节点状态sbin/rabbitmqctl cluster_status,如果出现nodes中包含了rabbit@QA-5-82和rabbit@QA-5-83两台机器,则集群搭建成功 E:通过lvs把所有的rabbmitMQ的外部节点,也就是内存节点进行负载均衡的配置,集群就搭建完毕了
两个问题 1.vhost问题,所有的队列都有一个属于自己的vhost,所有rabbmitMQ登录的user也有一个自己的vhost,必须对应好vhost才能做正确的操作。 vhost可以通过rabbitmqctl 进行进行添加,之前郑磊他们使用的是vhost=99,参考http://my.oschina.net/guol/blog/186445 2.niginx配置,必须是在装有consumer的机器上去做niginx端口转发配置,因为consumer的配置文件访问rabbmitMQ走的是默认的80端口,然而rabbmitMQ默认的都是15672端口,必须用nginx做端口转发,这样才可以正常的调用rabbmitMQ
博客园内容
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」