Opções de implantação do Amazon MQ para corretores RabbitMQ - Amazon MQ

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Opções de implantação do Amazon MQ para corretores RabbitMQ

Agentes RabbitMQ podem ser criados como agentes de instância única ou em uma implantação de cluster. Para ambos os modos de implantação, o Amazon MQ oferece alta durabilidade armazenando seus dados de forma redundante.

Você pode acessar seus corretores RabbitMQ usando qualquer linguagem de programação compatível com o RabbitMQ e habilitando os seguintes protocolos: TLS

Opção 1: agente de instância única Amazon MQ para RabbitMQ

Um agente de instância única é composto por um agente em uma zona de disponibilidade atrás de um Network Load NLB Balancer (). O corretor se comunica com seu aplicativo e com um volume de EBS armazenamento da Amazon. EBSA Amazon fornece armazenamento em nível de bloco otimizado para baixa latência e alta taxa de transferência.

O uso de um Network Load Balancer garante que seu endpoint do broker Amazon MQ for RabbitMQ permaneça inalterado se a instância do broker for substituída durante uma janela de manutenção ou devido a falhas subjacentes de hardware da Amazon. EC2 Um Balanceador de carga da rede permite que suas aplicações e usuários continuem a usar o mesmo endpoint para se conectar ao agente.

O diagrama a seguir ilustra um agente de instância única do Amazon MQ para RabbitMQ.

Diagram showing client, load balancer, Amazon MQ broker, and EBS volume in Nuvem AWS.

Opção 2: Amazon MQ para implantação do cluster RabbitMQ

A implantação de cluster é um agrupamento lógico de três nós do agente RabbitMQ por trás de um Balanceador de Carga da Rede, cada um compartilhando usuários, filas e um estado distribuído em várias Zonas de Disponibilidade (AZ).

Em uma implantação de cluster, o Amazon MQ gerencia automaticamente as políticas de agente para habilitar o espelhamento clássico em todos os nós, garantindo alta disponibilidade (HA). Cada fila espelhada consiste em um nó principal e um ou mais espelhos. Cada fila tem seu próprio nó principal. Todas as operações para uma determinada fila são aplicadas primeiro no nó principal da fila e depois propagadas para espelhos. O Amazon MQ cria uma política de sistema padrão que define o ha-mode para all e ha-sync-mode para automatic. Isso garante que os dados sejam replicados para todos os nós do cluster em diferentes zonas de disponibilidade para maior durabilidade.

nota

Durante uma janela de manutenção, toda a manutenção de um cluster é realizada em um nó de cada vez, mantendo pelo menos dois nós em execução o tempo todo. Cada vez que um nó é derrubado, as conexões de cliente para esse nó são cortadas e precisam ser restabelecidas. Você deve garantir que seu código de cliente foi projetado para se reconectar automaticamente ao cluster. Para obter mais informações sobre a recuperação de conexões, consulte Recuperação automática de falhas de rede.

Como o Amazon MQ define ha-sync-mode: automatic, durante uma janela de manutenção, as filas serão sincronizadas quando cada nó voltar a ingressar no cluster. A sincronização de filas bloqueia todas as outras operações de fila. Você pode atenuar o impacto da sincronização de filas durante as janelas de manutenção mantendo as filas curtas.

A política padrão não deve ser excluída. Se você excluir essa política, o Amazon MQ a recriará automaticamente. O Amazon MQ também garantirá que as propriedades de HA sejam aplicadas a todas as outras políticas criadas em um agente em cluster. Se você adicionar uma política sem as propriedades de HA, o Amazon MQ as adicionará para você. Se você adicionar uma política com diferentes propriedades de alta disponibilidade, o Amazon MQ as substituirá. Para obter mais informações sobre o espelhamento clássico, consulte filas espelhadas.

O diagrama a seguir ilustra a implantação de um agente de cluster RabbitMQ com três nós em três zonas de disponibilidade (AZ), cada uma com seu próprio EBS volume da Amazon e um estado compartilhado. EBSA Amazon fornece armazenamento em nível de bloco otimizado para baixa latência e alta taxa de transferência.

Ilustra a arquitetura do agente de implantação de cluster para agentes RabbitMQ.