因为RabbitMQ的开启需要依赖Erlang所以在安装都是很好需要先安装合适版本的Erlang

Erlang安装

执行命令

yum -y install erlang

一般RabbitMQ 3.8版本最少需要 erlang >= 21 以上。

RabbitMQ安装

接下来是下载RabbltMQ

下载rabbitMq 3.8.3 rpm
可以按照如下命令进行直接下载到服务器,或者自己下载后上传。

wget --content-disposition https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/8/rabbitmq-server-3.8.3-1.el8.noarch.rpm/download.rpm

rabbitmq-server-3.8.3-1.el8.noarch.rpm 点击下载(下载后去掉 .zip 后缀名即可,无须解压)

安装

rpm -ivh rabbitmq-server-3.8.3-1.el8.noarch.rpm

一般情况只要是标准系统,到这一步基本就可以成功了。

可以尝试执行rabbitmq-server start命令启动看看是否出现


  ##  ##      RabbitMQ 3.8.3
  ##  ##
  ##########  Copyright (c) 2007-2020 Pivotal Software, Inc.
  ######  ##
  ##########  Licensed under the MPL 1.1. Website: https://rabbitmq.com

  Doc guides: https://rabbitmq.com/documentation.html
  Support:    https://rabbitmq.com/contact.html
  Tutorials:  https://rabbitmq.com/getstarted.html
  Monitoring: https://rabbitmq.com/monitoring.html

  Logs: /var/log/rabbitmq/rabbit@VM-0-4-centos.log
        /var/log/rabbitmq/rabbit@VM-0-4-centos_upgrade.log

  Config file(s): (none)

  Starting broker... completed with 0 plugins.

如果出现上述情况,则表示安装成功,且可以正常启动了。
我们知道RabbitMQ是有提供WEB页面进行查看和管理的。但是这个时候我们刚刚安装还不能登录WEB进行查看和管理。
我们需要打开web开关。

开启web

执行命令

rabbitmq-plugins enable rabbitmq_management

若提示

Enabling plugins on node rabbit@hostname:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@hostname...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

set 3 plugins.
Offline change; changes will take effect at broker restart.

则表示开启成功,若开启失败,可按照对应错误阅读官方文档或者参考度娘,这里就不进行详细说明了。

当我们再次启动的时候就可以用浏览器访问IP:15672看到web页面了。

用户设置

此时我们也只是对MQ的基础进行设置,当我们拿RabbitMQ的默认用户名和密码登录的时候,会发现提示我们User can only log in via localhost
此时我们需要将rabbitMQ的配置文件进行更改。

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

将:{loopback_users, [<<”guest”>>]} ,改为:{loopback_users, []},

这里的rabbit.app 的地址我默认的,如果你也是按照前面的流程进行安装下来的话,那直接复制进行更改就好了。
改好保存后,重启MQ。
此时在使用guest/guest的用户名密码进行登录的时候,就可以成功登录了。
但是guest这个用户是默认用户,知道的人太多了。建议在使用的时候可以新增一个专门的用户进行管理。

添加用户:rabbitmqctl  add_user username password

列出所有用户:rabbitmqctl list_users

删除用户:rabbitmqctl  delete_user username

清除用户权限:rabbitmqctl  clear_permissions  -p  vhostpath  username

列出用户权限:rabbitmqctl  list_user_permissions username

修改密码:rabbitmqctl  change_password  username  newpassword

设置用户权限:rabbitmqctl  set_permissions  -p  vhostpath  username  ".*"  ".*"  ".*"

创建虚拟主机: rabbitmqctl add_vhost vhostpath

列出所以虚拟主机: rabbitmqctl list_vhosts

列出虚拟主机上的所有权限: rabbitmqctl list_permissions -p vhostpath

删除虚拟主机: rabbitmqctl delete_vhost vhost vhostpath

移除所有数据,要在 rabbitmqctl stop_app 之后使用: rabbitmqctl reset

组成集群命令: rabbitmqctl join_cluster <clusternode> [--ram]

查看集群状态: rabbitmqctl cluster_status

修改集群节点的存储形式: rabbitmqctl change_cluster_node_type disc | ram

摘除节点:rabbitmqctl   forget_cluster_node  [--offline]  

修改节点名称:rabbitmqctl  rename_cluster_node   oldnode1  newnode1  [oldnode2  newnode2]  [oldnode3  newnode3...]

具体可以参考上面的设置命令。