¿Por qué no puedo conectarme a mi clúster de Amazon DocumentDB?

8 minutos de lectura
0

Tengo problemas para conectarme a mi clúster de Amazon DocumentDB (con compatibilidad con MongoDB).

Breve descripción

Amazon DocumentDB es un servicio de nube virtual privada (VPC) y no admite el uso de puntos de conexión públicos. Por lo tanto, para conectarse, debe usar una instancia de Amazon Elastic Compute Cloud (Amazon EC2) u otro servicio de AWS en la misma VPC que su instancia.

Puede usar el emparejamiento de VPC o una puerta de enlace de tránsito para acceder a Amazon DocumentDB desde instancias de EC2 u otros servicios de AWS en diferentes VPC o regiones. Sin embargo, si tiene que acceder a su clúster de Amazon DocumentDB desde fuera de la red de AWS, deberá utilizar la tunelización de SSH o AWS Client VPN.

Solución

Nota: Si se muestran errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de que está utilizando la versión más reciente de AWS CLI.

Existen varios motivos por los que puede tener problemas al intentar conectarse a un clúster de Amazon DocumentDB. Siga los pasos que se indican a continuación para solucionar las causas de raíz más habituales.

La instancia de la base de datos no tiene el estado «disponible»

Compruebe si el clúster de Amazon DocumentDB tiene al menos una instancia y un clúster en estado «disponible». Si las instancias no tienen el estado «disponible», no podrán aceptar conexiones. Para obtener más información, consulte Monitor an Amazon DocumentDB cluster's status y Monitor an Amazon DocumentDB instance's status.

La fuente no tiene autorización para acceder al clúster

Confirme que la fuente que utiliza para conectarse a la instancia tenga autorización para acceder al clúster. La instancia debe tener acceso al clúster en las listas de control de acceso (ACL) de su red, los firewalls locales y las reglas de los grupos de seguridad. Asegúrese de que el tráfico de la fuente que se conecta a la instancia de base de datos no esté bloqueado por uno o varios de los siguientes motivos:

  • Hay grupos de seguridad de Amazon Virtual Private Cloud (Amazon VPC) asociados a la instancia de la base de datos. Si es necesario, añada reglas al grupo de seguridad asociado a la VPC que permite que el tráfico relacionado con la fuente entre y salga de la instancia de la base de datos. Puede especificar una dirección IP, un intervalo de direcciones IP u otro grupo de seguridad de VPC.
  • Reglas de ACL de las red. Si usa las ACL de la red en su VPC, asegúrese de que tengan reglas que permiten el tráfico de entrada y salida desde y hacia la instancia de la base de datos.
  • Firewalls de red o locales. Compruebe si la red permite el tráfico bidireccional con los puertos que la instancia de la base de datos utiliza para la comunicación de entrada y salida.

Las tablas de enrutamiento de la subred de Amazon VPC no permiten el tráfico

La tabla de enrutamiento de la subred de Amazon VPC debe permitir el tráfico procedente de su máquina o instancia. Confirme que las subredes asociadas a cada instancia de la base de datos estén asociadas a las mismas tablas de enrutamiento o a tablas similares.

Si la instancia principal de la base de datos se conmuta por error a una réplica en espera asociada a una tabla de enrutamiento diferente, es posible que el tráfico no se enrute correctamente. Si ese tráfico se enrutó anteriormente sin problemas, compruebe si sigue enrutándose correctamente.

Nombre de DNS o punto de conexión incorrectos

Confirme si está utilizando el nombre de DNS o el punto de conexión correctos para conectarse al clúster de Amazon DocumentDB. A continuación, confirme si el punto de conexión tiene el formato correcto para el cliente que utiliza con el fin de conectarse a la instancia de la base de datos.

Por ejemplo, utilice nslookup en el punto de conexión de la instancia de la base de datos desde una instancia de EC2 dentro de la VPC:

nslookup docdb-2022-12-16-09-10-582.cuh2dlyxxxxx.us-east-1.docdb.amazonaws.com
Server: x.x.x.x
Address: x.x.x.x#53
Non-authoritative answer:
Name: docdb-2022-12-16-09-10-582.cuh2dlyrdizy.us-east-1.docdb.amazonaws.com
Address: x.x.x.x

Para solucionar los problemas de DNS y conectividad, consulte Can't connect to an Amazon DocumentDB endpoint.

Comprobación de si se ha establecido una conexión

