1、查看系统的版本,从而选择相应的RabbitMQ版本。
lsb_release -a
如果报错lsb_release 命令无法使用则先使用yum install lsb
登陆RabbitMQ官网http://www.rabbitmq.com/install-rpm.html#install-from-esl-repository 根据相应系统版本选择需要的版本
我使用的系统版本是CentOS Linux release 7.2.1511 (Core) 所以我选择下载链接为https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.5/rabbitmq-server-3.7.5-1.el7.noarch.rpm 这个版本。
2、使用wget
完整命令 wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.5/rabbitmq-server-3.7.5-1.el7.noarch.rpm
3、在以往安装RabbitMQ之前都得先安装erlang,但是现在可以直接使用命令 yum -y install rabbitmq-server-3.7.5-1.el7.noarch.rpm
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm&&yum -y install epel-release&&rpm -Uvh erlang-solutions-1.0-1.noarch.rpm&&yum -y install rabbitmq-server-3.7.5-1.el7.noarch.rpm
4、RabbitMQ默认安装后不是使用后台守护进程启动,也不是随系统启动的,需要用root的权限执行 sudo chkconfig rabbitmq-server on
5、运行RabbitMQ需要首先开放15672和5672端口【Centos升级到7之后,发现无法使用iptables控制Linuxs的端口,Centos 7使用firewall-cmd代替了原来的iptables】
systemctl start firewalld,查看防火墙启动状态 systemctl status firewalld
(2)开放给外部访问15672端口 firewall-cmd --zone=public --add-port=15672/tcp --permanent 然后执行 firewall-cmd --reload
PS:如果也需要开放5672端口给外部应用使用 则需要 执行 firewall-cmd --zone=public --add-port=5672/tcp --permanent 开启端口
6、启动RabbitMQ服务 sudo /sbin/service rabbitmq-server start
可以使用命令 rabbitmqctl status
7、启动插件功能 sudo /sbin/rabbitmq-plugins enable rabbitmq_management
8、可以使用命令rabbitmqctl list_users
但是guest用户只可以在本机通过localhost的方式访问,如果要通过别的机器登陆web访问就得新加一个用户并且授权。新加一个用户可以使用命令rabbitmqctl add_user admin StrongPassword(其中admin 是用户名,StrongPassword是密码)
通过命令给用户增加角色权限 rabbitmqctl set_user_tags qredb administrator
通过命令给用户增加所有访问权限 rabbitmqctl set_permissions -p "/" qredb '.*' '.*' '.*'
到此就可以通过http://<IP>:15672/访问RabbitMQ了。
9、一些简单的管理命令
(1) 新增一个用户 rabbitmqctl add_user Username Password
(2) 删除一个用户 rabbitmqctl delete_user Username
(3) 修改用户的密码 rabbitmqctl change_password Username Newpassword
(4) 查看当前用户列表 rabbitmqctl list_users
10、CentOS 7 防火墙配置命令参考