欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[CentOS7环境搭建](七)安装RabbitMQ

程序员文章站 2024-01-27 14:09:34
...

参考链接https://blog.csdn.net/qq_22075041/article/details/78855708

安装Erlang

因为RabbitMQ是以Erlang语言编写的,所以我们首先需要安装Erlang

  1. 访问官网:http://www.erlang.org/downloads
  2. 下载源码包,如下所示:
    [CentOS7环境搭建](七)安装RabbitMQ
  3. 使用WinSCP上传到CentOS7服务器上的/usr/local目录
  4. 执行以下命令
yum install ncurses-devel
cd /usr/local
tar xf opt_src_20.3.tar.gz
cd otp_src_20.3
./configure --prefix=/usr/local/erlang20 --without-javac
make
make install
//检查是否安装成功
/usr/local/erlang20/bin
./erl  //进入命令行说明安装成功

安装RabbitMQ

1.解压安装包

xz -d rabbitmq-server-generic-unix-3.7.5.tar.xz
tar xf rabbitmq-server-generic-unix-3.7.5.tar

2.安装依赖

yum install python -y
yum install xmlto -y
yum install python-simplejson -y

3 . 将RabbitMQ文件夹重命名为rabbitmq
4 . 编辑环境变量 vi /etc/profile

export PATH=$PATH:/usr/local/erlang20/bin:/usr/local/rabbitmq/sbin

5 . 使环境变量生效:source /etc/profile

运行RabbitMQ

  • 启动RabbitMQ
cd /usr/local/rabbitmq/sbin
./rabbitmq-server

也可以直接执行rabbitmq-server,因为我们配置了环境变量。
如下图所示,表示RabbitMQ已经启动成功。
[CentOS7环境搭建](七)安装RabbitMQ

  • 关闭RabbitMQ
./rabbitmqctl stop

RabbitMQ的一些基本操作

$ sudo chkconfig rabbitmq-server on  # 添加开机启动RabbitMQ服务
$ sudo /sbin/service rabbitmq-server start # 启动服务
$ sudo /sbin/service rabbitmq-server status  # 查看服务状态
$ sudo /sbin/service rabbitmq-server stop   # 停止服务

# 查看当前所有用户
$ sudo rabbitmqctl list_users

# 查看默认guest用户的权限
$ sudo rabbitmqctl list_user_permissions guest

# 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
$ sudo rabbitmqctl delete_user guest

# 添加新用户
$ sudo rabbitmqctl add_user username password

# 设置用户tag
$ sudo rabbitmqctl set_user_tags username administrator

# 赋予用户默认vhost的全部操作权限
$ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"

# 查看用户的权限
$ sudo rabbitmqctl list_user_permissions username

更多关于rabbitmqctl的使用,可以参考帮助手册。

开启web管理接口

如果只从命令行操作RabbitMQ,多少有点不方便。幸好RabbitMQ自带了web管理界面,只需要启动插件便可以使用。

$ sudo rabbitmq-plugins enable rabbitmq_management

然后通过浏览器访问

http://localhost:15672

输入用户名和密码访问web管理界面了(guest,guest)。
[CentOS7环境搭建](七)安装RabbitMQ

开启用户远程访问

默认情况下,RabbitMQ的默认的guest用户只允许本机访问,否则会报错:登录rabbitmq报错User can only log in via localhost 。如果想让guest用户能够远程访问的话,只需要将/rabbitmq/etc/rabbitmq/rabbitmq.conf配置文件中的loopback_users列表置为空即可,如下:

{loopback_users, []}

如果没有该配置文件,则新建一个:

vi rabbitmq.config

编辑内容如下:

[{rabbit, [{loopback_users, []}]}].

这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。

保存配置后重启服务:

service rabbitmq-server stop
service rabbitmq-server start

另外关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许admin用户本机访问。

{loopback_users, ["admin"]}

更新配置后,别忘了重启服务哦!

开放端口5672和15672端口

个人学习的话,建议直接关闭防火墙。

/sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT  
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 

登录后出现下图,表示完美成功。
[CentOS7环境搭建](七)安装RabbitMQ