AWSSupport-TroubleshootDMSEndpointConnection - AWS Systems Manager Referencia del manual de automatización

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.

AWSSupport-TroubleshootDMSEndpointConnection

Descripción

El AWSSupport-TroubleshootDMSEndpointConnectionmanual ayuda a diagnosticar y solucionar los problemas de conectividad entre AWS Database Migration Service las instancias de replicación y los puntos finales. AWS DMS La automatización utiliza las comprobaciones del Reachability Analyzer para probar la conectividad de la red y analiza la configuración de la red para identificar posibles problemas de conectividad que podrían impedir que las migraciones se realicen correctamente. AWS DMS

importante

Debe haber probado la conectividad entre la instancia de AWS DMS replicación y el punto final mediante la AWS DMS consola o la API antes de ejecutar este manual. Si no ha probado la conexión, hágalo primero; de lo contrario, puede que tenga que volver a ejecutar este runbook. Tanto la instancia de AWS DMS replicación como el punto final deben estar disponibles para que las pruebas de conectividad sean precisas.

importante

Este manual crea e invoca AWS Lambda funciones, que generarán cargos de Lambda. Cada ejecución de análisis del Reachability Analyzer también conlleva cargos. Para obtener más información sobre los precios, consulte la página de precios de Amazon VPC en la pestaña Network Analysis y AWS Lambda precios.

¿Cómo funciona?

El manual realiza un análisis sistemático de la AWS DMS conectividad a través de las siguientes fases:

Fase 1: Validación de recursos y requisitos previos

  • Validación del punto final: verifica la existencia del AWS DMS punto final, recupera su configuración (nombre del servidor, puerto y tipo de motor) y confirma que el motor de base de datos es compatible para la solución de problemas.

  • Estado de la prueba de conexión: recupera el estado actual de la prueba de conexión entre la instancia de replicación y el punto final mediante la AWS DMS DescribeConnections API, incluidos los mensajes de error de intentos de prueba anteriores.

  • Análisis de instancias de replicación: recopila los detalles de la configuración de la red, incluidos el ID de Amazon VPC, la IDs subred y el IDs grupo de seguridad, e identifica la interfaz de red elástica (ENI) asociada a la instancia de replicación.

Fase 2: resolución de DNS y descubrimiento de rutas de red

  • Resolución de DNS basada en Amazon VPC: crea una función Lambda temporal en la misma Amazon VPC que la instancia de replicación para convertir el nombre de host del punto final en su dirección IP desde el contexto de Amazon VPC, lo que garantiza una resolución de DNS privada precisa.

  • Identificación del objetivo: determina el objetivo adecuado para Reachability Analyzer en función de si el punto final se encuentra dentro de la misma Amazon VPC (usa ENI) o es externo (usa una dirección IP resuelta).

  • IPv6 Comprobación de compatibilidad: valida que las direcciones resueltas lo estén IPv4, ya que Reachability Analyzer no admite direcciones. IPv6

Fase 3: Análisis integral de la ruta de la red

  • Ejecución del Reachability Analyzer: crea una ruta de Network Insights desde la instancia de replicación ENI hasta el destino (ENI del punto final o dirección IP) y ejecuta un análisis exhaustivo para probar la conectividad TCP en el puerto especificado.

  • Análisis de red multicapa: examina la ruta de red completa, incluidas las tablas de enrutamiento, los grupos de seguridad, la red, las puertas de enlace de Internet ACLs, las puertas de enlace de NAT, las conexiones de emparejamiento de Amazon VPC y las puertas de enlace de tránsito para identificar las barreras de conectividad.

  • Generación de explicaciones detalladas: en caso de problemas de conectividad, proporciona explicaciones específicas para cada componente de la red que bloquea el tráfico, incluidos los números de reglas exactos, los bloques de CIDR, los rangos de puertos y las restricciones de protocolo.

Fase 4: generación de informes y limpieza de recursos

  • Informes exhaustivos: genera un informe detallado que contiene un resumen de las pruebas de conexión, los resultados del análisis de la ruta de la red y las explicaciones específicas de los fallos, junto con una guía de corrección.

  • Administración de recursos: limpia automáticamente los recursos creados (función Lambda, funciones de IAM, rutas de Network Insights), a menos que PersistReachabilityAnalyzerResults el parámetro esté configurado para conservar los resultados del análisis para su posterior investigación.

  • Gestión de errores: proporciona informes de errores específicos para diversos escenarios de error, como motores de bases de datos no compatibles, recursos faltantes, errores en la resolución del DNS y problemas de permisos.

El manual admite la solución de problemas de conectividad para varios motores de bases de datos, incluidos Amazon Aurora, Amazon DocumentDB, Amazon DynamoDB, Amazon Neptune, Amazon Redshift, Amazon S3, Azure SQL Database, MySQL, Oracle, PostgreSQL DB2, SQL Server y muchos otros.

Ejecuta esta automatización (consola)

Tipo de documento

Automatización

Propietario

Amazon

Plataformas

/

Permisos de IAM necesarios

