首页主机资讯RabbitMQ在Ubuntu上的插件如何安装与使用

RabbitMQ在Ubuntu上的插件如何安装与使用

时间2025-11-03 10:49:03发布访客分类主机资讯浏览934
导读:一、安装RabbitMQ基础环境 安装Erlang:RabbitMQ依赖Erlang环境,需先通过以下命令安装:sudo apt-get update sudo apt-get install erlang-nox # 安装Erlang...

一、安装RabbitMQ基础环境

  1. 安装Erlang:RabbitMQ依赖Erlang环境,需先通过以下命令安装:
    sudo apt-get update
    sudo apt-get install erlang-nox  # 安装Erlang
    erl  # 验证安装(显示Erlang版本即成功)
    
  2. 安装RabbitMQ:通过APT仓库安装最新稳定版:
    sudo apt-get install rabbitmq-server  # 自动安装并启动服务
    sudo systemctl status rabbitmq-server  # 查看服务状态(Active: active即为运行中)
    

二、启用内置管理插件(Web界面) RabbitMQ默认内置rabbitmq_management插件,用于提供Web可视化监控:

sudo rabbitmq-plugins enable rabbitmq_management  # 启用插件
sudo systemctl restart rabbitmq-server  # 重启服务使插件生效

启用后,通过浏览器访问http://< 服务器IP> :15672,使用默认账号guest/guest登录(注:RabbitMQ 3.3+版本中,guest用户仅能本地访问,远程访问需创建新用户并授权)。

三、安装第三方扩展插件

  1. 查看现有插件列表
    rabbitmq-plugins list  # 显示已启用/禁用的插件
    
  2. 安装常用第三方插件
    • 延迟消息交换插件(支持消息延迟投递):
      # 1. 下载与RabbitMQ版本匹配的插件(如3.13.0版本)
      wget https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/v3.13.0/rabbitmq_delayed_message_exchange-3.13.0.ez
      # 2. 将插件复制到RabbitMQ插件目录
      sudo cp rabbitmq_delayed_message_exchange-3.13.0.ez /usr/lib/rabbitmq/lib/rabbitmq_server-*/plugins/
      # 3. 启用插件
      sudo rabbitmq-plugins enable rabbitmq_delayed_message_exchange
      
    • MQTT协议插件(支持MQTT协议接入):
      sudo rabbitmq-plugins enable rabbitmq_mqtt  # 启用MQTT插件
      sudo rabbitmq-plugins enable rabbitmq_web_mqtt  # 可选:启用Web MQTT接口
      

四、插件使用示例

  1. 延迟消息交换插件
    • 创建延迟交换机和队列:
      rabbitmqadmin declare exchange name=my_delayed_exchange type=x-delayed-message arguments='{
      "x-delayed-type":"direct"}
      '
      rabbitmqadmin declare queue name=my_delayed_queue
      rabbitmqadmin declare binding source=my_delayed_exchange destination=my_delayed_queue routing_key=my_key
      
    • 发送延迟消息(通过pika库实现):
      import pika
      import json
      
      connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
      channel = connection.channel()
      properties = pika.BasicProperties(headers={
      'x-delay': 5000}
      )  # 延迟5秒
      channel.basic_publish(
          exchange='my_delayed_exchange',
          routing_key='my_key',
          body=json.dumps({
      'message': 'Delayed message'}
          ),
          properties=properties
      )
      connection.close()
      
  2. MQTT插件
    • 使用MQTT客户端(如mosquitto_pub/mosquitto_sub)测试:
      # 订阅主题
      mosquitto_sub -h localhost -t "test/topic" -v
      # 发布消息
      mosquitto_pub -h localhost -t "test/topic" -m "Hello MQTT"
      

五、插件管理注意事项

  • 版本兼容性:插件必须与RabbitMQ版本严格匹配(如rabbitmq_delayed_message_exchange-3.13.0.ez对应RabbitMQ 3.13.0),否则无法启用。
  • 插件目录:默认插件目录为/usr/lib/rabbitmq/lib/rabbitmq_server-*/plugins/*为版本号),第三方插件需复制至此目录。
  • 启用/禁用命令:使用rabbitmq-plugins enable < 插件名> 启用,rabbitmq-plugins disable < 插件名> 禁用(无需版本号和.ez后缀)。
  • 重启服务:修改插件配置或启用/禁用插件后,需重启RabbitMQ服务使变更生效:
    sudo systemctl restart rabbitmq-server
    

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: RabbitMQ在Ubuntu上的插件如何安装与使用
本文地址: https://pptw.com/jishu/740597.html
Ubuntu RabbitMQ如何进行消息路由设置 Ubuntu RabbitMQ如何监控与日志管理

游客 回复需填写必要信息