客户端可以通过公网连接RocketMQ实例,也可以通过内网连接RocketMQ实例。使用内网连接时,注意以下几点:
- 如果客户端和RocketMQ实例部署在同一个VPC内,网络默认互通。
- 如果客户端和RocketMQ实例部署在不同VPC中,由于VPC之间逻辑隔离,客户端和RocketMQ实例不能直接通信,需要打通VPC之间的网络。
客户端连接RocketMQ实例的方式如表1所示。
表1 连接方式说明 连接方式 | 实现方式 | 参考文档 |
|---|
公网连接 | 在RocketMQ控制台开启公网访问,配置弹性公网IP,客户端通过弹性公网IP访问RocketMQ实例。 | 配置RocketMQ实例的公网访问 |
内网连接 | 客户端和RocketMQ实例部署在同一个VPC中,此时网络默认互通。 | - |
客户端和RocketMQ实例部署在同一个Region的不同VPC中,利用VPC对等连接将两个VPC间的网络打通,实现跨VPC访问。 | 对等连接 |
客户端连接RocketMQ实例前,需要放通如下安全组,否则会连接失败。

创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问RocketMQ实例,无需添加表2和表3的规则。
表2 安全组规则(RocketMQ实例4.8.0版本) 方向 | 协议 | 端口 | 源地址 | 说明 |
|---|
入方向 | TCP | 8100 | RocketMQ客户端所在的IP地址或地址段。 | 使用TCP协议,通过内网访问元数据节点的端口。 |
入方向 | TCP | 8200 | 使用TCP协议,通过公网访问元数据节点的端口。 |
入方向 | TCP | 10100-10199 | 使用TCP协议,通过内网访问业务节点的端口。 |
入方向 | TCP | 10101-10199 | 使用TCP协议,通过公网访问业务节点的端口。 |
表3 安全组规则(RocketMQ实例5.x版本) 方向 | 协议 | 端口 | 源地址 | 说明 |
|---|
入方向 | TCP | 8100 | RocketMQ客户端所在的IP地址或地址段。 | 使用TCP协议,通过内网访问实例的端口。 |
入方向 | TCP | 8200 | 使用TCP协议,通过公网访问实例的端口。 |
入方向 | TCP | 8080 | 使用gRPC协议,通过内网访问实例的端口。 |
入方向 | TCP | 8081 | 使用gRPC协议,通过公网访问实例的端口。 |
入方向 | TCP | 10100 | 使用TCP协议,通过内网访问业务节点的端口。 |
入方向 | TCP | 10101 | 使用TCP协议,通过公网访问业务节点的端口。 |