Opción 3: conexión manual de una instancia a una base de datos de RDS mediante la creación de grupos de seguridad
El objetivo de la opción 3 es aprender a configurar manualmente la conexión entre una instancia de EC2 y una base de datos de RDS a partir de la reproducción manual de la configuración de la característica de conexión automática.
Tareas
Antes de empezar
Para completar este tutorial, necesitará lo siguiente:
-
Una instancia de EC2 que esté en la misma VPC que la base de datos de RDS. Puede utilizar una instancia de EC2 existente o seguir los pasos de la tarea 1 para crear una instancia nueva.
-
Una base de datos de RDS que esté en la misma VPC que la instancia de EC2. Puede utilizar una base de datos de RDS existente o seguir los pasos de la tarea 2 para crear una base de datos nueva.
-
Permisos para llamar a las siguientes operaciones:
-
ec2:AssociateRouteTable
-
ec2:AuthorizeSecurityGroupEgress
-
ec2:CreateRouteTable
-
ec2:CreateSecurityGroup
-
ec2:CreateSubnet
-
ec2:DescribeInstances
-
ec2:DescribeNetworkInterfaces
-
ec2:DescribeRouteTables
-
ec2:DescribeSecurityGroups
-
ec2:DescribeSubnets
-
ec2:ModifyNetworkInterfaceAttribute
-
ec2:RevokeSecurityGroupEgress
-
Tarea 1 (opcional): inicialización de una instancia de EC2
nota
El objetivo de este tutorial no es iniciar una instancia. Si ya tiene una instancia de Amazon EC2 y desea utilizarla en este tutorial, puede omitir esta tarea.
El objetivo de esta tarea es iniciar una instancia de EC2 para poder completar la tarea 3, en la que se configura la conexión entre la instancia de EC2 y la base de datos de Amazon RDS. Los pasos de esta tarea configuran la instancia de EC2 de la siguiente manera:
-
Nombre de instancia:
tutorial-instance
-
AMI: Amazon Linux 2
-
Tipo de instancia:
t2.micro
-
Asignar automáticamente IP pública: habilitado
-
Grupo de seguridad con las tres reglas siguientes:
-
Permitir SSH desde su dirección IP
-
Permitir el tráfico HTTPS desde cualquier lugar
-
Permitir el tráfico HTTP desde cualquier lugar
-
importante
En un entorno de producción, tiene que configurar la instancia para que se ajuste a sus necesidades específicas.
Para iniciar una instancia de EC2
Inicie sesión en la AWS Management Console y abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En el panel de EC2, elija Launch Instance (iniciar instancia).
-
En Name and tags (Nombre y etiquetas), ingrese un nombre para identificar la instancia en Name (Nombre). En este tutorial, asigne el nombre
tutorial-instance-manual-1
a la instancia. Si bien el nombre de la instancia no es obligatorio, le ayudará a identificarla más fácilmente. -
En Application and OS Images (Imágenes de aplicaciones y sistema operativo), elija una AMI que se adapte a las necesidades de su servidor web. En este tutorial, se utiliza Amazon Linux.
-
En Instance type (Tipo de instancia), para Instance type (Tipo de instancia), seleccione uno que se adapte a las necesidades de su servidor web. En este tutorial se utiliza un
t2.micro
.nota
Puede usar Amazon EC2 con el nivel gratuito
siempre que su cuenta de AWS tenga menos de 12 meses de antigüedad y elija un tipo de instancia t2.micro
(ot3.micro
en las regiones en las quet2.micro
no esté disponible). Tenga en cuenta que, al lanzar una instancia t3.micro, se establece de forma predeterminada en el modo ilimitado, lo que puede generar cargos adicionales en función del uso de la CPU. -
En Key pair (login) (Par de claves [inicio de sesión]), para Key pair name (Nombre del par de claves), elija el par de claves.
-
En Network settings (Configuración de red), haga lo siguiente:
-
En Network (Red) y Subnet (Subred), si no hizo cambios en la VPC ni las subredes predeterminadas, puede conservar la configuración predeterminada.
Si hizo cambios en la VPC o las subredes predeterminadas, compruebe lo siguiente:
-
La instancia debe estar en la misma región que la base de datos de RDS. De forma predeterminada, solo tiene una VPC.
-
La VPC en la que va a iniciar la instancia debe tener una puerta de enlace de Internet conectada para que pueda acceder al servidor web desde Internet. La VPC predeterminada se configura automáticamente con una puerta de enlace de Internet.
-
Para garantizar que la instancia reciba una dirección IP pública, en Auto-assign public IP (Asignar automáticamente IP pública), compruebe que la opción Enable (Habilitar) esté seleccionada. Si la opción Disable (Deshabilitar) está seleccionada, elija Edit (Editar) (a la derecha de Network Settings [Configuración de red]) y, a continuación, en Auto-assign public IP (Asignar automáticamente IP pública), elija Enable (Habilitar).
-
-
Para conectarse a la instancia mediante SSH, necesita una regla de grupo de seguridad que autorice el tráfico SSH (Linux) o RDP (Windows) desde la dirección IPv4 pública del equipo. De forma predeterminada, al iniciar una instancia, se crea un nuevo grupo de seguridad con una regla que permite el tráfico SSH de entrada desde cualquier lugar.
Para asegurarse de que solo su dirección IP se pueda conectar a la instancia, en Firewall (grupos de seguridad), en la lista desplegable situada junto a la casilla APermitir tráfico SSH desde, seleccione Mi IP.
-
Para permitir el tráfico desde Internet a la instancia, seleccione las siguientes casillas de verificación:
-
Allow HTTPs traffic from the internet (Permitir el tráfico HTTPS desde Internet)
-
Allow HTTP traffic from the internet (Permitir el tráfico HTTP desde Internet)
-
-
-
En el panel Summary (Resumen), revise la configuración de la instancia y, a continuación, elija Launch instance (iniciar instancia).
-
Elija Ver todas las instancias para cerrar la página de confirmación y volver a la consola. El estado inicial de la instancia será
pending
y, a continuación, pasará arunning
.Si se produce un error al iniciar la instancia o el estado pasa inmediatamente a
terminated
en lugar derunning
, consulte Solución de problemas de inicialización de instancias de Amazon EC2.
Para obtener más información acerca de cómo iniciar una instancia, consulte Inicialización de una instancia de EC2 mediante el asistente de inicialización de instancias de la consola.
Tarea 2 (opcional): creación de una base de datos de RDS
nota
El objetivo de esta parte del tutorial no es crear una base de datos de RDS. Si ya tiene una base de datos de RDS y desea utilizarla en este tutorial, puede omitir esta tarea.
El objetivo de esta tarea es crear una base de datos de RDS. Esta instancia se utilizará en la tarea 3 cuando la conecte a la instancia de EC2. Los pasos de esta tarea configuran la base de datos de RDS de la siguiente manera:
-
Tipo de motor: MySQL
-
Plantilla: nivel gratuito
-
Identificador de la instancia de la base de datos:
tutorial-database-manual
-
Clase de instancia de la base de datos:
db.t3.micro
importante
En un entorno de producción, tiene que configurar la instancia para que se ajuste a sus necesidades específicas.
Para crear una instancia de la base de datos MySQL
Abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el selector de regiones (en la parte superior derecha), elija la Región de AWS en la que creó la instancia de EC2. La instancia de EC2 y la instancia de la base de datos deben estar en la misma región.
-
En el panel, elija Create database (Crear base de datos).
-
En Choose a database creation method (Elegir un método de creación de base de datos), elija Easy create (Creación sencilla). Al elegir esta opción, no está disponible la característica de conexión automática para configurar automáticamente la conexión.
-
En Engine options (Opciones del motor), para Engine type (Tipo de motor), elija MySQL.
-
En DB instance size (Tamaño de la instancia de la base de datos), seleccione Free tier (Capa gratuita).
-
En DB instance identifier (Identificador de instancias de bases de datos), ingrese un nombre para la base de datos de RDS. En este tutorial, escriba
tutorial-database-manual
. -
En Master username (Nombre de usuario maestro), deje el nombre predeterminado, que es
admin
. -
En Master password (Contraseña maestra), ingrese una contraseña que pueda recordar para este tutorial y, a continuación, en Confirm password (Confirmar contraseña), vuelva a escribirla.
-
Elija Create database (Creación de base de datos).
En la pantalla Databases (Bases de datos), Status (Estado) de la nueva instancia de la base de datos es Creating (En creación) hasta que la instancia de la base de datos esté lista para usarse. Cuando el estado cambie a Available (Disponible), podrá conectarse a la instancia de la base de datos. Dependiendo de la clase de instancia de la base de datos y de la cantidad de almacenamiento, es posible que la nueva instancia tarde hasta 20 minutos en estar disponible.
Tarea 3: conexión manual de la instancia de EC2 a la base de datos de RDS mediante la creación de grupos de seguridad y su asignación a las instancias
El objetivo de esta tarea es reproducir la configuración de conexión de la característica de conexión automática mediante el siguiente proceso manual: se crean dos grupos de seguridad nuevos y, a continuación, se agrega uno de los grupos de seguridad a la instancia de EC2 y el otro, a la base de datos de RDS.
Para crear dos grupos de seguridad nuevos y asignar uno a la instancia de EC2 y el otro, a la base de datos de RDS
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
Primero cree el grupo de seguridad que va a agregar a la instancia de EC2, como se muestra a continuación:
-
En el panel de navegación, seleccione Grupos de seguridad.
-
Seleccione Crear grupo de seguridad.
-
En Security group name (Nombre del grupo de seguridad), escriba un nombre descriptivo para el grupo de seguridad. En este tutorial, escriba
ec2-rds-manual-configuration
. -
En Description (Descripción), ingrese una breve descripción. En este tutorial, escriba
EC2 instance security group to allow EC2 instance to securely connect to RDS database
. -
Elija Creación de grupo de seguridad. Volverá a este grupo de seguridad para agregar una regla de salida después de crear el grupo de seguridad de la base de datos de RDS.
-
-
Ahora, cree el grupo de seguridad para agregarlo a la base de datos de RDS, como se muestra a continuación:
-
En el panel de navegación, elija Security Groups.
-
Seleccione Crear grupo de seguridad.
-
En Security group name (Nombre del grupo de seguridad), escriba un nombre descriptivo para el grupo de seguridad. En este tutorial, escriba
rds-ec2-manual-configuration
. -
En Description (Descripción), ingrese una breve descripción. En este tutorial, escriba
RDS database security group to allow EC2 instance to securely connect to RDS database
. -
En Inbound rules (Reglas de entrada), elija Add Rule (Agregar regla) y haga lo siguiente:
-
En Type (Tipo), elija MySQL/Aurora.
-
En Source (Origen), elija el grupo de seguridad de la instancia de EC2 ec2-rds-manual-configuration que creó en el paso 2 de este procedimiento.
-
-
Elija Creación de grupo de seguridad.
-
-
Edite el grupo de seguridad de la instancia de EC2 para agregar una regla de salida, como se muestra a continuación:
-
En el panel de navegación, elija Security Groups.
-
Seleccione el grupo de seguridad de instancias de EC2 (que nombró como
ec2-rds-manual-configuration
) y elija la pestaña Outbound rules (Reglas de salida). -
Elija Edit outbound rules (Editar reglas de salida).
-
Elija Add Rule (Agregar regla) y haga lo siguiente:
-
En Type (Tipo), elija MySQL/Aurora.
-
En Source (Origen), elija el grupo de seguridad de la base de datos de RDS rds-ec2-manual-configuration que creó en el paso 3 de este procedimiento.
-
Seleccione Guardar reglas.
-
-
-
Agregue el grupo de seguridad de instancias de EC2 a la instancia de EC2, como se muestra a continuación:
-
En el panel de navegación, seleccione Instances (Instancia[s]).
-
Seleccione la instancia de EC2 y elija Actions (Acciones), Security (Seguridad), Change security groups (Cambiar grupos de seguridad).
-
En Associated security groups (Grupos de seguridad asociados), elija el campo Select security groups (Seleccionar grupos de seguridad), elija ec2-rds-manual-configuration que creó anteriormente y, a continuación, elija Add security group (Agregar grupo de seguridad).
-
Seleccione Guardar.
-
-
Agregue el grupo de seguridad de bases de datos de RDS a la base de datos de RDS, como se muestra a continuación:
Abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Databases (Bases de datos) y seleccione la base de datos.
-
Elija Modificar.
-
En Connectivity (Conectividad), en Security group (Grupo de seguridad), elija rds-ec2-manual-configuration que creó anteriormente y, a continuación, elija Continue (Continuar).
-
En Scheduling of modifications (Programación de modificaciones), elija Apply immediately (Aplicar inmediatamente).
-
Elija Modify DB instance (Modificar la instancia de la base de datos).
Ya completó los pasos manuales que imitan los pasos automáticos que se producen cuando utiliza la característica de conexión automática.
Completó la opción 3 de este tutorial. Si completó las opciones 1, 2 y 3 y ya no necesita los recursos que se crearon en este tutorial, debería eliminarlos para evitar incurrir en gastos innecesarios. Para obtener más información, consulte Tarea 4 (opcional): limpieza.
Tarea 4 (opcional): limpieza
Ahora que completó el tutorial, se recomienda limpiar (eliminar) todos los recursos que ya no desee utilizar. Limpiar los recursos de AWS evita que la cuenta incurra en cargos adicionales.
Si lanzó una instancia de EC2 específicamente para este tutorial, puede cancelarla para dejar de incurrir en los cargos asociados a ella.
Para terminar una instancia mediante la consola
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En el panel de navegación, seleccione Instances (Instancia[s]).
-
Seleccione la instancia que creó para este tutorial y elija Instance state (Estado de instancia), Terminate instance (Terminar instancia).
-
Cuando se le indique que confirme, elija Terminar.
Si creó una base de datos de RDS específicamente para este tutorial, puede eliminarla para dejar de incurrir en los cargos asociados a ella.
Para eliminar una base de datos de RDS mediante la consola
Abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, elija Databases (Bases de datos).
-
Seleccione la base de datos de RDS que creó para este tutorial y elija Actions (Acciones), Delete (Eliminar).
-
Escriba
delete me
en el cuadro y, a continuación, elija Delete (Eliminar).