OpenStack搭建 R版 (二)RabbitMQ搭建

所有虚拟机都要配置

erlang 安装 :

  1. 下载rpm包
 wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

在这里插入图片描述
不一定要做的,我没搞

  • 从erlang-solutions中更新该包,并将erlang_solutions.repo添加到/etc/yum.repos.d
    1.1 rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
    该包还需依赖到epel源,请确保已有该源,若没有则可通过以下方式安装:
  1. wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    在这里插入图片描述
  2. rpm -ivh epel-release-latest-7.noarch.rpm
    在这里插入图片描述
    4. yum repolist # 查看安装是否成功
    在这里插入图片描述5. 安装
yum install erlang -y
        ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200110153147395.png)

由于Erlang Solutions会进行不断地更新,且RabbitMQ对Erlang的版本有一定的要求(官方版本要求对应表)。所以官方建议我们禁止Erlang版本的自动更新。方法如下:参考如何禁止某个软件包的自动升级
# 安装yum-versionlock

yum install yum-plugin-versionlock
    # 禁止Erlang自动更新
yum versionlock erlang
    注:默认情况下,yum似乎是不会自动更新软件的,除非安装了yum-cron这个软件或者自己写了某些自动更新脚本。如果是前者的话,我们也可以 cd /etc/yum 目录下,将yum-cron.conf中的download_updates = yes 改为 no。

RabbitMQ安装:

  1. 安装RabbitMQ Server
    从官网下载rpm包并上传到服务器上。官方下载链接: https://www.rabbitmq.com/install-rpm.html#downloads
    # 导入签名
rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc

rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

安装

yum install rabbitmq-server-3.7.7-1.el7.noarch.rpm

使用脚本安装

  1. erlang安装
    #创建erlang.repo库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash

安装

 yum install erlang
 2. RabbitMQ安装
            1. #创建rabbitmq-server.repo库
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
            ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200110155712985.png)
  1. #安装
yum install rabbitmq-server -y

在这里插入图片描述

RabbitMQ使用 :
配置文件:

  vim /etc/rabbitmq/rabbitmq.config
 systemctl enable rabbitmq-server.service
 systemctl start rabbitmq-server.service
 systemctl status rabbitmq-server.service
  1. 查看监听端口:
netstat -lantp | grep 5672

在这里插入图片描述

  1. node1:修改guest密码为admin(默认用户为:guest 密码为:guest)
rabbitmqctl change_password guest admin

在这里插入图片描述
6. node1:编辑rabbittmq变量文件

vim /etc/rabbitmq/rabbitmq-env.conf
                RABBITMQ_NODE_PORT=5672
                ulimit -S -n 4096
                RABBITMQ_SERVER_ERL_ARGS="+K true +A30 +P 1048576 -kernel inet_default_connect_options [{nodelay,true},{raw,6,18,<<5000:64/native>>}] -kernel inet_default_listen_options [{raw,6,18,<<5000:64/native>>}]"
                RABBITMQ_NODE_IP_ADDRESS=192.168.150.128
  1. 查看rabbitmq插件
/usr/lib/rabbitmq/bin/rabbitmq-plugins list

在这里插入图片描述
在这里插入图片描述
所有node 开启rabbitmq的web管理页面

/usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_management_agent

或者:rabbitmq-plugins enable rabbitmq_management(这个比较方便)
在查看是否打开了管理页面

/usr/lib/rabbitmq/bin/rabbitmq-plugins list

在这里插入图片描述

  1. 重启服务
  systemctl restart rabbitmq-server.service
        systemctl status rabbitmq-server.service
  1. 登陆验证: http://192.168.150.128:15672 guest/admin

RabbitMQ集群 :
1. 所有虚拟机都安装好RabbitMQ之后启动RabbitMQ

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

检查5672端口是否开启:

netstat -lantp | grep 5672

在这里插入图片描述
2. node1:修改guest密码为admin(默认用户为:guest 密码为:guest)

 rabbitmqctl change_password guest admin

在这里插入图片描述

        guest用户登录失败的解决办法:
                http://www.mamicode.com/info-detail-2337532.html
  1. node1:编辑rabbittmq变量文件
vim /etc/rabbitmq/rabbitmq-env.conf
                RABBITMQ_NODE_PORT=5672
                ulimit -S -n 4096
                RABBITMQ_SERVER_ERL_ARGS="+K true +A30 +P 1048576 -kernel inet_default_connect_options [{nodelay,true},{raw,6,18,<<5000:64/native>>}] -kernel inet_default_listen_options [{raw,6,18,<<5000:64/native>>}]"
                RABBITMQ_NODE_IP_ADDRESS=172.16.254.60
  1. node1:将rabbittmq变量文件拷贝到其他两节点,之后并修改相应节点的ip
scp /etc/rabbitmq/rabbitmq-env.conf con2:/etc/rabbitmq/
            scp /etc/rabbitmq/rabbitmq-env.conf con3:/etc/rabbitmq/

所有node 开启rabbitmq的web管理页面 #(上面第7位)
/usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_management_agent
或者:rabbitmq-plugins enable rabbitmq_management(这个比较方便)

systemctl restart rabbitmq-server.service
systemctl status rabbitmq-server.service
  1. node1发送erlang.cookie到其他节点配置集群
 rabbitmqctl status
            scp /var/lib/rabbitmq/.erlang.cookie controller2:/var/lib/rabbitmq/.erlang.cookie
            scp /var/lib/rabbitmq/.erlang.cookie controller3:/var/lib/rabbitmq/.erlang.cookie

在这里插入图片描述

  1. node2和node3停止应用,并以ram的方式加入node1节点,之后重启应用
systemctl restart rabbitmq-server.service
            rabbitmqctl stop_app
            rabbitmqctl join_cluster --ram rabbit@con1
            rabbitmqctl start_app

在这里插入图片描述

            注意:对应的主机名要对应上 解析文件在/etc/hosts
  1. 查看有没有成功:
rabbitmqctl cluster_status
            Cluster status of node rabbit@con1 ...
            [{nodes,[{disc,[rabbit@con1]},{ram,[rabbit@con3,rabbit@con2]}]},
            {running_nodes,[rabbit@con3,rabbit@con2,rabbit@con1]},
            {cluster_name,<<"rabbit@con1">>},
            {partitions,[]},
            {alarms,[{rabbit@con3,[]},{rabbit@con2,[]},{rabbit@con1,[]}]}]

在这里插入图片描述
8. 登陆验证:http://172.16.254.60:15672/#/ guest/admin

  1. .OpenStack 用户:
    node1:添加一个openstack的用户,并设密码为admin。并设置权限和成为管理员
    node1:
rabbitmqctl add_user openstack admin
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
rabbitmqctl set_user_tags openstack administrator

往后会发的比较慢,年底了比较忙

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值