Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Solución de problemas generales de Amazon MQ
Utilice la información que se proporciona en esta sección para diagnosticar los problemas comunes que se le planteen cuando se trabaje con agentes de Amazon MQ, como los problemas de conexión con su agente y reinicios de los agentes.
No puedo conectarme con la consola web o los puntos de enlace de mi agente.
Si tiene problemas para conectarse con su agente a través de la consola web o los punto de enlace de nivel de cable, le recomendamos que siga estos pasos.
-
Verifique que no está intentando conectarse con su agente desde detrás de un firewall. Es posible que tenga que configurar el firewall para poder acceder al agente.
-
Compruebe si está intentando conectarse al agente mediante un punto de conexión FIPS. Amazon MQ solo es compatible con los puntos de conexión FIPS al utilizar las operaciones de la API, pero no para las conexiones a nivel de cable con la propia instancia del agente.
-
Verifique si la opción Public accessibility (Accesibilidad pública) está configurada en Yes (Sí) para su agente. Si está configurada en No, verifique las reglas de la lista de control de acceso (ACL) de la red de su subred. Si ha creado una red personalizada ACLs, es posible que tenga que cambiar las reglas de ACL de la red para proporcionar acceso a su agente. Para obtener más información acerca de las redes de Amazon VPC, consulte el tema sobre la habilitación del acceso a Internet en la Guía del usuario de Amazon VPC
-
Verifique las reglas del grupo de seguridad de su agente. Asegúrese de permitir las conexiones a los siguientes puertos:
Los siguientes puertos se agrupan según los tipos de motor, ya que ActiveMQ en Amazon MQ y RabbitMQ en Amazon MQ utilizan puertos diferentes para las conexiones.
ActiveMQ en Amazon MQ
Consola web: puerto 8162
OpenWire — Puerto 61617
AMQP: puerto 5671
STOMP: puerto 61614
MQTT: puerto 8883
WSS: puerto 61619
-
Ejecute las siguientes pruebas de conectividad de red para su tipo de motor de agente.
Para los corredores sin acceso público, ejecute las pruebas desde una EC2 instancia de Amazon dentro de la misma VPC de Amazon que su agente de Amazon MQ y evalúe las respuestas.
- ActiveMQ on Amazon MQ
-
Para probar su ActiveMQ en la conectividad de red del bróker de Amazon MQ
-
Abra un nuevo terminal o una ventana de líneas de comandos.
-
Ejecute el comando nslookup
para consultar el registro DNS del agente. Para implementaciones en modo activo/en espera, pruebe los puntos de enlace activos y en espera. Los puntos de enlace activos/en espera se identifican agregando el sufijo -1
o -2
al ID único del agente. Reemplace el punto de enlace por la información de su cuenta.
$
nslookup b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
Si la consulta se realiza correctamente, se mostrará un resultado similar al que se incluye a continuación.
Non-authoritative answer:
Server: dns-resolver-corp-sfo-1.sfo.corp.amazon.com
Address: 172.10.123.456
Name: ec2-12-345-123-45.us-west-2.compute.amazonaws.com
Address: 12.345.123.45
Aliases: b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
La dirección IP resuelta debe coincidir con las direcciones IP proporcionadas en la consola de Amazon MQ. Esto indica que el nombre de dominio se está resolviendo correctamente en el servidor DNS y puede pasar al paso siguiente.
-
Ejecute el comando telnet
para probar la ruta de red para su agente. Reemplace el punto de enlace por la información de su cuenta. port
Sustitúyalo 8162
por el número de puerto de la consola web u otro puerto a nivel de cable para probar protocolos adicionales según sea necesario.
Para las implementaciones en modo activo/en espera, recibirá un mensaje de error Connect failed
si ejecuta telnet
con el punto de conexión en espera. Se espera que esto suceda, ya que se está ejecutando la propia instancia en espera, no el proceso de ActiveMQ, que no tiene acceso al volumen de almacenamiento de Amazon EFS del agente. Ejecute el comando para ambos puertos de enlace, -1
y -2
, y asegúrese de probar tanto las instancias activas como las de espera.
$
telnet b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
port
Para la instancia activa, se mostrará un resultado similar al que se incluye a continuación.
Connected to b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com.
Escape character is '^]'.
-
Aplique alguna de las siguientes acciones.
-
Si el comando telnet
se ejecuta correctamente, verifique la métrica EstablishedConnectionsCount y confirme que el agente no haya alcanzado el límite de conexiones de nivel de cable máximo. Para confirmar si se ha alcanzado el límite, también puede revisar los registros General
del agente. Si esta métrica es mayor que cero, hay al menos un cliente conectado actualmente con el agente. Si la métrica muestra cero conexiones, vuelva a realizar la prueba de la ruta telnet
y espere al menos un minuto antes de desconectarse, porque las métricas del agente se publican cada un minuto.
-
Si el comando telnet
da error, verifique el estado de la interfaz de red elástica del agente y confirme que el estado sea in-use
. Cree un registro de flujo de Amazon VPC para la interfaz de red de cada instancia y revise los registros de flujo generados. Busque las direcciones IP que utilizó el agente cuando ejecutó el comando telnet
y confirme que los paquetes de conexión, incluso un paquete de retorno, estén ACCEPTED
. Para obtener más información y ver un ejemplo de registro de flujo, consulte Ejemplos de entradas del registro de flujo en la Guía para desarrolladores de Amazon VPC.
-
Ejecute el comando curl
para verificar la conectividad con la consola web del administrador de ActiveMQ.
$
curl https://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
:8162/index.html
Si el comando se ejecuta correctamente, se debe obtener un documento HTML similar al que se incluye a continuación.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Apache ActiveMQ</title>
...
- RabbitMQ on Amazon MQ
-
Para probar su RabbitMQ en la conectividad de red del bróker de Amazon MQ
-
Abra un nuevo terminal o una ventana de líneas de comandos.
-
Ejecute el comando nslookup
para consultar el registro DNS del agente. Reemplace el punto de enlace por la información de su cuenta.
$
nslookup b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
Si la consulta se realiza correctamente, se mostrará un resultado similar al que se incluye a continuación.
Non-authoritative answer:
Server: dns-resolver-corp-sfo-1.sfo.corp.amazon.com
Address: 172.10.123.456
Name: rabbit-broker-1c23e456ca78-b9000123b4ebbab5.elb.us-west-2.amazonaws.com
Addresses: 52.12.345.678
52.23.234.56
41.234.567.890
54.123.45.678
Aliases: b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
-
Ejecute el comando telnet
para probar la ruta de red para su agente. Reemplace el punto de enlace por la información de su cuenta. Puede sustituirlo por port
un puerto 443
para la consola web y probar la conexión AMQP 5671
a nivel de cable.
$
telnet b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
port
Si el comando se ejecuta correctamente, se mostrará un resultado similar al que se incluye a continuación.
Connected to b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com.
Escape character is '^]'.
La conexión telnet se cerrará automáticamente después de unos segundos.
-
Aplique alguna de las siguientes acciones.
Si el comando telnet
se ejecuta correctamente, verifique la métrica ConnectionCount y confirme que el agente no haya alcanzado el valor configurado en la política max-connections predeterminada. Para confirmar si se ha alcanzado el límite, también puede revisar el grupo de registros Connection.log
del agente. Si esta métrica es mayor que cero, hay al menos un cliente conectado actualmente con el agente. Si la métrica muestra cero conexiones, vuelva a realizar la prueba de la ruta telnet
. Es posible que tenga que repetir este proceso si la conexión se cierra antes de que su agente haya publicado nuevas métricas de conexión. CloudWatch Las métricas se publican cada un minuto.
-
Para los agentes sin accesibilidad pública, si el comando telnet
da error, verifique el estado de las interfaces de red elásticas del agente y confirme que el estado sea in-use
. Cree un registro de flujo de Amazon VPC para cada interfaz de red y revise los registros de flujo generados. Busque las direcciones IP privadas que utilizó el agente cuando invocó el comando telnet
y confirme que los paquetes de conexión, incluso el paquete de retorno, estén ACCEPTED
. Para obtener más información y ver un ejemplo de registro de flujo, consulte Ejemplos de entradas del registro de flujo en la Guía para desarrolladores de Amazon VPC.
Este paso no se aplica a RabbitMQ en los corredores de Amazon MQ con accesibilidad pública.
-
Ejecute el comando curl
para verificar la conectividad con la consola web del administrador de RabbitMQ.
$
curl https://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
:443/index.html
Si el comando se ejecuta correctamente, se debe obtener un documento HTML similar al que se incluye a continuación.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RabbitMQ Management</title>
...
Mi agente se está ejecutando y puedo verificar la conectividad usando telnet
, pero mis clientes no se pueden conectar y están devolviendo excepciones SSL.
Es posible que su certificado de punto de conexión del agente se haya actualizado durante el período de mantenimiento del agente. Los certificados de agente de Amazon MQ se rotan periódicamente para garantizar la disponibilidad y la seguridad continuas de los agentes.
Recomendamos utilizar la entidad de certificación (CA) raíz de Amazon en Amazon Trust Services para autenticar en el almacén de confianza de los clientes. Todos los certificados de agente de Amazon MQ están firmados con esta CA raíz. Al utilizar una CA raíz de Amazon, ya no tendrá que descargar el nuevo certificado de agente de Amazon MQ cada vez que haya una actualización de certificado en el agente.
Creé un agente pero me dio error.
Si el estado del agente está es CREATION_FAILED
, haga lo siguiente.
Verifique sus permisos de IAM. Para crear un bróker debes utilizar la política de IAM AWS gestionada AmazonMQFullAccess
o tener el conjunto correcto de EC2 permisos de Amazon en tu política de IAM personalizada. Para obtener más información sobre los EC2 permisos de Amazon necesarios, consulta los permisos de IAM necesarios para crear un agente de Amazon MQ.
-
Verifique si la subred que está eligiendo para su agente está en una Amazon Virtual Private Cloud (VPC) compartida. Para crear un agente de Amazon MQ en una Amazon VPC compartida, debe crearlo en la cuenta propietaria de Amazon VPC.
Mi agente se reinició y no estoy seguro de porqué.
Si su agente se reinició automáticamente, podría deberse a una de las siguientes razones.
-
Es posible que su agente se haya reiniciado debido a un período de mantenimiento semanal programado. Amazon MQ realiza de forma periódica el mantenimiento del hardware, el sistema operativo o el software del motor de un agente de mensajes. La duración del mantenimiento varía, pero puede durar hasta dos horas, dependiendo de las operaciones programadas para el agente de mensajes. Los agentes pueden reiniciarse en cualquier momento durante el período de mantenimiento de dos horas. Para obtener más información sobre los períodos de mantenimiento del agente, consulte Programación del período de mantenimiento de un agente de Amazon MQ.
-
Es posible que el tipo de instancias del agente no sea adecuado para la carga de trabajo de la aplicación. Por ejemplo, ejecutar una carga de trabajo de producción en una mq.t2.micro
podría hacer que el agente se quede sin recursos. Un uso elevado de la CPU o de la memoria del agente pueden provocar que el agente se reinicie imprevistamente. Para ver la cantidad de CPU y memoria que utiliza su agente, utilice las siguientes CloudWatch métricas para su tipo de motor.
-
ActiveMQ en Amazon MQ: CpuUtilization
compruebe el porcentaje de unidades informáticas de EC2 Amazon asignadas que el agente utiliza actualmente. Verifique HeapUsage
para obtener el porcentaje del límite de memoria JVM de ActiveMQ que el agente usa actualmente.
-
RabbitMQ en Amazon MQ: compruebe SystemCpuUtilization
el porcentaje de unidades EC2 informáticas de Amazon asignadas que el agente utiliza actualmente. Verifique RabbitMQMemUsed
para obtener el volumen de RAM utilizado en bytes, y divídalo por RabbitMQMemLimit
para obtener el porcentaje de memoria que utiliza el nodo de RabbitMQ.
Para obtener información acerca de los tipos de instancias del agente y cómo elegir el tipo de instancias adecuado para su carga de trabajo, consulte Broker instance types.