Saltar al contenido

¿Cómo soluciono los problemas con las direcciones IP de mis instancias de base de datos de Amazon RDS?

6 minutos de lectura
0

Quiero solucionar problemas con las direcciones IP que Amazon Relational Database Service (Amazon RDS) asigna a mis instancias de base de datos.

Resolución

Cuando Amazon RDS crea una instancia de base de datos en una nube virtual privada (VPC), Amazon RDS asigna una interfaz de red a la instancia de base de datos. En función de cómo configures la instancia, Amazon RDS asignará una dirección IP privada o una dirección IP pública.

He seleccionado la configuración de acceso público, pero Amazon RDS no ha asignado una dirección IP pública a la instancia de base de datos

Si las subredes de tu grupo de subredes de base de datos son privadas, Amazon RDS no asignará ninguna dirección IP pública a la instancia de base de datos.

Para resolver este problema, sigue estos pasos:

  1. Abre la consola de Amazon RDS.
  2. En el panel de navegación, elige Grupos de subredes.
  3. Selecciona el grupo de subredes al que está asociada la instancia de base de datos.
    Nota: Puedes ver los grupos de subredes con el ID de VPC y los ID de subred asociados.
  4. Abre la consola de Amazon Virtual Private Cloud (Amazon VPC).
  5. En el panel de navegación, elige puertas de enlace de Internet.
  6. Comprueba si tu VPC está conectada a una puerta de enlace de Internet.
    Nota: Si tu VPC no está conectada a una puerta de enlace de Internet, crea y conecta una a tu VPC.
  7. En el panel de navegación, selecciona Tablas de enrutamiento.
  8. Elige la tabla de enrutamiento asociada a tu VPC.
  9. Selecciona la pestaña Asociaciones de subredes y, a continuación, comprueba que todas las subredes de tu grupo de subredes de base de datos estén conectadas a la tabla de enrutamiento.
    Nota: Si las subredes no están asociadas a la tabla de enrutamiento, elige Editar asociaciones de subred. Selecciona la subred que quieres asociar a la tabla de enrutamiento.
  10. Elige la pestaña Rutas. Comprueba que todas las subredes de tu grupo de subredes de base de datos tengan 0.0.0.0/0 en el campo Destino y el ID de la puerta de enlace de Internet en el campo Objetivo.
    Nota: Si las subredes tienen valores diferentes para los campos Destino y Objetivo, modifica la ruta para incluir los valores anteriores.
  11. Abre la consola de Amazon RDS.
  12. En el panel de navegación, selecciona Bases de datos.
  13. Selecciona la instancia de base de datos y, a continuación, elige Modificar.
  14. En Conectividad, expande la sección Configuración adicional y, a continuación, selecciona Accesible públicamente.
  15. Selecciona Continuar.
  16. Elige Modificar la instancia de base de datos.

Nota: Un grupo de subredes que incluye una combinación de subredes públicas y privadas puede provocar problemas de conectividad después de una conmutación por error. Por ejemplo, en una configuración de zonas de disponibilidad múltiple, pueden producirse problemas de conectividad cuando la instancia principal usa una subred pública y la secundaria usa una subred privada.

Quiero encontrar la información de conexión de mi instancia de base de datos de Amazon RDS

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Cuando intentas conectarte a la instancia de base de datos desde los recursos de la misma VPC, el punto de enlace de Amazon RDS se resuelve automáticamente en la dirección IP privada. Cuando te conectas a la instancia de base de datos desde fuera de la VPC o de Internet, el punto de enlace se convierte en una dirección IP pública.

Para buscar información de conexión, puedes usar la consola de Amazon RDS, ejecutar el comando describe-db-instances de la AWS CLI o ejecutar la API DescribeDBInstances de Amazon RDS.

También puedes ejecutar uno de los siguientes comandos:

dig example-rds-endpoint

Alternativa:

nslookup example-rds-endpoint

Nota: Sustituye example-rds-endpoint por tu punto de enlace.

Al ejecutar el comando nslookup para obtener el punto de enlace de Amazon RDS, aparece un resultado similar al de los siguientes ejemplos.

Resultado de una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en la misma VPC que se resuelve en una dirección IP privada:

[ec2-user@ip-172-xx-xx-xx ~] nslookup myoracledb.abcd123.region.rds.amazonaws.com  
Server: 172.16.0.0
Address: 172.31.255.255#53
Non-authoritative answer: myoracledb.abcd123.region.rds.amazonaws.com canonical name = ec2-3-232-189-42.compute-1.amazonaws.com.
Name: ec2-3-232-189-42.compute-1.amazonaws.com
Address: 172.31.8.27

Resultado de una instancia de Amazon EC2 en una VPC diferente que se resuelve en la dirección IP pública:

[ec2-user@ip-172-xx-xx-xx ~] nslookup myoracledb.abcd123.region.rds.amazonaws.com  
Server: 192.0.2.0
Address: 192.0.2.255#53
Non-authoritative answer: myoracledb.abcd123.region.rds.amazonaws.com canonical name = ec2-3-232-189-42.compute-1.amazonaws.com.
Name: ec2-3-232-189-42.compute-1.amazonaws.com
Address: 3.232.189.42

Las direcciones IP de mis instancias de base de datos no son coherentes

La dirección IP de la instancia de base de datos de Amazon RDS puede cambiar en las siguientes situaciones:

  • Detiene y reinicia la instancia de base de datos.
    Nota: Al reiniciar la instancia de base de datos, la dirección IP no cambia.
  • Amazon RDS reemplaza el host subyacente debido a un error de la instancia de base de datos o a una actualización de la clase de la instancia de base de datos.
  • Amazon RDS realiza el mantenimiento del hardware en la instancia de base de datos.
  • La instancia de base de datos se encuentra en un entorno Multi-AZ y se produce una conmutación por error.
  • El sistema operativo (SO) de la instancia de base de datos recibe parches de software.
  • Utilizas un reinicio con conmutación por error para iniciar una conmutación por error manual de la instancia de base de datos.
  • El motor de base de datos se actualiza a una versión principal o secundaria.
  • Hay una interrupción en la zona de disponibilidad de la instancia.

Nota: Como la dirección IP de la instancia es dinámica, no puedes asignar una dirección IP estática ni una dirección IP elástica a la instancia.