# EMQX Cluster 配置说明 ![集群概览](images/集群概览.png) 本文档描述了如何根据单节点和多节点的配置部署 EMQX 集群。本文档适用于两种场景: - **单节点配置**:适用于测试或小规模部署,在目录 [single_node] 中包含所有必要的配置和证书。 - **多节点配置**:适用于集群部署,在目录 [multi_node] 中提供多个节点的配置示例,每个节点拥有独立的配置文件和 Docker Compose 配置。 --- ## 单节点配置 单节点部署的相关文件位于目录 **single_node**,主要文件包括: - **docker-compose.yaml**:Docker Compose 部署文件,用于启动 EMQX 及其依赖服务。 - **nginx.conf**:Nginx 负载均衡配置,可选用于反向代理。 - **api_key.conf**:API 密钥配置文件。 - **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 文档](https://mqttx.app/docs/cli/get-started) --- 本文档旨在为用户提供一个清晰的部署及测试指导,可根据项目需求进行适当调整。更多使用说明和排查问题的细节,请参考各目录内附带的 README 文件或官方文档。 2025年2月22日