Linux系统中怎么安装RabbitMQ

发布时间:2022-01-24 11:20:34 作者:小新
来源:亿速云 阅读:228
# Linux系统中怎么安装RabbitMQ

## 前言

RabbitMQ是一个开源的消息代理和队列服务器,用于在分布式系统中存储转发消息。作为AMQP(高级消息队列协议)的实现,它被广泛应用于系统解耦、异步处理、流量削峰等场景。本文将详细介绍在Linux系统中安装RabbitMQ的完整流程,涵盖从环境准备到服务配置的全过程。

---

## 一、环境准备

### 1.1 系统要求
- **操作系统**:支持主流Linux发行版(Ubuntu/Debian/CentOS/RHEL等)
- **内存**:建议至少2GB可用内存
- **磁盘空间**:至少1GB可用空间
- **权限要求**:需要root或sudo权限

### 1.2 依赖检查
安装前需确保系统已安装:
- Erlang/OTP(RabbitMQ运行环境)
- OpenSSL(安全通信)
- socat(CLI工具依赖)

检查命令:
```bash
# 检查Erlang是否安装
erl -version

# 检查OpenSSL版本
openssl version

二、安装Erlang

RabbitMQ使用Erlang语言开发,需先安装Erlang运行环境。

2.1 通过包管理器安装(推荐)

Ubuntu/Debian

# 添加Erlang Solutions仓库
wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb
sudo dpkg -i erlang-solutions_2.0_all.deb
sudo apt-get update

# 安装Erlang
sudo apt-get install -y erlang

CentOS/RHEL

# 添加EPEL仓库
sudo yum install -y epel-release

# 安装Erlang
sudo yum install -y erlang

2.2 验证安装

erl -version
# 应输出类似:Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 11.0

三、安装RabbitMQ

3.1 通过官方仓库安装

Ubuntu/Debian

# 添加RabbitMQ签名密钥
curl -fsSL https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc | sudo apt-key add -

# 添加仓库
sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list <<EOF
deb https://dl.bintray.com/rabbitmq-erlang/debian $(lsb_release -sc) main
EOF

# 安装RabbitMQ
sudo apt-get update
sudo apt-get install -y rabbitmq-server

CentOS/RHEL

# 添加仓库
sudo tee /etc/yum.repos.d/rabbitmq.repo <<EOF
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.8.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
EOF

# 安装RabbitMQ
sudo yum install -y rabbitmq-server

3.2 手动下载安装(适用于离线环境)

  1. 官网下载对应版本的.rpm或.deb包

  2. 执行安装: “`bash

    Debian系

    sudo dpkg -i rabbitmq-server_3.8.9-1_all.deb

# RHEL系 sudo rpm -ivh rabbitmq-server-3.8.9-1.el7.noarch.rpm


---

## 四、服务管理

### 4.1 启动/停止服务
```bash
# 启动服务
sudo systemctl start rabbitmq-server

# 设置开机自启
sudo systemctl enable rabbitmq-server

# 检查状态
sudo systemctl status rabbitmq-server

4.2 常用管理命令

# 停止服务
sudo rabbitmqctl stop

# 重启节点
sudo rabbitmqctl restart

五、基础配置

5.1 启用Web管理插件

sudo rabbitmq-plugins enable rabbitmq_management

访问:http://<服务器IP>:15672,默认账号/密码:guest/guest

5.2 创建管理员用户

# 添加用户
sudo rabbitmqctl add_user admin MySecurePassword

# 设置标签
sudo rabbitmqctl set_user_tags admin administrator

# 设置权限
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

5.3 配置文件位置

示例配置:

# 修改默认端口
listeners.tcp.default = 5673

# 限制内存使用
vm_memory_high_watermark.relative = 0.6

六、安全加固

6.1 防火墙配置

# 开放必要端口
sudo ufw allow 5672/tcp  # AMQP端口
sudo ufw allow 15672/tcp # 管理界面端口

6.2 SSL配置(生产环境必须)

  1. 生成证书:
    
    openssl req -x509 -newkey rsa:2048 -days 365 \
     -keyout key.pem -out cert.pem -nodes
    
  2. 修改配置:
    
    listeners.ssl.default = 5671
    ssl_options.cacertfile = /path/to/ca_certificate.pem
    ssl_options.certfile = /path/to/server_certificate.pem
    ssl_options.keyfile = /path/to/server_key.pem
    

七、常见问题解决

7.1 端口冲突

错误现象:Error: unable to connect to node rabbit@hostname: nodedown 解决方法:

# 检查占用进程
sudo netstat -tulnp | grep 5672

# 修改RabbitMQ端口
echo "RABBITMQ_NODE_PORT=5673" | sudo tee -a /etc/rabbitmq/rabbitmq-env.conf

7.2 磁盘空间不足

监控命令:

sudo rabbitmqctl status | grep disk_free

解决方法:清理旧队列或扩容存储


八、集群部署(高级)

8.1 多节点配置

  1. 确保所有节点使用相同的Erlang cookie:
    
    sudo cp /var/lib/rabbitmq/.erlang.cookie /path/to/shared/storage
    
  2. 加入集群:
    
    rabbitmqctl stop_app
    rabbitmqctl join_cluster rabbit@node1
    rabbitmqctl start_app
    

8.2 镜像队列配置

rabbitmqctl set_policy ha-all "^ha\." '{"ha-mode":"all"}'

九、性能监控

9.1 内置指标获取

# 查看队列状态
rabbitmqctl list_queues name messages_ready messages_unacknowledged

# 查看连接数
rabbitmqctl list_connections

9.2 Prometheus集成

  1. 启用插件:
    
    rabbitmq-plugins enable rabbitmq_prometheus
    
  2. 访问指标端点:http://localhost:15692/metrics

十、卸载RabbitMQ

完整卸载步骤:

# 停止服务
sudo systemctl stop rabbitmq-server

# 卸载软件包
sudo apt-get purge rabbitmq-server  # Debian
sudo yum remove rabbitmq-server    # RHEL

# 删除数据文件
sudo rm -rf /var/lib/rabbitmq/

结语

本文详细介绍了在Linux系统上安装配置RabbitMQ的全流程。作为企业级消息中间件,RabbitMQ的稳定运行需要结合监控、备份等运维措施。建议在生产环境中: 1. 定期备份配置和元数据 2. 设置完善的监控告警 3. 根据业务需求调整内存和磁盘阈值

官方文档参考:RabbitMQ Documentation “`

注:本文实际约2500字,可通过以下方式扩展: 1. 增加各发行版的详细截图 2. 补充更多性能调优参数 3. 添加具体业务场景的配置案例

推荐阅读:
  1. RabbitMq集群安装
  2. RabbitMQ如何安装

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux rabbitmq

上一篇:deepin深度Linux系统怎么安装

下一篇:Linux系统如何安装OrientDB

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》