创建 BYOC 部署
作为一款 MQTT 消息中间件,EMQX Bring Your Own Cloud (BYOC) 支持在您自己的云基础设施中创建部署,确保数据只在您的环境中,安全可控。这种部署方式可以提高数据安全性和可控性,同时也可以避免数据泄漏等风险。另外,EMQX BYOC 还能够提供更好的性能和可扩展性,以满足不同场景下的需求。本节将介绍如何创建和使用 BYOC 部署。
前置准备
创建 BYOC 部署前,请先在控制台中检查您的 BYOC 创建状态。在部署创建页面选择 BYOC,然后查看右侧按钮:显示联系我们表示需要申请权限,显示新建部署表示您的账号已获得创建权限。

您还需要准备好对应公有云的账号、做好云资源规划、并申请 EMQX BYOC 产品许可证等。详细信息,请参考部署前置准备页面。
准备部署
登录账户,进入 EMQX Cloud 控制台。
对于首次使用的用户,您需要先从创建一个项目开始。详细步骤,参见创建项目。如果您已经创建过项目,可以跳过此步骤。
您可以在控制台首页(概览)中点击新建部署直接进入创建步骤页面,或者点击您想要创建部署的项目的卡片、进入项目,然后在项目页面中点击新建部署进入创建步骤。
在选择版本中选中 BYOC。
依据您的需求选择相应规格配置。

