Saltar al contenido

¿Cómo puedo mover una instancia de base de datos de Amazon RDS desde una subred pública a una subred privada dentro de la misma VPC?

5 minutos de lectura
0

Tengo una instancia de base de datos de Amazon Relational Database Service (Amazon RDS) en una subred pública. Quiero mover mi instancia de base de datos a una subred privada dentro de la misma nube virtual privada (VPC) para que la instancia de base de datos sea privada.

Descripción breve

Amazon RDS no ofrece la opción de cambiar el grupo de subredes de la instancia de base de datos dentro de la misma VPC. Sin embargo, puedes usar la siguiente solución alternativa para mover la instancia de base de datos desde una subred pública a una subred privada. Al utilizar esta solución alternativa, no se crea una nueva instancia de base de datos ni se utiliza el proceso de restauración de instantáneas. La solución alternativa minimiza el tiempo de inactividad que se produce cuando se crea una nueva instancia y se desvía el tráfico. Solo el tiempo de conmutación por error provoca un tiempo de inactividad notable.

Nota: Utiliza esta solución alternativa solo para las instancias de base de datos de RDS. Si la instancia de base de datos forma parte de un clúster de Amazon Aurora, utiliza la opción de clonación. También puedes optar por esta resolución, pero sin desactivar el despliegue multi-AZ. En su lugar, borra y vuelve a crear los lectores.

Resolución

Desactivación de los despliegues multi-AZ y la accesibilidad pública en la instancia de base de datos

Importante: Si ya has establecido la instancia de base de datos como Single-AZ con el parámetro Public accessibility establecido como No, omite este paso.

Para desactivar los despliegues multi-AZ en el caso de la instancia de base de datos, sigue los siguientes pasos:

  1. Abre la consola de Amazon Aurora y RDS.
  2. En el panel de navegación, selecciona Bases de datos. A continuación, selecciona la instancia de base de datos.
  3. Selecciona Modificar.
  4. En la página Modificar la instancia de base de datos, en Despliegue multi-AZ y Acceso público, selecciona No.
  5. Selecciona Continuar y, a continuación, revisa el resumen de las modificaciones.
  6. Selecciona Aplicar inmediatamente o Apply during the next scheduled maintenance window (Aplicar durante el próximo periodo de mantenimiento programado).
    Nota: Si seleccionas Aplicar inmediatamente, puede producirse un tiempo de inactividad porque la modificación hace que la base de datos se reinicie.
  7. Revisa los cambios. Si es correcto, selecciona Modificar la instancia de base de datos para guardarla.

Cómo averiguar la dirección IP de la instancia de base de datos

Cuando la instancia de base de datos vuelva al estado Disponible, ejecuta dig en el punto de enlace de la base de datos para buscar su dirección IP:

dig rds_endpoint

Nota: Sustituye rds_endpoint por el punto de enlace de la instancia de base de datos.

Resultado del ejemplo:

db-RDS-instance.xxxxxxxx.us-east-1.rds.amazonaws.com. 5 IN A 172.39.5.213

Desde la dirección IP privada, puedes buscar la subred que usa tu instancia principal.

Ejemplo de subredes:

  • Subred 1: 172.39.5.0/24
  • Subred 2: 172.39.4.0/24

Como la dirección IP está en 172.39.5.0/24, la instancia se encuentra en la subred 1.

Eliminación de las subredes públicas y agregación de subredes privadas a la instancia de base de datos

Añade todas las subredes privadas del grupo de subredes. Además, elimina todas las subredes públicas del grupo de subredes, excepto la que usa tu instancia principal. En el ejemplo anterior, elimina todo excepto la subred 1, porque la instancia de base de datos usa esa subred.

Sigue estos pasos:

  1. Abre la consola de Aurora y RDS.
  2. En el panel de navegación, selecciona Grupos de subredes. A continuación, selecciona el grupo de subredes asociado a la instancia de base de datos.
  3. Selecciona Editar.
  4. En la sección Agregar subredes, selecciona la zona de disponibilidad y las subredes privadas.
  5. Selecciona las subredes públicas que desees eliminar y, a continuación, selecciona Eliminar.
  6. Selecciona Guardar.

Activación del despliegue multi-AZ en la instancia de base de datos

Para activar el despliegue multi-AZ para la instancia de base de datos, modifica la configuración de la instancia. La nueva instancia secundaria se inicia en una de las subredes privadas restantes.

Reinicio de la instancia de base de datos con conmutación por error y desactivación del despliegue multi-AZ

Cuando se produce una conmutación por error en la instancia de base de datos, la instancia secundaria se convierte en la instancia principal. En consecuencia, la nueva instancia principal utiliza la dirección IP privada. Una vez que hayas reiniciado la instancia de base de datos con conmutación por error, elimina la nueva instancia secundaria, que ahora se encuentra en la subred pública. Para eliminar la instancia secundaria, establece Despliegue multi-AZ como No para desactivarlo.

Eliminación de la subred pública

Sigue estos pasos:

  1. Elimina la subred pública restante del grupo de subredes.
    Nota: Elimina las subredes del grupo de subredes de Amazon RDS. No es necesario eliminar ninguna subred de la VPC.
  2. Comprueba que solo haya subredes privadas en el grupo de subredes.
  3. Si la instancia de base de datos tenía activado anteriormente el despliegue multi-AZ, vuelve a activar el despliegue multi-AZ.

Información relacionada

Despliegues de clústeres de bases de datos multi-AZ para Amazon RDS

¿Cómo puedo usar una instancia de Amazon EC2 como host bastión para conectarme a una instancia de base de datos privada de Amazon RDS desde un equipo local?