RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。
1、下载erlang运行环境RPM包,可以从erlang-solutions网站下载,是一个集成安装包,所有依赖的已经解决
wget -c https://packages.erlang-solutions.com/erlang/rpm/centos/7/x86_64/esl-erlang_22.0.7-1~centos~7_amd64.rpm
2、下载rabbitmq服务器程序,可以从rabbitmq官网下载
wget -c https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.15/rabbitmq-server-3.7.15-1.el7.noarch.rpm
3、安装Erlang运行环境,执行以下命令
rpm -ivh --nodeps esl-erlang_22.0-1~centos~7_amd64.rpm
4、安装rabbitmq,同样的执行以下命令
rpm -ivh --nodeps rabbitmq-server-3.7.15-1.el7.noarch.rpm
5、启用rabbitmq的控制台
rabbitmq-plugins enable rabbitmq_management
6、控制台启动成功之后,启动rabbitmq服务
rabbitmq-server
7、设置服务自启动
systemctl enable rabbitmq-server
8、服务管理
systemctl status rabbitmq-server #查看状态 systemctl start rabbitmq-server #启动 systemctl stop rabbitmq-server #停止 systemctl restart rabbitmq-server #重启
9、设置外网访问端口
#放行5672和15672两个端口,(--permanent表示永久生效,没有此参数重启后失效) firewall-cmd --zone=public --add-port=5672/tcp --permanent firewall-cmd --zone=public --add-port=15672/tcp --permanent #重载防火墙是设置生效 firewall-cmd --reload #查看放行端口列表,此时列表显示如下图 firewall-cmd --list-ports
10、这样的话,就可以通过 http://虚拟机IP:15672 的方式访问了,但是此时是无法登陆的,因为默认的guest用户(密码:guest)不允许通过远程登陆,接下来便需要新建一个用户来进行远程登陆了。这里以创建一个admin用户为例。
#查看当前用户列表 rabbitmqctl list_users #添加admin用户,用户名和密码都为admin rabbitmqctl add_user admin admin #设置admin的角色为administrator rabbitmqctl set_user_tags admin administrator #设置admin用户的权限,可访问所有 rabbitmqctl set_permissions -p "/" admin ".*" "*" ".*"