在 Ubuntu 下安装与管理 RabbitMQ(保姆级教程)
RabbitMQ 是一个开源的消息代理,它支持 AMQP(高级消息队列协议),并且广泛应用于企业级的分布式系统中。RabbitMQ 在 Ubuntu 上的安装和管理并不复杂,只需遵循一些步骤即可。
一、准备工作
- 操作系统要求:
- 本教程适用于 Ubuntu 20.04 或更高版本,确保你的 Ubuntu 系统已经安装并正常运行。
- 确保系统更新:
- 在安装 RabbitMQ 前,首先要确保你的系统是最新的。使用以下命令进行系统更新:
sudo apt update sudo apt upgrade -y
- 在安装 RabbitMQ 前,首先要确保你的系统是最新的。使用以下命令进行系统更新:
二、安装 RabbitMQ
1. 安装 Erlang(RabbitMQ 依赖)
RabbitMQ 是使用 Erlang 编写的,因此我们首先需要安装 Erlang。
- 添加 Erlang 的官方仓库:RabbitMQ 官方推荐使用 Erlang 官方提供的包来安装,首先你需要安装 Erlang 的仓库。
sudo apt install -y gnupg
- 下载并添加 Erlang 仓库密钥:
wget -qO - https://packages.erlang-solutions.com/debian/erlang-solutions_2.0_all.deb > erlang-solutions_2.0_all.deb sudo dpkg -i erlang-solutions_2.0_all.deb
- 更新 APT 索引:
sudo apt update
- 安装 Erlang:
sudo apt install -y erlang
安装完成后,验证 Erlang 是否成功安装:erl
如果进入 Erlang shell,则安装成功。
2. 安装 RabbitMQ
- 添加 RabbitMQ 的官方仓库:现在,我们需要添加 RabbitMQ 的官方源。首先安装
curl
(如果没有安装):sudo apt install -y curl
- 下载并安装 RabbitMQ 的公共密钥:
wget -qO - https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/gpg.7C4E2156E4A19E2D.asc | sudo tee /etc/apt/trusted.gpg.d/rabbitmq.asc
- 添加 RabbitMQ 仓库:
sudo sh -c 'echo "deb https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu focal main" > /etc/apt/sources.list.d/rabbitmq.list'
- 更新 APT 索引并安装 RabbitMQ:
sudo apt update sudo apt install rabbitmq-server -y
- 启用并启动 RabbitMQ 服务:安装完成后,启用 RabbitMQ 服务并启动:
sudo systemctl enable rabbitmq-server sudo systemctl start rabbitmq-server
- 检查 RabbitMQ 服务状态:确保 RabbitMQ 服务正在运行:
sudo systemctl status rabbitmq-server
如果看到active (running)
状态,说明 RabbitMQ 已成功启动。
三、管理 RabbitMQ
1. 启动、停止和重启 RabbitMQ 服务
- 启动服务:
sudo systemctl start rabbitmq-server
- 停止服务:
sudo systemctl stop rabbitmq-server
- 重启服务:
sudo systemctl restart rabbitmq-server
2. 检查 RabbitMQ 状态
- 查看 RabbitMQ 服务状态:
sudo systemctl status rabbitmq-server
- 查看 RabbitMQ 进程:
ps aux | grep rabbitmq
3. 启用 RabbitMQ 管理插件
RabbitMQ 提供了一个 Web 管理界面,方便用户监控和管理 RabbitMQ 服务。你可以通过以下命令启用该插件:
sudo rabbitmq-plugins enable rabbitmq_management
启用后,RabbitMQ 管理界面可以通过浏览器访问:
http://localhost:15672/
默认的用户名和密码是:
- 用户名:
guest
- 密码:
guest
你可以通过 Web 界面查看 RabbitMQ 的队列、交换机、绑定和消费者等信息。
4. 创建用户和权限管理
- 添加新用户:
sudo rabbitmqctl add_user your_username your_password
- 赋予管理员权限:
sudo rabbitmqctl set_user_tags your_username administrator
- 给用户分配虚拟主机(vhost)权限:
sudo rabbitmqctl set_permissions -p / your_username ".*" ".*" ".*"
- 删除用户:
sudo rabbitmqctl delete_user your_username
- 列出所有用户:
sudo rabbitmqctl list_users
四、配置 RabbitMQ
RabbitMQ 支持通过修改配置文件进行进一步的配置。配置文件的路径通常位于 /etc/rabbitmq/rabbitmq.conf
,如果文件不存在,你可以创建一个。
sudo nano /etc/rabbitmq/rabbitmq.conf
常用配置项:
- 设置端口:修改 RabbitMQ 监听端口(默认 5672)。
- 启用 SSL:可以在配置文件中启用 SSL 以支持加密连接。
示例配置:
listeners.tcp.default = 5672
management.tcp.port = 15672
保存并退出后,重启 RabbitMQ 服务来使配置生效:
sudo systemctl restart rabbitmq-server
五、卸载 RabbitMQ
如果你决定卸载 RabbitMQ,可以按照以下步骤操作:
- 停止 RabbitMQ 服务:
sudo systemctl stop rabbitmq-server
- 卸载 RabbitMQ:
sudo apt remove --purge rabbitmq-server -y
- 删除 RabbitMQ 数据和配置文件:
sudo rm -rf /var/lib/rabbitmq/ sudo rm -rf /etc/rabbitmq/
- 卸载 Erlang(如果不需要):
sudo apt remove --purge erlang*
六、总结
- 安装 Erlang 和 RabbitMQ:通过添加官方仓库和密钥,安装 RabbitMQ 依赖的 Erlang 和 RabbitMQ 本身。
- 启用 Web 管理插件:使用
rabbitmq-plugins enable rabbitmq_management
启用 Web 管理界面,方便通过浏览器监控 RabbitMQ。 - 用户和权限管理:通过命令行工具管理用户、权限和虚拟主机。
- 配置 RabbitMQ:可以通过修改
rabbitmq.conf
配置文件来进一步定制 RabbitMQ 的行为。 - 卸载 RabbitMQ:在需要时,可以彻底卸载 RabbitMQ 和 Erlang。
通过这些步骤,你已经成功安装、配置并管理了 RabbitMQ。
发表回复