Linux下安装rabbitmq

一、安装思路

1. 安装erlang
2. 安装socat
3. 安装rabbitmq
4. 相关配置

说明:

  • 由于RabbitMQ是基于Erlang语言开发, 所以在安装RabbitMQ之前, 需要先安装Erlang
  • rabbitmq需要socat依赖, 所以需要先安装socat

二、具体步骤

1. 安装erlang

下载: wget http://www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
安装: rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm

2. 安装socat

下载: wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
安装: rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm

3. 安装rabbitmq

下载: wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm
安装: rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

安装成功, 如下图所示:

img

三、启动rabbitmq服务

安装完成后, 还没启动服务, 先查看rabbitmq服务状态, 命令: service rabbitmq-server status, 提示:
Error: unable to connect to node rabbit@wangzaiplus: nodedown

OK, 启动rabbitmq服务, 命令: service rabbitmq-server start, 检查是否启动成功: ps -ef | grep rabbitmq

四、启用后台管理插件

此时, 服务已经启动, 但通过浏览器访问http://localhost:15672ip:15672还是不能访问管理界面, 因为还没启用插件, 启用命令: rabbitmq-plugins enable rabbitmq_management, 提示Applying plugin configuration to rabbit@wangzaiplus... started 6 plugins.即表示启用成功

浏览器远程访问http://192.168.1.123:15672, 出现登录界面

注意:
如果服务器开启了防火墙, 则访问不了, 可以先关闭防火墙或者暴露端口
centos7查看防火墙状态: firewall-cmd --state, 关闭后显示not running,开启后显示running
关闭防火墙: systemctl stop firewalld.service

五、开启用户远程访问

rabbitmq从3.3.0开始, 默认用户guest只允许本机访问, 即: http://localhost:15672, 如果通过ip:port访问, 会发现Login failed, 为了让guest用户能够远程访问, 只需新建配置文件配置loopback_users即可(rabbitmq.config配置文件需手动创建), 步骤如下:

cd /etc/rabbitmq
新建配置文件: touch rabbitmq.config
vim rabbitmq.config
写入并保存: [{rabbit, [{loopback_users, []}]}].
重启服务: service rabbitmq-server restart
重新以guest登录, OK

目前为止, rabbitmq服务已安装完毕

六、rabbitmq服务常用命令

  1. 查看rabbitmq服务状态:
    service rabbitmq-server status
  2. 启动服务:
    service rabbitmq-server start
  3. 停止服务:
    service rabbitmq-server stop
  4. 重启服务:
    service rabbitmq-server restart
  5. 设置开机启动:
    chkconfig rabbitmq-server on
  6. 开启管控台:
    rabbitmq-plugins enable rabbitmq_management
  7. 关闭管控台:
    rabbitmq-plugins disable rabbitmq_management

七、安装步骤总结(如果你懒得看上面一堆废话, 可以直接运行以下命令即可顺利安装好rabbitmq, 坑我都帮你踩完了)

  1. 下载erlang:
    wget http://www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
  2. 安装erlang:
    rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
  3. 下载socat:
    wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
  4. 安装socat:
    rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
  5. 下载rabbitmq:
    wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm
  6. 安装rabbitmq:
    rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
  7. 设置开机启动:
    chkconfig rabbitmq-server on
  8. 开启rabbitmq服务:
    service rabbitmq-server start
  9. 启用web管理插件:
    rabbitmq-plugins enable rabbitmq_management
  10. 设置远程访问登录:
    cd /etc/rabbitmq
    touch rabbitmq.config
    vim rabbitmq.config
    写入: [{rabbit, [{loopback_users, []}]}].
    service rabbitmq-server restart

搞定

