Cómo usar AWS CLI para administrar la instancia de EC2 [Parte 1]

Cómo usar AWS CLI para administrar la instancia de EC2 [Parte 1]

"AWS le permite administrar todos los servicios y recursos utilizando la interfaz de línea de comandos. Aunque no obtiene una interfaz de usuario gráfica elegante, todavía se considera más profesional y útil. Incluso hay algunas opciones que no puede utilizar utilizando la consola GUI, por ejemplo, habilitando "MFA Eliminar" en el cubo S3 y generar URL previstas para un objeto S3. Antes de comenzar a administrar sus instancias con la AWS CLI, debe configurarla en su sistema. Visite el siguiente artículo para conocer cómo puede configurar las credenciales de AWS CLI en Windows, Linux o Mac."

https: // linuxhint.com/configure-aws-cli-credentials/

Este artículo discutirá las siguientes operaciones que se pueden realizar en EC2 utilizando la interfaz de línea de comandos AWS.

  • Creando un par de claves SSH
  • Creación del grupo de seguridad de instancias
  • Creación de instancia de EC2

Creando un par de claves SSH

Antes de crear una instancia de EC2 en AWS, necesitamos crear una tecla SSH que se configure con la instancia de EC2 para acceder a ella a través de SSH. Use los siguientes comandos en su AWS CLI para generar el par de claves SSH antes de iniciar una instancia de EC2.

Ubuntu@ubuntu: ~ $ AWS EC2 Create-Key-Pair \
--Nombre clave \
--formato de llave

Aquí acabamos de proporcionar el nombre para nuestro par de claves y el formato de clave. Para el formato de clave, puede ir por pem o PPK, dependiendo del sistema operativo. El pem El formato se usa principalmente para acceder al sistema operativo Linux a través de SSH, mientras que el PPK El formato se utiliza para acceder a la máquina Windows a través de RDP.

El comando anterior generará la clave privada en la salida; Debe guardarlo de inmediato, ya que nunca podrá volver a verlo. Debe guardar esta salida en un archivo con el .pem extensión, y se usará para ssh en el caso de que se asocie con.

Creación del grupo de seguridad de instancias

Los grupos de seguridad ayudan a mejorar la seguridad de la red de su instancia de EC2 al permitirle definir el tráfico entrante y saliente para su instancia. El grupo de seguridad actúa como un firewall virtual frente a su instancia de EC2 y se puede utilizar para proteger su instancia de ser secuestrado. Puede especificar rangos de IP y otros grupos de seguridad como fuentes y puede permitir el tráfico en puertos específicos de estas fuentes.

Los grupos de seguridad tienen una limitación: solo puede crear el permitir reglas y el denegar No se pueden crear reglas. Además, los grupos de seguridad son con el estado, lo que significa que si establece una regla entrante para una IP, alcanzará automáticamente la capacidad de salida.

Para crear un grupo de seguridad utilizando la interfaz de línea de comando AWS, use el siguiente comando en el terminal.

Ubuntu@ubuntu: ~ $ AWS EC2 Create-Security-Group \
--Nombre del grupo \
--descripción <“Security Group Description”>

En la salida, solo obtiene la identificación del grupo de seguridad. El grupo recién creado, por defecto, no tiene permisos entrantes y todos los permisos de salida. Puede ver los detalles de su grupo de seguridad como se describe a continuación.

ubuntu@ubuntu: ~ $ AWS EC2 Describa los grupos de seguridad \
--nombres de grupo

Ahora para agregar una regla de entrada al grupo de seguridad, se puede utilizar el siguiente comando.

Ubuntu@ubuntu: ~ $ AWS EC2 Autorize-Security-Group-Insress \
--puerto 22 \
--Protocolo TCP \
--Identificación del grupo \
--CIDR 0.0.0.0/0

En este comando, autoriza a su grupo de seguridad a permitir el tráfico de red desde cualquier IP en el puerto 22. El comando generará la siguiente salida.

Ahora, si volvemos a ejecutar el describir el grupo de seguridad Comando, verá la regla de entrada recién agregada allí.

Creación de instancia de EC2

Crear una instancia de EC2 desde la CLI es una tarea simple; Hay una gran cantidad de opciones que puede especificar al crear la instancia de EC2, que verá una por una en detalle.

Comencemos con la creación de la instancia usando AWS CLI con opciones mínimas. El siguiente comando se puede usar en el terminal para crear la instancia de EC2 con opciones mínimas.

ubuntu@ubuntu: ~ $ AWS EC2 Runstances \
--ID de imagen \
--contar \
--tipo de instancia \
--Nombre clave \
--IDS de grupos de seguridad

Cuando ejecute este comando, obtendrá una salida detallada de la instancia recién creada.

Como puede ver, hay múltiples parámetros especificados en el comando para crear la instancia de EC2, y la siguiente es una descripción detallada de cada parámetro.

El ID de imagen es la identificación de la imagen de la máquina de Amazon o el sistema operativo que desea usar en su instancia. Hay una larga lista de imágenes de máquina disponibles en AWS, y también puede crear su propia imagen y venderla en el mercado comunitario.

