[Deprecated]RabbitMQ集群搭建


这是之前基于老的版本撰写的,对于最新的版本,请参见 RabbitMQ集群搭建(基于CentOS7的RabbitMQ3.10版本)

单机版安装

基础组件安装

yum install -y openssl-devel unixODBC-devel gcc-c++

erlang的安装

由于最新的rabbitmq要求erlang在19以上,所以从官网下载安装。所有erlang的地址在 官网下载合集,我使用的最新版

wget http://erlang.org/download/otp_src_21.2.tar.gz
tar -xzvf otp_src_21.2.tar.gz
cd otp_src_21.2
./configure --without-javac
make
make install

即使安装了java还是会报jinterface : No Java compiler found 所以需要–without-javac
试一下

erl

rabbitmq的安装

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.10/rabbitmq-serv[Ber-3.7.10-1.el7.noarch.rpm
yum localinstall --skip-broken rabbitmq-server-3.7.10-1.el7.noarch.rpm

开启插件

rabbitmq-plugins enable rabbitmq_management
rabbitmq-plugins enable rabbitmq_tracing

检查下

rabbitmq-plugins list

允许远程访问控制台

默认情况下只允许localhost访问,需要修改配置文件开启远程访问控制台

vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.10/ebin/rabbit.app

找到:loopback_users里的<<”guest”>>删除。

[{rabbit, [{loopback_users, []}]}].

然后重启 生效

启动

systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service

然后用guest:guest访问15672端口登入控制台

集群搭建

  • erlang cookie
    编辑每台RabbitMQ的cookie文件,以确保各个节点的cookie文件使用的是同一个值,可以scp其中一台机器上的cookie至其他各个节点,cookie的默认路径为/var/lib/rabbitmq/.erlang.cookie或者$HOME/.erlang.cookie,节点之间通过cookie确定相互是否可通信。
    如果是通过复制虚拟机来搭建集群,这一步应该就免了

  • hosts
    配置各节点的hosts文件( vim /etc/hosts)
    例如节点名为qbit

    192.168.1.212 qbit

  • config
    [
    {rabbit, [
    {cluster_nodes, {[‘rabbit@hostname1.eng.example.local’,
    ‘rabbit@hostname2.eng.example.local’], disc}}
    ]}
    ].

  • cluster
    然后留一个节点开启,其他节点去连这个节点

    rabbitmqctl stop_app
    rabbitmqctl join_cluster rabbit@qbit
    rabbitmqctl start_app

然后登陆web管理端会发现有多个node

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值