最近项目需要安装一个RabbitMQ环境,RabbitMQ 网站上的文档质量一般,按照Installing on Debian and Ubuntu 文档做了一次不成功。
后来折腾一番后,终于成功了,下面把步骤记录下来给大家参考。
1. 安装Erlang
RabbitMQ 是使用Erlang 开发的,安装RabbitMQ 前,需要先把Erlang 环境安装好。
1.1. 导入Erlang GPG 密钥
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
1.2 向系统加入Erlang仓库记录
echo "deb https://packages.erlang-solutions.com/ubuntu bionic contrib" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
1.3 安装Erlang
sudo apt update
sudo apt -y install erlang
注:跳过1.1和1.2,直接执行1.3 的话,会安装一个比较旧的erlang 版本,导致安装RabbitMQ 时失败
2. 安装RabbitMQ
2.1 导入RabbitMQ 密钥
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc | sudo apt-key add -
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
2.2 向系统加入RabbitMQ仓库记录
echo "deb https://dl.bintray.com/rabbitmq/debian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
2.3 安装RabbitMQ
sudo apt update
sudo apt -y install rabbitmq-server
2.4 检查RabbitMQ 运行状态
安装完成后,使用下面命令检查RabbltMQ 已经正常运行
sudo systemctl is-enabled rabbitmq-server.service
2.5 安装Web管理台
sudo rabbitmq-plugins enable rabbitmq_management
3. 配置RabbitMQ
3.1 开放防火墙端口
sudo ufw allow proto tcp from any to any port 5672,15672
3.2 添加用户
安装完成后缺省的用户是guest,缺省密码是guest, 可以用下面的命令设置新的管理员账号及密码
sudo rabbitmqctl add_user admin
rabbitmqctl set_user_tags admin administrator
3.3 设置Web管理台可以远程登陆(可选)
缺省情况下。Web管理台只可以在localhost上访问,如需要在其它机器上访问,可以按下面步骤修改:
- 用文本编辑器(比如vi)打开 /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.2/ebin/rabbit.app 文件,并找到下面的记录
{loopback_users, [<<"guest">>]},
- 将其中的<<"guest">> 删除掉,修改后如下
{loopback_users, []},
3.保存退出文本编辑器
4.使用下面命令重启RabbitMQ服务
sudo systemctl restart rabbitmq-server.service
完成上述的配置后,mq可以投入使用。登陆http://your-mq-server:15672 ,用3.2中定义的账号密码登陆,可使用RabbitMQ的管理台。