Red de agentes de Amazon MQ - Amazon MQ

Red de agentes de Amazon MQ

Amazon MQ es compatible con la característica de red de agentes de ActiveMQ.

Una red de agentes está compuesta por varios agentes de una sola instancia activos al mismo tiempo o agentes activos/en espera. La creación de una red de agentes puede aumentar la disponibilidad, la tolerancia a errores y el equilibrio de carga con varias instancias de agentes.

¿Cómo funciona una red de agentes?

Una red de los agentes se establece conectando un agente a otro mediante conectores de red. Un conector de red proporciona mensajes bajo demanda de un agente a otro. Los conectores de red se configuran en la configuración del agente como conexiones no dúplex o dúplex. Para conexiones no dúplex, los mensajes se reenvían solo desde un agente al otro. En el caso de las conexiones dúplex, los mensajes se reenvían en ambos sentidos entre ambos agentes.

Si el conector de red está configurado como dúplex, también se reenvían mensajes desde Agente2 a Agente1.

Puede utilizar conexiones dúplex y no dúplex en una red de agentes. Es posible que desee introducir una conexión dúplex con otro agente para mejorar el tráfico o evitar un aumento del límite. Las conexiones dúplex también son útiles para realizar migraciones parciales desde entornos locales a agentes gestionados de Amazon MQ.

¿Cómo administra las credenciales una red de agentes?

Para que un agente A se conecta a un agente B en una red, el agente A debe utilizar credenciales válidas, como cualquier otro productor o consumidor. En lugar de proporcionar una contraseña en la configuración de <networkConnector> del agente A, debe crear primero un usuario en el agente A con los mismos valores que otro usuario del agente B (se trata de usuarios independientes y únicos que comparten los mismos valores de nombre de usuario y contraseña). Cuando se especifica el atributo userName en la configuración <networkConnector>, Amazon MQ agregará la contraseña de forma automática en tiempo de ejecución.

importante

No especifique el atributo password para <networkConnector>. No recomendamos almacenar contraseñas de texto no cifrado en los archivos de configuración del agente, dado que esto hace que las contraseñas estén visibles en la consola de Amazon MQ. Para obtener más información, consulte Configure Network Connectors for Your Broker.

Entre regiones

Para configurar una red de agentes que abarcan regiones de AWS, implemente los agentes en esas regiones y configure los conectores de red a los puntos de enlace de estos agentes.

Topología de malla entre regiones

Por configurar una red de agentes como en este ejemplo, podría añadir entradas networkConnectors a las configuraciones de Agente1 y Agente4 que hacen referencia a los puntos de enlace de nivel de cable de esos agentes.

Conectores de red para el Agente1:

<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 red para el Agente2:

<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 red para el Agente4:

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

Conmutación por error dinámica con conectores de transporte

Además de configurar los elementos de networkConnector, puede configurar las opciones de transportConnector del agente para permitir la conmutación por error dinámica y reequilibrar las conexiones cuando se añaden o quitan agentes en la red.

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

En este ejemplo, tanto updateClusterClients como rebalanceClusterClients se han establecido en true. En este caso, se proporcionará a los clientes una lista de los agentes de la red y se les pedirá que se reequilibren si se une un nuevo agente.

Opciones disponibles:

  • updateClusterClients: pasa información a los clientes sobre los cambios efectuados en la red de topología del agente.

  • rebalanceClusterClients: hace que los clientes se reequilibren entre los agentes si se añade un nuevo agente a una red de agentes.

  • updateClusterClientsOnRemove: actualiza los clientes con información sobre la topología cuando un agente abandona una red de agentes.

Si updateClusterClients está establecido en true, se pueden configurar los clientes para que se conecten a un único agente de la red de agentes.

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

Cuando se conecte un nuevo agente, obtendrá una lista de los URI de todos los agentes de la red. Si se produce un error al conectar el agente, se puede cambiar dinámicamente a uno de los agentes que se proporcionaron al conectarse.

Para obtener más información acerca de la conmutación por error, consulte Broker-side Options for Failover en la documentación de Active MQ.