Linux(Centos7)安装RabbitMQ_v3.6.5图文教程(rpm方式)


在线安装依赖环境(本博文不用):

yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz


1. 安装RabbitMQ

注:
(1)rabbitmq的安装需要erlang语言和socat的支持,所以安装前请先安装erlang语言和socat。

(2)erlang的版本需要和rabbitmq版本相对应(详情见RabbitMQ官网:https://www.rabbitmq.com


(1)上传所需安装包

  • ① erlang-18.3-1.el7.centos.x86_64.rpm
  • ② socat-1.7.3.2-5.el7.lux.x86_64.rpm
  • ③ rabbitmq-server-3.6.5-1.noarch.rpm

(2)安装Erlang语言支持

[root@localhost java]# rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
   1:erlang-18.3-1.el7.centos         ################################# [100%]
[root@localhost java]# 

(3)安装Socat支持

说明: Socat 是 Linux 下的一个多功能的网络工具,名字来由是 「Socket CAT」。其功能与有瑞士军刀之称的 Netcat 类似,可以看做是 Netcat 的加强版。
Socat 的主要特点就是在两个数据流之间建立通道,且支持众多协议和链接方式。如 IP、TCP、 UDP、IPv6、PIPE、EXEC、System、Open、Proxy、Openssl、Socket等。
Socat官网:http://www.dest-unreach.org/socat/

安装命令:

[root@localhost java]# rpm -ivh socat-1.7.3.2-1.1.el7.x86_64.rpm
警告:socat-1.7.3.2-1.1.el7.x86_64.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID 87e360b8: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:socat-1.7.3.2-1.1.el7            ################################# [100%]
[root@localhost java]# 

(4)安装RabbitMQ

[root@localhost java]# rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
警告:rabbitmq-server-3.6.5-1.noarch.rpm: 头V4 RSA/SHA1 Signature, 密钥 ID 6026dfca: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:rabbitmq-server-3.6.5-1          ################################# [100%]
[root@localhost java]# 

(5)开启RabbitMQ管理界面

说明: 为方便我们操作,需要开启web界面访问操作。

[root@localhost java]# rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
  mochiweb
  webmachine
  rabbitmq_web_dispatch
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management

Applying plugin configuration to rabbit@localhost... failed.
 * Could not contact node rabbit@localhost.
   Changes will take effect at broker restart.
 * Options: --online  - fail if broker cannot be contacted.
            --offline - do not try to contact broker.
[root@localhost java]# 

说明: 这里报“Applying plugin configuration to rabbit@localhost… failed.”(这个fail在这里可以忽略)是因为没有启动RabbitMQ,开启RabbitMQ管理界面前我们可以先启动RabbitMQ,也可以不启动。


(6)修改RabbitMQ配置文件

注意: RabbitMQ提供了默认登录的(超级管理员)用户名:
用户名:guest
密码:guest

但是guest账户在新版本(当前版本v3.6.5)只能通过localhost登录,这里我们需要开放guest用户的远程访问权限。

找到rabbitmq安装目录下的rabbit.app文件:修改loopback_users配置,直接删除 中括号[] 中的<<”guest”>> 或 做如下图修改(两者皆可)。

执行命令:

[root@localhost java]# vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app

在这里插入图片描述


(7)启动RabbitMQ

service rabbitmq-server start # 启动服务
service rabbitmq-server stop # 停止服务
service rabbitmq-server restart # 重启服务
rabbitmqctl list_queues	# 查看任务

(8)关闭Linux防火墙(或开放RabbitMQ相关端口)

RabbitMQ默认端口:
client端(Java)通信端口:5672
管理页面端口:15672
server间内部通信端口(集群):25672
erlang发现端口:4369

防火墙操作详见博文:Linux(Centos6.5、Centos7)下开放防火墙端口操作


(9)浏览器访问RabbitMQ管理界面

访问地址:http://192.168.116.161:15672

默认(超级管理员)账号:
用户名:guest
密码:guest

在这里插入图片描述

RabbitMQ管理主界面如下:

在这里插入图片描述

注:如上图,显示配置文件(Config file)不存在,后续解决。


(10)将Config file复制到RabbitMQ默认加载的目录

[root@localhost java]# cd /usr/share/doc/rabbitmq-server-3.6.5/
[root@localhost rabbitmq-server-3.6.5]# ll
总用量 200
-rw-r--r--. 1 root root 28945 85 2016 LICENSE
-rw-r--r--. 1 root root 11358 85 2016 LICENSE-APACHE2-ExplorerCanvas
-rw-r--r--. 1 root root 10175 85 2016 LICENSE-APL2-Rebar
-rw-r--r--. 1 root root 10851 85 2016 LICENSE-APL2-Stomp-Websocket
-rw-r--r--. 1 root root  1206 85 2016 LICENSE-BSD-base64js
-rw-r--r--. 1 root root  1304 85 2016 LICENSE-BSD-glMatrix
-rw-r--r--. 1 root root 14041 85 2016 LICENSE-EPL-OTP
-rw-r--r--. 1 root root  1087 85 2016 LICENSE-MIT-EJS10
-rw-r--r--. 1 root root  1069 85 2016 LICENSE-MIT-Flot
-rw-r--r--. 1 root root  1075 85 2016 LICENSE-MIT-jQuery164
-rw-r--r--. 1 root root  1087 331 2016 LICENSE-MIT-Mochi
-rw-r--r--. 1 root root  1087 85 2016 LICENSE-MIT-Mochiweb
-rw-r--r--. 1 root root  1076 85 2016 LICENSE-MIT-Sammy060
-rw-r--r--. 1 root root  1056 85 2016 LICENSE-MIT-SockJS
-rw-r--r--. 1 root root 16726 85 2016 LICENSE-MPL2
-rw-r--r--. 1 root root 24897 85 2016 LICENSE-MPL-RabbitMQ
-rw-r--r--. 1 root root 21023 411 2016 rabbitmq.config.example
-rw-r--r--. 1 root root   943 331 2016 README
-rw-r--r--. 1 root root   277 331 2016 set_rabbitmq_policy.sh.example
[root@localhost rabbitmq-server-3.6.5]# 
[root@localhost rabbitmq-server-3.6.5]# cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
[root@localhost rabbitmq-server-3.6.5]# 

重启RabbitMQ:

service rabbitmq-server start # 启动服务
service rabbitmq-server stop # 停止服务
service rabbitmq-server restart # 重启服务
rabbitmqctl list_queues	# 查看任务

刷新RabbitMQ管理主界面:

在这里插入图片描述

至此,RabbitMQ初步安装并访问完成!!!


2. RabbitMQ配置虚拟主机及用户

2.1. 创建用户并分配角色

在RabbitMQ管理界面,创建我们自己的用户(这里创建的用户名和密码均为:xiao),具体操作如下图:

说明: RabbitMQ默认提供的guest/guest的用户名和密码,我们这里不用。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fUnvQ0TE-1607777060951)(assets/1565098043833.png)]

角色说明

1、 超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
2、 监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
3、 策略制定者(policymaker)
可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
4、 普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
5、 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。


2.2. Virtual Hosts配置

RabbitMQ像mysql拥有数据库的概念并且可以指定用户对库和表等操作的权限。RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通(相当于mysql的db)。Virtual Name一般以/开头。

(1) 创建Virtual Hosts

在这里插入图片描述

(2)设置Virtual Hosts访问权限(授予用户)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0EHVdXR7-1607777060959)(assets/1565098585317.png)]

授予用户“xiao”以相关权限:
在这里插入图片描述
在这里插入图片描述


(3)重新进入“Admin”页签下查看Users信息

在这里插入图片描述

切换用户“xiao”,登录查看如下:
在这里插入图片描述

至此,RabbitMQ安装完成、虚拟主机与用户创建并分配权限完成!!!


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值