云平台相关配置
选择云平台:可选择阿里云或亚马逊云科技(AWS 中国)。
如您希望部署在其他云平台,可通过工单或邮件(cloud-support@emqx.io)联系我们。
选择区域:选择待部署的区域。
如您希望部署在其他区域,可通过工单或邮件(cloud-support@emqx.io)联系我们。
EMQX 集群相关配置
TIP
最大连接数需要与您申请的 EMQX BYOC 许可证保持一致。部署完成后,如需修改相关配置,可通过工单联系我们。
- 最大连接数:指定部署集群的 MQTT 设备最大连接数。部署完成后,也可通过工单联系我们进行升降此部署规格。
- 消息上下行 TPS:指定部署集群的消息上下行的每秒事务处理数(TPS)。
- EMQX 节点实例规格:系统将自动根据最大连接数和消息上下行 TPS 填入推荐的实例规格,您也可以实际业务需求修改实例规格。
- EMQX 节点实例数量:系统将自动根据最大连接数和消息上下行 TPS 填入推荐的实例数量,您也可以实际业务需求修改节点的数量(2-5 个节点)。
- VPC 网段:选择用于创建 VPC 的私网地址范围。
部署名称和项目
- 部署名称:填写具有业务意义的部署名称。
- 所属项目:为部署设置所属项目。
云资源标签(可选):依据您的需求添加云资源标签,便于后续识别和管理,最多支持 10 个标签。
确认部署信息后,根据右侧显示的按钮继续操作:
- 联系我们:您的账号尚未获得 BYOC 创建权限。点击该按钮后,在预填内容的工单窗口中点击确认。权限审批通过后,返回此页面继续创建 BYOC 部署。
- 新建部署:您的账号已获得 BYOC 创建权限。点击该按钮继续。
阅读弹出的 BYOC 部署创建指引,点击马上开始以创建部署。
接下来,我们将根据执行部署章节中的步骤正式开始部署。
执行部署
创建 BYOC 部署后,部署状态为等待部署,连接信息中不会显示部署详情。按照以下步骤执行部署:
- 在部署概览页面中,点击开始部署。
- 在部署指南面板中,根据创建部署时选择的云平台完成相应步骤。
- 按照指南中的说明,准备一个可访问互联网的 Ubuntu 22.04 (AMD64) LTS 环境,并将所需的 TLS/SSL 证书和 BYOC 许可证文件复制到该环境中。指南中所需值的说明请参阅命令参数。
- 复制为当前部署生成的命令,并按照指定顺序在 Ubuntu 命令行界面中执行。仅替换云平台凭据、域名和证书路径的占位符,不要修改 EMQX Cloud 自动生成的值。
- 系统提示确认需要创建的云资源时,输入
yes继续。
云资源创建完成后,继续添加 DNS 记录。
命令参数
部署指南生成的命令包含云平台凭据、MQTT 服务域名、TLS/SSL 证书和 EMQX Cloud 访问参数。执行命令前,请按照以下说明替换需要由您提供的占位符。
云平台凭据参数
| 参数 | 云平台 | 说明 |
|---|---|---|
--accessKey | 阿里云 | 阿里云账号的 AccessKey ID。您可以在 RAM 访问控制中查看。 |
--secretKey | 阿里云 | 与 AccessKey ID 对应的 AccessKey Secret。 |
--accessKey | 亚马逊云科技(AWS 中国) | IAM 用户的访问密钥 ID。获取方式请参阅管理 IAM 用户的访问密钥。 |
--secretKey | 亚马逊云科技(AWS 中国) | 与访问密钥 ID 对应的秘密访问密钥。 |
域名和证书参数
| 参数 | 说明 |
|---|---|
--domain | MQTT 客户端访问部署时使用的域名,例如 your.domain.com。 |
--sslCertPath | CA 签名的 TLS/SSL 证书的绝对路径。证书格式要求请参阅在 BYOC 中配置 TLS/SSL。 |
--sslKeyPath | TLS/SSL 证书对应私钥的绝对路径。私钥格式要求请参阅在 BYOC 中配置 TLS/SSL。 |
--clientCaPath | 可选的客户端 CA 证书绝对路径。提供该参数将启用双向 TLS/SSL 认证。详情请参阅在 BYOC 中配置 TLS/SSL。 |
如果不需要 --clientCaPath,请在执行命令前移除该参数。未提供该参数时,部署使用单向 TLS/SSL 认证。
控制台生成的参数
不要修改部署指南中自动生成的以下值:
| 参数 | 说明 |
|---|---|
--platform | 为部署选择的云平台。 |
--byocEndpoint | 工具包使用的 EMQX Cloud 访问地址。 |
--byocKey | 当前 BYOC 部署的认证密钥。该密钥有效期为一小时,请在命令生成后尽快使用。 |
添加 DNS 记录
部署创建完成后,系统将返回以下内容。您可根据返回的 IP 地址,在 DNS 服务中添加一条域名解析记录,将部署的公网 IP 与您的域名进行绑定。
Apply complete! Resources: 45 added, 0 changed, 0 destroyed.
Outputs:
cloud_register_data = <sensitive>
jwt_token = <sensitive>
lb_address = "<Your Deployment IP>"
password = "<EMQX Dashboard Password>"
username = "<EMQX Dashboard Username>"
vpc_id = "vpc-bp1n1dwiv2srgkgle4rlu"
*****************************
You need add a record to your DNS service provider.
IP address: 112.124.9.12
Domain: <Your Custom Domain>
*****************************
Checking if <Your Custom Domain> is resolved to the 112.124.9.12 of the load balancer您可以选择主流云平台提供的 DNS 解析服务。以阿里云平台的云解析 DNS 服务为例,您可以根据 云解析 DNS - 添加网站解析页面 的操作步骤,添加一条域名解析记录。关于 DNS 和域名解析等基本概念,请参考 DNS 概念。
解析记录生效时,系统将返回 HTTPS listener is ready。
HTTPS listener is ready完成部署
完成域名解析后,Ubuntu 命令行界面将输出以下内容,说明该部署执行成功。
Deployment successful! Here is the service information:
--------------------------------------------------------
EMQX service connection address: <Your Custom Doamin>
EMQX Dashboard address: https://<Your Custom Doamin>:18084
EMQX Dashboard username: <EMQX Dashboard Username>
EMQX Dashboard password: <EMQX Dashboard Password>
You can log in to the EMQX Cloud Console(https://cloud.emqx.com/console) to manage your deployment.
--------------------------------------------------------
Thank you for choosing our service. Happy IoT!请妥善保存 EMQX Dashboard 用户名和密码,它将用于管理控制台登录和集群管理中,后续不会再显示该信息。
部署概览
返回并刷新部署概览页面,可获取到部署实时状态和连接信息:

实时状态:
- 部署名称:部署名称,同时也是云资源的前缀,方便在公有云控制台中快速查找。
- 实例状态:运行状态和创建时间。
- 连接数:当前连接数和最大连接数。
- 消息上下行 TPS:部署当前每秒钟消息发送和接收条数,以及 TPS 上限。
连接信息:
- 连接地址:部署时用户指定的域名。
- 连接端口:默认开启 1883(mqtt)、8883(mqtts) 、8083(ws)、8084(wss) 端口,用于 MQTT 协议接入;18084(https) 和 8443(https) 分别用于 Dashboard 登录和 REST API 访问。
如您希望自定义端口,可通过工单或邮件(cloud-support@emqx.io)联系我们。
许可证信息:
包含许可证基本信息与到期时间,许可证相关信息请参考 BYOC 许可证。
高级网络设置
VPC 对等连接配置
Virtual Private Cloud (VPC) 对等连接是两个 VPC 之间的网络连接,通过此连接,两个位于不同网络中的 VPC 也可以彼此通信。该功能由云服务商提供,支持在同云服务商、同区域内,BYOC 部署所在的 VPC 与客户其他 VPC 创建对等连接。 请参考各公有云 VPC 对等连接文档进行配置:
私网连接 PrivateLink 配置
私网连接(PrivateLink)能够实现 BYOC 部署所在的 VPC 与公有云上的服务建立安全稳定的私有连接,简化网络架构,实现私网访问服务,避免通过公网访问服务带来的潜在安全风险。请参考各公有云 VPC 私网连接文档进行配置:
NAT 网关配置
公有云平台提供的 NAT 网关可以提供网络地址转换服务,为 BYOC 部署提供访问公网资源的能力,无需 VPC 对等连接。您可以在 BYOC 部署所在 VPC 内添加 NAT 网关,请参考各公有云 NAT 网关文档进行配置:
连接到部署
您可以使用任何 MQTT 客户端工具连接到部署进行测试,我们推荐使用 MQTTX 连接到部署。