检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设置队列负载均衡 方案概述 在RabbitMQ集群上,由于扩容节点、删除队列等原因,会导致队列在各个节点分布不均衡,从而造成部分节点压力过大,无法更有效地利用集群。 这时候需要手动设置节点间队列的负载均衡,提升集群的利用率。
RabbitMQ集群实例的连接地址,实际上是实例的LVS节点地址(负载均衡地址),客户端连接实例时,通过负载均衡器将客户端请求分发到集群实例的各个节点。 图1 连接示意图 父主题: 连接问题
集群内部使用LVS做负载均衡,由LVS将请求均衡分发到每个虚拟机节点。 父主题: 实例问题
使用集群的负载均衡 队列的性能受单个CPU内核控制,当一个RabbitMQ节点处理消息的能力达到瓶颈时,可以通过集群进行扩展,从而达到提升吞吐量的目的。 使用多个节点,集群会自动将队列均衡的创建在各个节点上。
表1 常用最佳实践 实践 描述 设置队列负载均衡 扩容节点、删除队列可能会导致队列在各个节点分布不均衡,本文介绍如何设置队列负载均衡。
提高RabbitMQ性能 本章节介绍如何通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 设置队列负载均衡 本章节介绍如何设置节点间队列的负载均衡,提升集群的利用率。
LVS的心跳超时时间 RabbitMQ集群实例使用LVS进行负载均衡,如图1所示,单节点实例不涉及LVS。 图1 集群实例的负载均衡 LVS对客户端连接设置了心跳超时时间,默认为90s。
区域(Region) 从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。
配置RabbitMQ监控告警 本章节主要介绍部分监控指标的告警策略,以及配置操作。在实际业务中,建议按照以下告警策略,配置监控指标的告警规则。 表1 RabbitMQ实例配置告警的指标(RabbitMQ 3.x.x版本) 指标名称 告警策略 指标说明 解决方案 内存高水位状态 告警阈值
系统策略 无 DMS ELBAccess 分布式消息服务租户委托时需要授权的ELB操作权限。 系统策略 无 DMS VPCEndpointAccess 分布式消息服务租户委托时需要授权的VPCEndpoint操作权限。
这是由于队列之间的负载均衡减少了单个队列的压力,提高了消息处理效率。 测试场景五(队列类型):相同Exchange、生产者数量、消费者数量、实例规格,不同的队列类型 测试参数如下: 实例规格:rabbitmq.2u4g.cluster*3。
RabbitMQ实例是否支持扩容? RabbitMQ 3.8.35版本:单机版本的支持扩大存储空间,以及扩容/缩容代理规格。集群版本支持扩大存储空间和代理个数,以及扩容/缩容代理规格。 RabbitMQ AMQP-0-9-1版本:支持扩容存储空间和实例规格。 父主题: 实例问题
购买RabbitMQ实例 RabbitMQ是一款基于AMQP(即Advanced Message Queuing Protocol)协议的开源服务,用于在分布式系统中存储转发消息。 RabbitMQ实例采用物理隔离的方式部署,租户独占RabbitMQ实例。支持用户自定义规格和自定义特性
产品优势 华为云分布式消息服务RabbitMQ版完全兼容开源社区版本,旨在为您提供便捷高效的消息队列。业务无需改动即可快速迁移上云,为您节省维护和使用成本。 一键式部署,免去集群搭建烦恼 只需要在实例管理界面选好规格配置,提交订单,后台将自动创建部署完成一整套RabbitMQ实例。
RabbitMQ实例集群内部的队列是否有冗余备份? 队列是否做镜像(即冗余备份)取决于用户的需要,如果用户设置了镜像,会在集群中多个代理上存储队列的副本,当某个代理故障,集群会从其他正常的代理中选择一个代理,用来同步队列数据。 父主题: 实例问题
新规格实例的规格变更 功能介绍 实例规格变更。 当前通过调用API,只支持按需实例进行实例规格变更。 调用方法 请参见如何调用API。 URI POST /v2/{engine}/{project_id}/instances/{instance_id}/extend 表1 路径参数
客户端是否可以连接同个RabbitMQ下多个Vhost? 客户端可以连接同个RabbitMQ下多个Vhost。 Vhost(Virtual Hosts)是RabbitMQ的基本特性,每个Vhost相当于一个相对独立的RabbitMQ服务器,每个Vhost数据目录不同,共用一个进程。
创建实例 功能介绍 创建实例,该接口支持创建按需和包周期计费方式的实例。 调用方法 请参见如何调用API。 URI POST /v2/{engine}/{project_id}/instances 表1 路径参数 参数 是否必选 参数类型 描述 engine 是 String 消息引擎
CTS支持的DMS for RabbitMQ操作 表1 CTS支持的DMS for RabbitMQ操作列表 操作名称 资源类型 事件名称 删除后台任务成功 rabbitmq deleteDMSBackendJobSuccess 删除后台任务失败 rabbitmq deleteDMSBackendJobFailure
产品规格 RabbitMQ实例规格 RabbitMQ实例兼容开源RabbitMQ 3.8.35和自研RabbitMQ AMQP-0-9-1,实例类型包括单机和集群,实例规格请参考表1和表2。 表1 RabbitMQ集群实例规格(3.8.35版本) 型号 代理数 存储空间范围(GB)