El parámetro AutomationAssumeRole requiere las siguientes acciones para utilizar el manual de procedimientos correctamente.

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStacks

  • cloudformation:DescribeStackEvents

  • dms:DescribeEndpoints

  • dms:DescribeReplicationInstances

  • dms:DescribeConnections

  • iam:GetRole

  • iam:PassRole

  • iam:SimulatePrincipalPolicy

  • lambda:CreateFunction

  • lambda:DeleteFunction

  • lambda:GetFunction

  • lambda:InvokeFunction

  • lambda:ListTags

  • lambda:TagResource

  • lambda:UntagResource

  • lambda:UpdateFunctionCode

Permisos de IAM opcionales

Los siguientes permisos solo son necesarios dentro de la AutomationAssumeRole si no proporciona un LambdaRoleArn parámetro y desea que la automatización cree la función de ejecución de Lambda por usted:

  • iam:CreateRole

  • iam:DeleteRole

  • iam:AttachRolePolicy

  • iam:DetachRolePolicy

  • iam:TagRole

  • iam:UntagRole

importante

Además de las acciones mencionadas anteriormente, AutomationAssumeRole deben tener Amazon VPCReachability AnalyzerFullAccessPolicy como política gestionada adjunta para que las pruebas del Reachability Analyzer se realicen correctamente.

Ejemplo de política:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDMSTroubleshootingActions", "Effect": "Allow", "Action": [ "dms:DescribeEndpoints", "dms:DescribeReplicationInstances", "dms:DescribeConnections", "lambda:GetFunction", "lambda:ListTags", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:TagResource", "lambda:UntagResource", "lambda:UpdateFunctionCode", "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:CreateStack", "cloudformation:DeleteStack", "iam:GetRole", "iam:SimulatePrincipalPolicy", "iam:CreateRole", "iam:DeleteRole", "iam:TagRole", "iam:UntagRole" ], "Resource": "*" }, { "Sid": "AllowDMSLambdaInvocation", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": "arn:*:lambda:*:*:function:AWSSupport-TroubleshootDMSEndpointConnection-*" }, { "Sid": "AllowPassRoleToDMSLambda", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:*:iam::*:role/AWSSupport-TroubleshootDMSEndpointConnection-*", "Condition": { "StringLikeIfExists": { "iam:PassedToService": "lambda.amazonaws.com" } } }, { "Sid": "AllowRolePolicyManagement", "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:DetachRolePolicy" ], "Resource": "*", "Condition": { "StringLikeIfExists": { "iam:ResourceTag/AWSSupport-TroubleshootDMSEndpointConnection": "true" } } } ] }

Instrucciones

