EMQX Cluster 配置说明

集群概览

本文档描述了如何根据单节点和多节点的配置部署 EMQX 集群。本文档适用于两种场景:

  • 单节点配置:适用于测试或小规模部署,在目录 [single_node] 中包含所有必要的配置和证书。
  • 多节点配置:适用于集群部署,在目录 [multi_node] 中提供多个节点的配置示例,每个节点拥有独立的配置文件和 Docker Compose 配置。

单节点配置

单节点部署的相关文件位于目录 single_node,主要文件包括:

  • docker-compose.yamlDocker Compose 部署文件,用于启动 EMQX 及其依赖服务。
  • nginx.confNginx 负载均衡配置,可选用于反向代理。
  • api_key.confAPI 密钥配置文件。
  • certs/:存放 SSL/TLS 证书文件,包含:
    • cacert.pem
    • cert.pem
    • client-cert.pem
    • client-key.pem
    • key.pem

部署步骤

  1. 进入 single_node 目录:
    cd single_node
    
  2. 根据需要检查并修改配置文件(如 API 密钥、证书等)。
  3. 使用 Docker Compose 启动服务:
    docker-compose up -d
    
  4. 如使用 Nginx 提供反向代理,确保 nginx.conf 中的配置与实际环境匹配。

多节点配置

多节点部署适用于 EMQX 集群环境,相关配置位于目录 multi_node,包含以下内容:

  • nginx.conf:用于集群中负载均衡和反向代理的 Nginx 配置。
  • 子目录分别对应各个节点配置,目前包含:
    • node20.50/
      • docker-compose.yaml
      • api_key.conf
    • node20.220/
      • docker-compose.yaml
      • api_key.conf
    • node22.85/
      • docker-compose.yaml
      • api_key.conf

部署步骤

  1. 检查各节点目录下的配置文件,确保 API 密钥、证书路径等配置正确。
  2. 对于每个节点,进入相应的目录并启动服务,例如:
    cd multi_node/node20.50
    docker-compose up -d
    
    对其他节点重复上述步骤。
  3. 部署完各节点服务后,如使用 Nginx 执行负载均衡,请确保 multi_node/nginx.conf 配置准确,并启动 Nginx 服务:
    # 修改 nginx.conf 配置后,启动或重启 Nginx 服务
    nginx -c $(pwd)/multi_node/nginx.conf
    

注意事项

  • 请根据实际环境修改各配置文件中的关键信息(如 API 密钥、证书路径、端口号等)。
  • 在集群部署环境中,确保各节点之间网络互通,并按实际需求配置负载均衡器。
  • 建议在修改配置后,先测试单节点部署,再逐步扩展到多节点集群。

EMQX 测试工具

EMQX 测试工具采用 mqttx 进行压力测试,支持以下测试场景:

  • 压测海量链接
    使用以下命令测试大量连接:

    mqttx bench conn -c 5000
    
  • 批量发布消息
    使用以下命令进行批量消息发布:

    mqttx bench pub -c 5000 -t bench/%i
    
  • 批量订阅消息
    使用以下命令进行批量消息订阅:

    mqttx bench sub -c 5000 -t bench/%i
    

详细使用说明请参考:mqttx CLI 文档


本文档旨在为用户提供一个清晰的部署及测试指导,可根据项目需求进行适当调整。更多使用说明和排查问题的细节,请参考各目录内附带的 README 文件或官方文档。

2025年2月22日

Description
No description provided
Readme 368 KiB
Languages
Nginx 100%