Ejecute uno de los siguientes comandos para comprobar la conexión:

telnet <DocDB endpoint> <port number>
nc -zv <DocDB endpoint> <port number>

Si el comando telnet o el comando nc se ejecutan correctamente, se ha establecido una conexión de red. Esto significa que es probable que el problema se deba a la autenticación del usuario en la base de datos, por ejemplo, por problemas con el nombre de usuario y la contraseña.

Confirmación de las credenciales que se usan para la conexión

Confirme si ha introducido el nombre de usuario y la contraseña correctos para conectarse al clúster. Si olvida la contraseña, puede modificar el clúster de Amazon DocumentDB para restablecerla.

Desactivación de la configuración de TLS

De forma predeterminada, la configuración de TLS está activada para los clústeres de Amazon DocumentDB. Si su aplicación no utiliza conexiones TLS/SSL, desactive la configuración de TLS del grupo de parámetros del clúster personalizado de Amazon DocumentDB. Para obtener más información, consulte Manage Amazon DocumentDB cluster parameter groups.

Nota: TLS es un parámetro estático que requiere el reinicio del clúster para que se apliquen los cambios en el grupo de parámetros del clúster. Para obtener más información, consulte Modify Amazon DocumentDB cluster parameters.

Solución de problemas de otros casos de uso

Error por no poder obtener el certificado del emisor local

Es posible que se muestre el error «unable to get local issuer certificate» debido a la compatibilidad del controlador de MongoDB con el certificado de CA. Asegúrese de estar utilizando los parámetros correctos, tal y como se detalla en Connect with TLS turned on.

Imposibilidad de conectarse a una instancia tras un reinicio

Es posible que no pueda conectarse a la instancia después de un reinicio. Al reiniciar una instancia, su dirección IP privada podría cambiar. Esto puede provocar problemas de conectividad. Se recomienda utilizar puntos de conexión de clúster o instancia en lugar de utilizar las direcciones IP resueltas por DNS del recurso de Amazon DocumentDB.

Errores por fallo de la autenticación

Puede que se muestre el error «Authentication failed» cuando se conecte a su instancia. Este error se debe a problemas con la contraseña, como el uso de una contraseña o un nombre de usuario incorrectos. Siga los pasos que se indican a continuación para solucionar este error:

  1. Confirme si ha proporcionado el nombre de usuario y la contraseña correctos.
  2. Introduzca la contraseña manualmente en lugar de utilizar el método de copiar y pegar.
  3. Restablezca la contraseña desde la consola de Amazon DocumentDB o mediante AWS CLI.

Imposibilidad de conectarse tras varias conexiones

Si no puede seguir conectándose, es posible que su instancia haya alcanzado el límite máximo de conexiones de base de datos para su clase de instancia. Para permitir más conexiones, actualice la clase de instancia.

Se recomienda investigar la administración de las conexiones desde el lado del cliente. Compruebe si la agrupación de conexiones y los ajustes de tiempo de espera relacionados se han configurado correctamente. Los ajustes deben permitirle administrar el número de conexiones a su clúster de Amazon DocumentDB. Además, los ajustes deben impedir que alcance el límite de conexiones.

Imposibilidad de conexión desde un sistema local con AWS Client VPN

Es posible que no pueda conectarse a su clúster de Amazon DocumentDB desde un sistema local si utiliza una red privada virtual (VPN). Asegúrese de estar utilizando correctamente AWS Client VPN. AWS Client VPN le permite conectarse a su red remota desde su VPC y configura el enrutamiento para que el tráfico pase a través de la conexión.

Problemas de conectividad intermitente

Si su aplicación se enfrenta a un problema de conectividad intermitente, compruebe si el clúster tiene una gran carga de trabajo. Por ejemplo, revise las métricas de Amazon CloudWatch, como VolumeWriteIOPs, VolumeReadIOPs, OpcountersCommand y CPUUtilization.

Si observa picos en estas métricas de CloudWatch, es posible que sus problemas de conexión se deban a un bloqueo. Puede que las consultas de los usuarios se ejecuten con lentitud porque los planes de consulta no son óptimos, o puede que se bloqueen por la contención de recursos. Utilice Información sobre rendimiento y los registros del Generador de perfiles para encontrar la consulta que provocó este problema.

Información relacionada

Connection issues

Use Amazon EC2 to connect

Monitor Amazon DocumentDB with CloudWatch

Security in Amazon DocumentDB

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 6 meses