当前位置: 首页 > ai >正文

RabbitMQ 开机启动配置教程

RabbitMQ 开机启动配置教程

在本教程中,我们将详细介绍如何配置 RabbitMQ 以实现开机自动启动。此配置适用于手动安装的 RabbitMQ 版本。

环境准备

  • 操作系统:CentOS 7
  • RabbitMQ 版本:3.8.4
  • Erlang 版本:21.3

步骤

1. 安装 Erlang

  1. 安装依赖

    sudo yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget socat
    
  2. 下载 Erlang

    wget http://erlang.org/download/otp_src_21.3.tar.gz
    
  3. 解压并编译安装

    tar -xvf otp_src_21.3.tar.gz
    cd otp_src_21.3
    ./configure --prefix=/usr/local/erlang
    make && make install
    
  4. 配置环境变量
    编辑 /etc/profile 文件,添加以下内容:

    export PATH=$PATH:/usr/local/erlang/bin
    

    使配置生效:

    source /etc/profile
    
  5. 验证安装

    erl -version
    

2. 安装 RabbitMQ

  1. 下载 RabbitMQ

    wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.4/rabbitmq-server-generic-unix-3.8.4.tar.xz
    
  2. 解压

    xz -d rabbitmq-server-generic-unix-3.8.4.tar.xz
    tar -xvf rabbitmq-server-generic-unix-3.8.4.tar
    
  3. 配置环境变量
    编辑 /etc/profile 文件,添加以下内容:

    export PATH=$PATH:/usr/local/rabbitmq_server-3.8.4/sbin
    

    使配置生效:

    source /etc/profile
    

3. 配置 RabbitMQ 环境文件

  1. 编辑 rabbitmq-env 文件

    sudo vi /usr/local/rabbitmq/rabbitmq_server-3.8.4/sbin/rabbitmq-env
    
  2. 添加 Erlang 路径
    在文件中添加 Erlang 的路径:

    export PATH=$PATH:/usr/local/erlang/bin
    

4. 创建 RabbitMQ 服务文件

  1. 创建服务文件

    sudo vi /etc/systemd/system/rabbitmq.service
    
  2. 添加以下内容

    [Unit]
    Description=RabbitMQ Server
    Documentation=https://www.rabbitmq.com/docs.html
    After=network.target[Service]
    Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/erlang/bin"
    User=rabbitmq
    Group=rabbitmq
    Type=notify
    ExecStart=/usr/local/rabbitmq/rabbitmq_server-3.8.4/sbin/rabbitmq-server
    ExecStop=/usr/local/rabbitmq/rabbitmq_server-3.8.4/sbin/rabbitmqctl stop
    Restart=on-failure
    LimitNOFILE=65536[Install]
    WantedBy=multi-user.target
    

5. 配置开机启动

  1. 加载服务文件

    sudo systemctl daemon-reload
    
  2. 启用开机启动

    sudo systemctl enable rabbitmq.service
    
  3. 立即启动服务

    sudo systemctl start rabbitmq.service
    
  4. 查看服务状态

    sudo systemctl status rabbitmq.service
    

6. 验证配置

  1. 验证 RabbitMQ 状态

    sudo /usr/local/rabbitmq/rabbitmq_server-3.8.4/sbin/rabbitmqctl status
    
  2. 验证管理插件

    sudo /usr/local/rabbitmq/rabbitmq_server-3.8.4/sbin/rabbitmq-plugins enable rabbitmq_management
    
  3. 访问管理界面
    通过浏览器访问 http://<服务器IP>:15672,使用管理员账户登录。

7. 查看服务日志

如果服务启动失败,可以使用以下命令查看详细日志:

journalctl -u rabbitmq.service -l

此命令将显示 RabbitMQ 服务的详细日志,帮助你排查问题。

8. 检查端口冲突和防火墙设置

  1. 检查端口占用
    确保 RabbitMQ 使用的端口(默认是 567215672)未被其他服务占用:

    sudo netstat -tuln | grep 5672
    sudo netstat -tuln | grep 15672
    
  2. 查看占用端口的进程
    如果发现端口被占用,可以使用以下命令找出占用端口的进程:

    sudo lsof -i :5672
    sudo lsof -i :15672
    
  3. 停止占用端口的进程
    如果确认该进程不是必需的,可以停止它:

    sudo kill -9 <PID>
    

    替换 <PID> 为实际的进程 ID。

  4. 配置防火墙
    确保防火墙允许访问 RabbitMQ 的端口:

    sudo firewall-cmd --zone=public --add-port=5672/tcp --permanent
    sudo firewall-cmd --zone=public --add-port=15672/tcp --permanent
    sudo firewall-cmd --reload
    

注意事项

  • 用户和组:确保创建了 rabbitmq 用户和组,并且服务文件中指定的用户和组存在。
  • 权限:确保 RabbitMQ 的安装目录和文件有正确的权限。
  • 防火墙设置:确保防火墙允许访问 RabbitMQ 的端口(默认是 567215672)。

通过以上步骤,您可以成功配置 RabbitMQ 开机自动启动,并能够有效地管理和排查服务问题。

http://www.xdnf.cn/news/11752.html

相关文章:

  • 前端判断内容文字是否溢出容器,创建临时元素来模拟文本实际宽度
  • JavaWeb:前后端分离开发-部门管理
  • 第四十二天打卡
  • [特殊字符] 革命性AI提示词优化平台正式开源!
  • sylar--线程模块
  • 电网“逆流”怎么办?如何实现分布式光伏发电全部自发自用?
  • 无监督学习-Complete Guide (较长)
  • yum更换阿里云的镜像源
  • 十六、【前端强化篇】完善 TestCase 编辑器:支持 API 结构化定义与断言配置
  • 极客大挑战 2019 EasySQL 1(万能账号密码,SQL注入,HackBar)
  • c++ stl常用算法
  • Seata 分布式事务 XA 模式
  • iTunes 无法备份 iPhone:10 种解决方法
  • [Java 基础]对象,膜具倒出来的
  • Python训练第四十四天
  • Ubuntu24.04 交叉编译 aarch64 ffmpeg
  • 多分辨率 LCD 的 GUI 架构设计与实现
  • AI基础知识(LLM、prompt、rag、embedding、rerank、mcp、agent、多模态)
  • 【Qt开发】文件
  • 【Linux仓库】冯诺依曼体系结构与操作系统【进程·壹】
  • 一台电脑联网如何共享另一台电脑?网线方式
  • Mermaid 绘图--以企业权限视图为例
  • 【后端开发】goland分布式锁的几种实现方式(mysql,redis,etcd,zookeeper,mq,s3)
  • WordPress子主题RiPro-V5van无授权全开源版(源码下载)
  • 实践篇:利用ragas在自己RAG上实现LLM评估②
  • 【Pandas】pandas DataFrame sample
  • sql server如何创建表导入excel的数据
  • 虚拟斯德哥尔摩症候群:用户为何为缺陷AI辩护?
  • 搭建强化推荐的决策服务架构
  • 【深度学习优化算法】02:凸性