CentOS7 安装RabbitMq
参考------> https://www.cnblogs.com/liaojie970/p/6138278.html
https://www.cnblogs.com/dreasky/p/9146494.html
一、前期准备,下载安装包,(配置环境变量)
在安装RabbitMQ前我们要先安装erlang ,和Windows环境下类似,这里主要是通过命令全装,本文主要介绍的是erlang-19.0.4-1.el7.centos.x86_64.rpm,rabbitmq-server-3.6.6-1.el7.noarch.rpm版本的erlang和RabbitMq
1、下载erlang和rabbitmq-server的rpm:
http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm
http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm
PS:把下载的rpm文件都放到一个文件夹中,方便安装,我这里是将两个安装包放在了 /usr/local 目录下,如下:
2,首先我们要安装的是erlang,具体操作如下:
通过命令 --------> rpm -ivh erlang-19.0.4-1.el7.centos.x86_64.rpm
安装完成之后输入erl命令进行测试,erlang是否安装成功,安装成功会出现类似下图内容:
PS:这里在测试之前,根据自己安装的目录不同,可能需要配置环境变量,我这里是因为安装在系统默认的路径上,环境变量已经配好,所以不用再配置,如果需要配置环境变量,如下配置就可以:
# vim /etc/profile
在末尾加入以下内容:
#set erlang environment
export PAHT=$PATH:/usr/local/erlang/bin
再用命令:source /etc/profile 使环境变量生效
然后在用erl 测试是否出现Eshell 版本号,如上图,这样就安装完成了Erlang环境
3、接下来就要安装RabbitMQ的服务了,具体操作如下:
使用命令-----> rpm -ivh rabbitmq-server-3.6.6-1.el7.noarch.rpm 可能会遇到下面类似的问题
在安装rabbitmq时提示依赖socat
执行命令 ----> yum install socat
然后再次执行 rpm -ivh rabbitmq-server-3.6.6-1.el7.noarch.rpm 进行再次安装RabbitMq
安装完成之后,进行测试,是否安装成功,可以通过如下几个命令进行操作:
首先要找到sbin目录
/sbin/ service rabbitmq-server stop #关闭
/sbin/ service rabbitmq-server start #启动
/sbin/ service rabbitmq-server status #状态
然后cd /sbin/目录下
命令---> ./rabbitmq-plugins list 会显示如下图
使用命令----> ./rabbitmqctl status 会显示如下图内容:
PS: 运行如下的命令,增加用户admin,密码admin
[root@localhost sbin]# ./rabbitmqctl add_user admin admin
Creating user “admin” …
…done.
[root@localhost sbin]# ./rabbitmqctl set_user_tags admin administraotr
Setting tags for user “admin” to [administraotr] …
…done.
[root@localhost sbin]# ./rabbitmqctl list_users
Listing users …
admin [administraotr]
guest [administrator]
…done.
二、远程访问登录
1、 解决非本机访问的问题,guest登录不了。
在/etc/rabbitmq/rabbitmq.config增加以下内容
[{rabbit, [{loopback_users, []}]}].
2、用户权限,支持远程访问
当我们开启了服务之后,我们通过远程访问地址 http://192.168.1.35:15672/ 可以看到
这个时候你可能很高兴,以为成功了,但是你通过默认用户guest和密码guest登录时会发现,登录失败!
这个时候就需要有一个操作需要我们完成,就是用户权限问题,什么用户可以远程访问的问题
参考 -----> https://www.cnblogs.com/haoliansheng/p/5392860.html
rabbitmq出于安全的考虑,guest这个默认的用户只能通过http://localhost:15672 来登录,不能使用IP地址登录,也就是不能远程访问,这对于服务器上没有安装桌面的情况是无法管理维护的。
要解决这个问题需要配置远程登录权限,这里通过配置文件来实现远程访问。Linux 系统环境下,我们配置文件在%/rabbitmq_server-3.3.5%/etc/rabbitmq/rabbitmq.config.example
首先找到文件位置:
通过命令 : vi rabbitmq.config.example 进入文件,将下面代码修改或加进文件中保存
1 %% -*- mode: erlang -*- 2 %% ---------------------------------------------------------------------------- 3 %% RabbitMQ Sample Configuration File. 4 %% 5 %% See http://www.rabbitmq.com/configure.html for details. 6 %% ---------------------------------------------------------------------------- 7 [ 8 {rabbit, 9 [%% 10 %% Network Connectivity 11 %% ==================== 12 %% 13 14 %% By default, RabbitMQ will listen on all interfaces, using 15 %% the standard (reserved) AMQP port. 16 %% 17 {tcp_listeners, [5672]}, 18 {loopback_users, ["admin"]}, 19 …… 20 ]} 21 ].
然后就可以通过admin,进行登录访问了客户端了
下面演示一下关于在客户端页面进行的添加用户,分配权限的操作,不多说了直接上图演示如下:
是不是发现下图粉色框中的权限不同,这时候就要点击红色框中的 zhz11
这样对RabbitMq的用户赋权限问题就解决了!
PS:类似安装ERlang