八、常见错误

  1. 无法远程访问管理界面, rabbitmq服务安装成功并启动后, 浏览器访问http://192.168.1.123:15672发现访问不了, 有以下几个原因:
  • 没有启用管理插件, 解决办法: rabbitmq-plugins enable rabbitmq_management

  • 服务器开启了防火墙且未开放567215672端口, 解决办法: 关闭防火墙或暴露端口, 关闭防火墙命令: systemctl stop firewalld.service

  • 很重要: 如果服务器使用的是第三方云服务(如腾讯云服务器), 设置了安全组策略, 入站规则没有开放567215672端口, 那么也会出现这个问题, 解决办法: 登录云服务器管控台, 配置安全组策略并关联实例即可, 具体配置自行百度
    如图:

    img

  1. guest用户无法远程登录控制台, 参考步骤: 五、开启用户远程访问

九、集群安装相关配置

#修改主机名(如果已经修改配置则不需要此步骤)
node1
node2
hostname node1
hostname node2
#配置hosts文件
ip1 node1
ip2 node2
-----------------------------------------------------------
#创建集群
#同步.erlang.cookie
#.erlang.cookie在当前用户家目录
#三台虚拟机该文件相同即可,注意权限,一般从一台scp过去即可
scp /root..erlang.cookie root@ip:/root
scp /root..erlang.cookie root@ip:/root
-----------------------------------------------------------
#高版本的erlang组件中的.erlang.cookie(初始化位置不同)
#解决方法如下:
#搜索.erlang.cookie文件,获取对应位置进行scp
# [root@localhost mnesia]# 
find / -name *.cookie
/root/.erlang.cookie
/var/lib/rabbitmq/.erlang.cookie
-----------------------------------------------------------
#注意,执行该步骤是RabbitMQ要先停止,如果已启动同步文件之后需要重启MQ
#创建集群
#启动集群(三台)
rabbitmq-server & 
#加入集群(两台slave上操作)
rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@node1 --ram
rabbitmqctl start_app
#检查集群状态
rabbitmqctl cluster_status
#开启镜像模式
rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
#也可以在页面中添加

十、rabbitmq用户管理

用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。

相应的命令

(1) 新增一个用户

rabbitmqctl add_user Username Password

(2) 删除一个用户

rabbitmqctl delete_user Username

(3) 修改用户的密码

rabbitmqctl change_password Username Newpassword

(4) 查看当前用户列表

rabbitmqctl list_users

(5) 设定admin为管理员

rabbitmqctl set_user_tags admin administrator

rabbitmqctl set_permissions -p / admin ‘.’ '.’ ‘.*’

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是在Linux安装RabbitMQ的步骤: 1. 确保您的系统满足RabbitMQ的依赖项。RabbitMQ需要Erlang运行时环境。您可以通过访问RabbitMQ官方网站上的链接来了解RabbitMQ与Erlang版本的兼容性关系。 2. 下载并安装Erlang。您可以从Erlang官方网站或者引用中提供的Erlang下载地址下载Erlang的安装包。 3. 安装socat。socat是RabbitMQ的一个依赖项,您可以通过访问引用中提供的socat下载地址来下载socat的安装包。 4. 下载并安装RabbitMQ。您可以从RabbitMQ官方网站或者引用中提供的RabbitMQ下载地址下载RabbitMQ安装包。 5. 解压缩RabbitMQ安装包,并将其移动到您希望安装RabbitMQ的目录。 6. 添加RabbitMQ的二进制文件路径到系统的环境变量中,以便您可以在任何位置运行RabbitMQ命令。 7. 创建并编辑RabbitMQ的配置文件。您可以使用命令`cd /etc/rabbitmq`进入`/etc/rabbitmq`文件夹,并使用命令`vim rabbitmq.config`编辑`rabbitmq.config`文件。 8. 在配置文件中添加适当的配置,以解决只能通过localhost访问的问题。具体的配置取决于您的需求和网络环境。 9. 保存并关闭配置文件。 10. 启动RabbitMQ服务。您可以使用命令`rabbitmq-server start`启动RabbitMQ服务。 11. 检查RabbitMQ服务是否成功启动。您可以使用命令`rabbitmqctl status`来检查RabbitMQ服务的状态。 请注意,这只是一个大致的安装过程,具体的步骤可能因您的系统和需求而有所不同。建议您在安装过程中参考官方文档或者其他可靠的资源。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值