El contar La opción se puede usar para especificar el número de instancias EC2 que desea crear utilizando la interfaz de línea de comandos AWS con las mismas configuraciones.

El tipo de instancia La opción se usa para especificar la asignación de recursos como CPU y memoria en su instancia de EC2. AWS proporciona varios tipos de instancias, y puede ver todos estos tipos de instancias visitando el siguiente enlace.

https: // AWS.Amazonas.com/EC2/Instance-Types/

El Nombre clave La opción especifica el nombre del par de claves SSH que necesitamos adjuntar a nuestra instancia. Este par de claves SSH se puede usar para acceder a la instancia de EC2 de forma remota. En la sección anterior, hemos discutido cómo podemos crear un par de teclas SSH utilizando la interfaz de línea de comandos AWS.

El grupo de seguridad La opción se utiliza para especificar una lista de grupos de seguridad que se adjuntarán a la instancia de EC2 iniciada. AWS adjuntará el grupo de seguridad predeterminado con la instancia de EC2 si no se especifica.

Parámetros de EC2 adicionales

Ya hemos explicado muchos parámetros de instancia, pero aún así, hay muchos otros parámetros disponibles. Esta sección discutirá los parámetros más detallados que nos ayudan a configurar la instancia de EC2 recién creada de acuerdo con nuestros requisitos. Estos parámetros se definen con la creación de instancias de EC2, pero son opcionales y no se requieren para especificar todo el tiempo.

Zona de disponibilidad

Cada región de AWS tiene una o más zonas de disponibilidad que son centros de datos separados geográficamente. Ayudan a aumentar la disponibilidad del servicio AWS en una región; Si una zona de disponibilidad en una región cae, las otras zonas de disponibilidad aún operarán.

Cuando se crea una instancia de EC2, AWS se asigna automáticamente una zona de disponibilidad, pero también puede especificarla de acuerdo con su requisito de infraestructura. La zona de disponibilidad se puede especificar utilizando el siguiente parámetro al crear la instancia de EC2 utilizando la interfaz de línea de comandos AWS.

ubuntu@ubuntu: ~ $ AWS EC2 Runstances \
--contar \
--tipo de instancia \
--colocación de la zona de colocación =
--ID de imagen \

Puede ver en la salida que la instancia se inicia en nuestra zona de disponibilidad deseada.

VPC y subred

Por lo general, creamos un VPC separado (Cloud Private Virtual) y subredes para cada nueva aplicación que lanzamos en nuestra cuenta AWS. Esto garantiza un alto nivel de seguridad y permite que todos los recursos se comuniquen sin acceder a la red pública. Si no especifica un VPC, todas las instancias se inician en la subred aleatoria del VPC predeterminado.

Al crear la instancia de EC2 usando la interfaz de línea de comando AWS, puede especificar la subred utilizando el -ID de subred opción.

ubuntu@ubuntu: ~ $ AWS EC2 Runstances \
--Type T2 de instancia.micro \
--subred-id subnet-0d1721ef0b75a675b \
--Image-ID AMI-0CFF7528FF583BF9A \
--Conde 1

Al crear la instancia de EC2, solo necesitamos especificar la ID de subred, y la instancia de EC2 se crea automáticamente en el VPC que la subred pertenece a.

Datos de usuario de EC2

Cuando creamos una nueva instancia, puede especificar algunos script o comandos que desea ejecutar en el inicio, como actualizar el sistema o instalar paquetes de software. Esto es solo algo opcional y no se requiere todo el tiempo, pero en algunos casos puede ser muy útil. Para proporcionar los datos del usuario, debe crear un script bash que se administrará como parámetro al inicializar la instancia de EC2.

Así que abra su terminal y cree un archivo de texto simple en él.

ubuntu@ubuntu: ~ $ sudo nano

Escribamos un script para instalar e iniciar un servidor web Apache en nuestra instancia.

#!/bin/bash
sudo yum install httpd -y
sudo systemctl iniciar httpd

Ahora podemos usar este script de datos de usuario para ejecutar una nueva instancia; Esta instancia tendrá el servidor Apache preinstalado y en ejecución.

Use la IP pública de su instancia EC2 recientemente lanzada para acceder al puerto 80 en su navegador, y mostrará la página de servidor web de Apache predeterminada predeterminada.

Así es como puede usar los datos del usuario para instalar o configurar algo durante el inicio de la instancia.

Conclusión

AWS proporciona la utilidad de la línea de comando para administrar y crear programáticamente las instancias de EC2. Esto también le permite crear recursos como claves SSH, grupos de seguridad y volúmenes de almacenamiento. Puede administrar datos de usuarios de EC2, zonas de disponibilidad y subconjuntos con la ayuda de CLI. La mayoría de los profesionales en la industria de TI prefieren usar la CLI sobre la consola GUI porque no tiene que cambiar entre pestañas y páginas web. Además, la GUI sigue actualizando, lo que hace que sea difícil administrar todos los parámetros y opciones.