环境准备
CentOS7
- 在 http://www.rabbitmq.com/which-erlang.html 页面查看安装rabbitmq需要安装erlang对应的
版本 - 在https://github.com/rabbitmq/erlang-rpm/releases 页面找到需要下载的erlang版本
- RabbitMQ官网https://www.rabbitmq.com/download.htm
历史版本https://github.com/rabbitmq/rabbitmq-server/tags
安装Erlang
下载Erlang
wget -P /usr/download https://github.com/rabbitmq/erlangrpm/releases/download/v21.2.3/erlang-23.3.3-1.el7.x86_64.rpm.rpm
安装Erlang
sudo rpm -Uvh /usr/download/erlang-23.3.3-1.el7.x86_64.rpm
安装socat
下载socat
wget http://www.dest-unreach.org/socat/download/socat-1.7.2.4.tar.gz
解压后,进入主目录,执行
make install
安装RabbitMQ
下载
wget -P /usr/download https://github.com/rabbitmq/rabbitmqserver/releases/download/v3.7.9/rabbitmq-server-3.7.9-1.el7.noarch.rpm
安装
sudo rpm -Uvh /usr/download/rabbitmq-server-3.8.15-1.el7.noarch.rpm
RabbitMQ服务指令
查看状态
sudo systemctl status rabbitmq-server
启动服务
sudo systemctl start rabbitmq-server
停止服务
sudo systemctl stop rabbitmq-server
设置开机启动
sudo systemctl enable rabbitmq-server
开启Web管理插件
- 开启插件
rabbitmq-plugins enable rabbitmq_management
- 添加用户
说明:RabbitMQ有个一默认的guest用户,该用户只能通过localhost访问,所以需要添加一个能够远程访问的用户。
rabbitmqctl add_user admin admin
添加成功后,控制台会出现以下信息:
Adding user "admin" ...
Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more.
3.为用户分配操作权限
rabbitmqctl set_user_tags admin administrator
4.为用户分配资源权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
完成到现在,是不能进行外部通信的。
防火墙添加端口
1.添加端口
sudo firewall-cmd --zone=public --add-port=4369/tcp --permanent
sudo firewall-cmd --zone=public --add-port=5672/tcp --permanent
sudo firewall-cmd --zone=public --add-port=25672/tcp --permanent
sudo firewall-cmd --zone=public --add-port=15672/tcp --permanent
2.重启防火墙
firewall-cmd --reload
错误解决
安装Erlang Solution
下载 Erlang Solution
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
安装 Erlang Solution
sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
[root@localhost ~]# sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
错误:依赖检测失败:
epel-release 被 erlang-solutions-1.0-1.noarch 需要
需要安装epel-release
https://dl.fedoraproject.org/pub/epel/
下载 rpm文件。
注意:Erlang 与 RabbitMQ 有版本匹配
执行
sudo rpm -Uvh epel-release*rpm