

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á.

# Rede de agentes do Amazon MQ
<a name="network-of-brokers"></a>

O Amazon MQ é compatível com o recurso da rede de agentes do ActiveMQ.

 Uma rede de corretores é composta por vários corretores ou corretores de instância única ativos simultaneamente. active/standby Criar uma rede de agentes pode aumentar a disponibilidade, a tolerância a falhas e o balanceamento de carga com várias instâncias de agentes. 

## Como funciona uma rede de agentes?
<a name="how-does-it-work"></a>

 Uma rede de agentes é estabelecida por meio da conexão de um agente com outro usando-se os *conectores de rede*. Um conector de rede envia mensagens sob demanda de um agente para outro. Os conectores de rede são definidos na configuração do agente como conexões *non-duplex* ou *duplex*. Para conexões não duplex, as mensagens são encaminhadas apenas de um agente para o outro. Em conexões duplex, as mensagens são encaminhadas nos dois sentidos entre os dois agentes. 

 Se o conector de rede for configurado como duplex, as mensagens também serão encaminhadas do *Broker2* para o *Broker1*. 

 Você pode usar conexões não duplex e duplex em uma rede de agentes. Talvez você queira introduzir uma conexão duplex com outro agente para melhorar o tráfego ou evitar um aumento de limite. As conexões duplex também são úteis para a migração parcial de agentes gerenciados on-premises para o Amazon MQ. 

## Como uma rede de agentes lida com as credenciais?
<a name="how-does-it-handle-credentials"></a>

Para o agente A se conectar ao agente B em uma rede, o agente A deve usar credenciais válidas, como qualquer outro produtor ou consumidor. Em vez de fornecer uma senha em uma configuração do `<networkConnector>` do agente A, você deve primeiro criar um usuário no agente A com os mesmos valores como outro usuário no agente B (esses são usuários *separados e exclusivos* que compartilham os mesmos valores de nome de usuário e senha). Quando você especifica o atributo `userName` na configuração do `<networkConnector>`, o Amazon MQ adicionará a senha automaticamente no tempo de execução.

**Importante**  
Não especifique o atributo `password` para o `<networkConnector>`. Não recomendamos armazenar senhas em texto simples nos arquivos de configuração do agente, porque isso torna as senhas visíveis no console do Amazon MQ. Para obter mais informações, consulte [Etapa 2: Configurar os conectores de rede para o seu agente](amazon-mq-creating-configuring-network-of-brokers.md#creating-configuring-network-of-brokers-configure-network-connectors).

## Dentro da região
<a name="how-to-configure-cross-region"></a>

Para configurar uma rede de corretores que abranja AWS regiões, implante corretores nessas regiões e configure conectores de rede para os endpoints desses corretores.

![Topologia de malha inter-regiões](http://docs.aws.amazon.com/pt_br/amazon-mq/latest/developer-guide/images/amazon-mq-nob-cross-region.png)


Para configurar uma rede de agentes, como nesse exemplo, você pode adicionar entradas do `networkConnectors` para as configurações do *Broker1* e do *Broker4* que fazem referência a endpoints de nível de conexão desses agentes.

*Conectores de rede para o Broker1:*

```
<networkConnectors>
    <networkConnector name="1_to_2" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-9876l5k4-32ji-109h-8gfe-7d65c4b132a1-2.mq.us-west-2.amazonaws.com:61617)"/>
    <networkConnector name="1_to_3" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-743c885d-2244-4c95-af67-a85017ff234e-3.mq.us-east-2.amazonaws.com:61617)"/>
    <networkConnector name="1_to_4" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-62a7fb31-d51c-466a-a873-905cd660b553-4.mq.us-east-2.amazonaws.com:61617)"/>
</networkConnectors>
```

*Conector de rede para o Broker2:*

```
<networkConnectors>
    <networkConnector name="2_to_3" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-743c885d-2244-4c95-af67-a85017ff234e-3.mq.us-east-2.amazonaws.com:61617)"/>
</networkConnectors>
```

*Conectores de rede para o Broker4:*

```
<networkConnectors>
    <networkConnector name="4_to_3" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-743c885d-2244-4c95-af67-a85017ff234e-3.mq.us-east-2.amazonaws.com:61617)"/>
    <networkConnector name="4_to_2" userName="myCommonUser" duplex="true"
        uri="static:(ssl://b-9876l5k4-32ji-109h-8gfe-7d65c4b132a1-2.mq.us-west-2.amazonaws.com:61617)"/>      
</networkConnectors>
```

## Failover dinâmico com conectores de transporte
<a name="transport-connectors"></a>

Além de configurar elementos `networkConnector`, você pode configurar as opções `transportConnector` do agente para habilitar o failover dinâmico e para rebalancear as conexões quando os agentes são adicionados ou removidos da rede. 

```
<transportConnectors>
  <transportConnector name="openwire" updateClusterClients="true" rebalanceClusterClients="true" updateClusterClientsOnRemove="true"/>
</transportConnectors>
```

Nesse exemplo, tanto `updateClusterClients` como `rebalanceClusterClients` estão definidos como `true`. Nesse caso, os clientes receberão uma lista de agentes da rede e solicitarão que eles façam um rebalanceamento se um novo agente ingressar.

Opções disponíveis:
+ `updateClusterClients`: transmite informações aos clientes sobre alterações na rede de topologia do agente.
+ `rebalanceClusterClients`: faz com que os clientes realizem um rebalanceamento em todos os agentes quando um agente novo é adicionado a uma rede de agentes.
+ `updateClusterClientsOnRemove`: atualiza os clientes com informações sobre topologia quando um agente sai de uma rede de agentes.

Quando `updateClusterClients` é definido como true (verdadeiro), os clientes podem ser configurados para se conectarem a um único agente em uma rede de agentes. 

```
failover:(ssl://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-east-2.amazonaws.com:61617)
```

Quando um novo corretor se conectar, ele receberá uma lista URIs de todos os corretores da rede. Se a conexão com o agente falhar, ela poderá trocar de maneira dinâmica para um dos agentes fornecidos no momento da conexão.

Para obter mais informações sobre failover, consulte [Opções do lado do agente para failover](http://activemq.apache.org/failover-transport-reference.html#FailoverTransportReference-Broker-sideOptionsforFailover) na documentação do ActiveMQ.