Siga estos pasos para configurar la automatización:

  1. Navegue hasta AWSSupport-TroubleshootDMSEndpointConnectionSystems Manager, en Documentos.

  2. Elija Execute automation (Ejecutar automatización).

  3. Para los parámetros de entrada, introduzca lo siguiente:

    • AutomationAssumeRole (Opcional):

      • Descripción: (opcional) El nombre del recurso de Amazon (ARN) del rol AWS Identity and Access Management (IAM) que permite a SSM Automation realizar las acciones en su nombre. Si no se especifica ningún rol, SSM Automation utiliza los permisos del usuario que inicia este manual.

      • Tipo: AWS::IAM::Role::Arn

    • DmsEndpointArn (Obligatorio)

      • Descripción: (obligatorio) El nombre del recurso de Amazon (ARN) del AWS Database Migration Service punto final.

      • Tipo: String

      • Valor permitido: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):dms:[a-z0-9-]+:\\d{12}:endpoint:[A-Z0-9]{1,48}$

    • DmsReplicationInstanceArn (Obligatorio)

      • Descripción: (obligatorio) El nombre de recurso de Amazon (ARN) de la instancia de AWS Database Migration Service replicación.

      • Tipo: String

      • Valor permitido: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):dms:[a-z0-9-]+:\\d{12}:rep:[A-Z0-9]+$

    • PersistReachabilityAnalyzerResults (Opcional)

      • Descripción: (opcional) El indicador que informa si los resultados de la ejecución del análisis de Network Insights deben conservarse o no.

      • Tipo: Boolean

      • Valores permitidos: [true, false]

      • Valor predeterminado: false

    • LambdaRoleArn (Opcional)

      • Descripción: (opcional) El nombre del recurso de Amazon (ARN) del rol AWS AWS Identity and Access Management (IAM) que permite a la AWS Lambda función acceder a los AWS servicios y recursos necesarios. Si no se especifica ninguna función, esta automatización de Systems Manager creará una función de IAM para Lambda en su cuenta.

      • Tipo: AWS::IAM::Role::Arn

      • Valor predeterminado: ""

    • Confirme (obligatorio)

      • Descripción: (Obligatorio) Introduzca esta información yes para confirmar que este manual creará una función Lambda en su cuenta y creará una función de IAM si no LambdaRoleArn se proporciona ninguna.

      • Tipo: String

      • Valor permitido: ^[Yy][Ee][Ss]$

  4. Seleccione Ejecutar.

  5. Se inicia la automatización.

  6. Este documento realiza los siguientes pasos:

    • DescribeEndpointAndCheckEngine:

      Recupera la configuración del AWS DMS punto final y valida si el tipo de motor de base de datos es compatible para la solución de problemas. Extrae el nombre del servidor, el puerto y el tipo de motor de la configuración del punto final.

    • BranchOnEndpointAndCheckEngineErrors:

      Ramifica la automatización en función de los errores de la validación del punto final. Si se encuentran errores, la automatización procede a generar un informe de errores; de lo contrario, continúa con las pruebas de conectividad.

    • GetTestConnectionStatus:

      Recupera el estado de la conexión y el mensaje de error del AWS DMS punto final mediante la DescribeConnections API. Este paso comprueba si se ha realizado una prueba de conexión y captura los mensajes de error.

    • BranchOnTestConnectionStatusErrors:

      Ramifica la automatización en función de los errores de estado de la prueba de conexión. Si se detectan errores, la automatización genera un informe de errores; de lo contrario, continúa con el análisis de las instancias de replicación.

    • DescribeReplicationInstance:

      Recupera los detalles de configuración de red de la instancia de AWS DMS replicación, incluidos el ID de Amazon VPC, la IDs subred y el IDs grupo de seguridad, e identifica la interfaz de red elástica (ENI) asociada.

    • ValidateResourcePermissions:

      Valida que la función de ejecución tenga los permisos necesarios para limpiar los recursos que se crearán durante el proceso de automatización.

    • Cree DNSResolver Lambda:

      Crea una AWS CloudFormation pila que contiene una función Lambda implementada en la misma Amazon VPC que la instancia de replicación. Esta función se utiliza para convertir nombres DNS en direcciones IP privadas desde el contexto de Amazon VPC.

    • DescribeCloudFormationErrorFromStackEvents:

      Si se produce un error en la creación de la CloudFormation pila, en este paso se describen los errores de los eventos de la pila para proporcionar información detallada sobre los errores y poder solucionarlos.

    • Obtenga DNSResolverLambdaName:

      Recupera el nombre de la función Lambda del solucionador de DNS de los resultados de CloudFormation la pila para su uso en los pasos siguientes.

    • ResolveDmsEndpoint:

      Invoca la función Lambda para convertir el nombre de host AWS DMS del punto final en su dirección IP desde Amazon VPC. Esto garantiza una resolución precisa del DNS privado y valida la compatibilidad. IPv4

    • BranchOnResolveDmsEndpointErrors:

      Ramifica la automatización en función de los errores de resolución del DNS. Si el punto final no se puede resolver o se resuelve en una IPv6 dirección, la automatización genera un informe de errores.

    • GetReachabilityAnalyzerTarget:

      Identifica el objetivo adecuado para el Reachability Analyzer en función de la configuración de Amazon VPC y la ubicación del punto final. Determina si se debe utilizar un ENI (para los mismos puntos de enlace de Amazon VPC) o una dirección IP (para los puntos de enlace externos) como destino.

    • GenerateErrors:

      Crea un informe de errores completo cuando se producen errores en los pasos anteriores. Incluye detalles sobre los errores de validación de los terminales, los fallos en las pruebas de conexión o los problemas de resolución del DNS, así como una guía de corrección específica.

    • GenerateReport:

      Crea un informe completo de solución de problemas que contiene el estado de la conexión, los resultados del análisis de la ruta de la red mediante el Reachability Analyzer, explicaciones detalladas de las barreras de conectividad y acciones recomendadas para su resolución.

    • CheckStackExists:

      Comprueba si la CloudFormation pila se creó correctamente y si es necesario eliminarla durante la limpieza. Este paso garantiza una gestión adecuada de los recursos, independientemente del éxito o el fracaso de la automatización.

    • Eliminar DNSResolver Lambda:

      Elimina la CloudFormation pila que contiene la función Lambda de resolución de DNS y los recursos asociados (PersistReachabilityAnalyzerResultsa menos que esté configurada en), lo que garantiza true que no queden recursos residuales una vez finalizada la automatización.

  7. Una vez finalizada, revise la sección de resultados para ver los resultados detallados de la ejecución:

    • GetTestConnectionStatus.estado

      El estado actual de la prueba de conexión entre la instancia de AWS DMS replicación y el punto final (p. ej., correcta, fallida, en fase de prueba).

    • DescribeCloudFormationErrorFromStackEvents.Eventos

      Si se produce un error en la creación de la CloudFormation pila, este resultado contiene los eventos de error detallados del proceso de creación de la pila para ayudar a diagnosticar los problemas de implementación de la infraestructura.

    • GenerateReport.informe

      Un informe completo de solución de problemas que contiene los resultados del análisis de conexión, los hallazgos del Reachability Analyzer, el análisis de la ruta de la red, las barreras de conectividad específicas identificadas y recomendaciones de remediación detalladas con enlaces a la documentación relevante. AWS

    • GenerateErrors.informe

      Si se producen errores durante el proceso de automatización, este resultado proporciona un informe de errores detallado que incluye los motivos específicos del error, los recursos afectados y una guía para resolver los problemas antes de volver a intentar la automatización.

Referencias

Automatización de Systems Manager