检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
连接问题 如何配置安全组? RabbitMQ客户端连接报错原因分析 RabbitMQ实例是否支持公网访问? RabbitMQ是否支持跨Region部署? RabbitMQ实例是否支持跨VPC访问? RabbitMQ实例是否支持不同的子网? SSL方式连接RabbitMQ实例失败?
输入的用户名和密码,实例开启SSL。 在实例详情中查看并记录“内网连接地址/公网连接地址”。 客户端所在服务器和RabbitMQ实例之间网络已互通,具体网络要求参见连接RabbitMQ网络要求。 客户端所在服务器已安装Java Development Kit 1.8.111或以上
L。 在实例详情中查看并记录“内网连接地址/公网连接地址”。 客户端所在服务器和RabbitMQ实例之间网络已互通,具体网络要求参见连接RabbitMQ网络要求。 客户端所在服务器已安装Java Development Kit 1.8.111或以上版本,并配置JAVA_HOME与
RabbitMQ客户端连接报错原因分析 RabbitMQ客户端连接失败,可能原因包括地址填错、端口填错、用户名或者密码填错、超过最大连接数、未创建Vhost或者填错Vhost名称。 可能原因一:连接地址不正确 VPC内访问场景下,连接地址不正确时,报错如下: [root@ecs-test RabbitMQ-Tutorial]#
客户端是否可以连接同个RabbitMQ下多个Vhost? 客户端可以连接同个RabbitMQ下多个Vhost。 Vhost(Virtual Hosts)是RabbitMQ的基本特性,每个Vhost相当于一个相对独立的RabbitMQ服务器,每个Vhost数据目录不同,共用一个进程
查看RabbitMQ客户端连接地址 客户端连接RabbitMQ实例生产和消费消息时,可通过RabbitMQ WebUI查看客户端的连接地址。 约束与限制 RabbitMQ AMQP-0-9-1版本不支持通过RabbitMQ WebUI查看客户端的连接地址。 客户端处于连接RabbitMQ实例时,才可以查看客户端连接地址。
收集连接信息 实例连接地址与端口 实例创建后,从实例的“基本信息”页签的“连接信息”中获取。 图1 查看RabbitMQ实例连接地址与端口 访问实例的用户名和密码 实例创建后,从实例的“基本信息”页签的“连接信息”中获取用户名。如果忘记了密码,单击“重置密码”,重新设置密码。
客户端和RabbitMQ实例部署在同一个Region的不同VPC中,利用VPC对等连接将两个VPC间的网络打通,实现跨VPC访问。 对等连接 客户端连接RabbitMQ实例前,需要放通如下安全组,否则会连接失败。 创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,
配置RabbitMQ网络连接 连接RabbitMQ网络要求 配置RabbitMQ实例的公网访问 父主题: 连接实例
动跳转到“后台任务管理”页签,当任务状态为“成功”时,表示开启公网访问成功。 在RabbitMQ实例的安全组中设置如表1所示规则后,才能成功通过IPv4弹性IP地址连接RabbitMQ。 表1 安全组规则 方向 类型 协议 端口 源地址 说明 入方向 IPv4 TCP 5672
连接实例 配置RabbitMQ网络连接 配置RabbitMQ访问控制 配置RabbitMQ客户端心跳超时时间 使用客户端连接RabbitMQ(关闭SSL) 使用客户端连接RabbitMQ(开启SSL)
SSL方式连接RabbitMQ实例失败? 首先排查安全组的入方向规则,是否放开了端口5671(SSL方式访问)或5672(非SSL访问)。 其次,参考如下内容配置SSL单向认证: 1 2 3 4 5 6 7 8 ConnectionFactory factory =
为什么RabbitMQ集群只有一个连接地址? RabbitMQ集群实例的连接地址,实际上是实例的LVS节点地址(负载均衡地址),客户端连接实例时,通过负载均衡器将客户端请求分发到集群实例的各个节点。 图1 连接示意图 父主题: 连接问题
客户端只能部署在与RabbitMQ实例处于相同虚拟私有云(VPC)的弹性云服务器(ECS)上。 除了ECS、RabbitMQ实例必须处于相同VPC之外,还需要他们的安全组分别配置了正确的规则,客户端才能访问RabbitMQ实例。 建议ECS、RabbitMQ实例配置相同的安全组。安全组创建后,默认包含组内网络访问不受限制的规则。
使用Spring Boot连接RabbitMQ实例 本文介绍如何使用Spring Boot连接RabbitMQ实例进行消息的生产和消费。 使用前请参考收集连接信息收集RabbitMQ所需的连接信息。 本文的连接示例对于RabbitMQ 3.x.x版本与AMQP-0-9-1版本都适用。
与其他云服务的关系 弹性云服务器(Elastic Cloud Server) 弹性云服务器是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。RabbitMQ实例运行在弹性云服务器上,一个代理对应一台弹性云服务器。 云硬盘(Elastic Volume Service) 云硬
选择准备工作中设置好的子网。 安全组 选择准备工作中设置好的安全组。 图4 设置实例网络环境信息 设置实例的访问方式,保持默认即可。 设置实例的认证方式,如图5所示,配置详情请参考表5。 表5 设置实例的认证方式 参数 说明 RabbitMQ认证方式用户名 设置连接RabbitMQ实例的用户名。
LVS对客户端连接设置了心跳超时时间,默认为90s。如果客户端在90s内没有向LVS发送心跳(AMQP心跳帧或消息收发),LVS会主动断开与客户端的连接,此时客户端需要重新连接。 如果存在消息收发时间间隔大于90s的场景,请在客户端开启心跳并设置小于90s的心跳超时时间。推荐设置心跳超时时间为10s。
消息创建时间在哪设置? 消息创建时间是由生产客户端在生产消息时设置的。 父主题: 消息问题
设置队列负载均衡 方案概述 在RabbitMQ集群上,由于扩容节点、删除队列等原因,会导致队列在各个节点分布不均衡,从而造成部分节点压力过大,无法更有效地利用集群。 这时候需要手动设置节点间队列的负载均衡,提升集群的利用率。设置队列负载均衡的方法如下: 删除队列重建 通过Policy修改master节点方式