Amazon Web Services (AWS)
Amazon Web Services (AWS)
Amazon Web Services (AWS)
Curso 2024/2025
Índice
i
Amazon Web Services (AWS) Curso 2024/2025
2 Referencias 34
3 Licencia 35
iii
Índice de cuadros
iv
1 Amazon Web Services (AWS)
Amazon Web Services (AWS) es una colección de servicios de computación en la nube pública que en conjunto
forman una plataforma de computación en la nube, ofrecidas a través de Internet por Amazon.
AWS Academy es un programa de AWS que ofrece gratuitamente a las instituciones de educación superior un
plan de estudios de computación en la nube, que prepara a los estudiantes para obtener certificaciones reco‑
nocidas en la industria.
Referencias:
• https://www.awsacademy.com/LMS_Login
AWS Academy Learner Lab es un laboratorio que permite a los alumnos trabajar con algunos de los servicios
de AWS durante un período de tiempo. Cada alumno cuenta con un crédito de 100 dólares que podrá utilizar
en los servicios de la plataforma de AWS que están permitidos dentro del laboratorio.
En esta guía encontrará todos los pasos que necesita realizar para acceder y utilizar la plataforma AWS Academy
Learner Lab.
1
Amazon Web Services (AWS) Curso 2024/2025
A continuación se muestran algunos de los servicios de AWS que vamos a utilizar a lo largo del curso.
• Amazon EC2 (Elastic Compute Cloud). Es un servicio web que proporciona capacidad de cómputo es‑
calable en la nube.
• Amazon S3 (Simple Storage Service). Es un servicio de almacenamiento de objetos. Los objetos se al‑
macenan en buckets y se identifican en forma de pares clave‑valor.
• Amazon EBS (Elastic Block Store). Es un servicio de almacenamiento de bloques. Los volúmenes de EBS
se pueden usar como unidades de disco para las instancias EC2, o como almacenamiento independiente
para otros propósitos.
• Amazon EFS (Elastic File System). Es un servicio de almacenamiento de archivos en red, compatible
con el protocolo NFS (Network File System).
• Amazon RDS (Relational Database Service). Es un servicio de bases de datos administrado por AWS que
permite configurar, utilizar y escalar una base de datos relacional en la nube. Proporciona seis motores de
bases de datos conocidos: Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle y Microsoft SQL Server.
• Amazon VPC (Virtual Private Cloud). Es un servicio que permite crear redes virtuales en AWS.
• AWS IAM (Identity and Access Management). Es un servicio que permite administrar usuarios y grupos
de usuarios, así como sus permisos de acceso a los recursos de AWS.
• AWS KMS (Key Management Service). Es un servicio que permite crear y administrar claves de cifrado.
• Amazon Lambda. Es un servicio de computación en la nube basado en eventos, que permite ejecutar
código sin tener que administrar servidores o contenedores.
• Amazon Elastic Beanstalk. Es un servicio que permite desplegar y escalar aplicaciones web sin tener
que administrar servidores o contenedores.
• Amazon ECS (Elastic Container Service). Es un servicio de orquestación de contenedores administrado
por AWS que permite desplegar y escalar aplicaciones en contenedores de manera sencilla.
• Amazon EKS (Elastic Kubernetes Service). Es un servicio que permite ejecutar Kubernetes en la nube
de AWS.
• AWS Fargate. Es un servicio que permite ejecutar contenedores sin tener que administrar servidores ni
clústeres de instancias de Amazon EC2. Es compatible con ECS y EKS.
• Amazon Lightsail. Es la manera más sencilla de comenzar con AWS para desarrolladores, pequeñas em‑
presas, estudiantes y otros usuarios que necesitan una solución de servidor privado virtual (VPS) sen‑
cilla.
En esta guía encontrará todos los pasos que necesita realizar para crear instancias EC2 en AWS.
• Tutorial básico para crear instancias EC2 en Amazon Web Services (AWS). (pdf)
Desde el curso de AWS Academy iniciamos el laboratorio pulsando en Start Lab y esperamos a que el icono
que aparece junto al texto de AWS se ponga de color verde.
Al pulsar sobre el texto de AWS se nos abrirá una nueva pestaña con la consola de administración de los servicios
de AWS.
1.6.3 Paso 3. Buscamos el botón “Launch Instance” para crear una instancia EC2
La forma más rápida de crear una instancia EC2 es hacerlo a través del botón “Launch Instance” que nos
aparece en el dashboard del servicio EC2.
En este paso podemos asignarle un nombre a la instancia EC2 y añadirle etiquetas con metadatos, que estará
formadas por pares clave‑valor. Estas etiquetas nos van a permitir organizar o filtrar las instancias.
No es obligatorio asignarle un nombre, pero se recomienda hacerlo para poder identificar con facilidad a la
instancia.
En este paso tenemos que seleccionar la AMI (Amazon Machine Image) y la arquitectura (x86 o Arm), que vamos
a utilizar en la instancia EC2.
En este ejemplo vamos a seleccionar la imagen Ubuntu Server 22.04 LTS (HVM), SSD Volume Type, y la arqui‑
tectura 64 bits (x86).
Seleccionamos que vamos a crear una instancia de tipo t2.micro que cuenta con 1 vCPU y 1 GiB de RAM.
En este paso tenemos que seleccionar la clave pública SSH que le vamos a inyectar a la instancia EC2.
Aquí podemos generar un par de claves SSH o podemos utilizar las claves SSH que ya están creadas y asociadas
a nuestra cuenta de usuario en la plataforma AWS Learner Lab.
En este ejemplo vamos a utilizar la clave pública vockey que está asociada a nuestra cuenta de usuario en la
plataforma AWS Learner Lab. La clave privada la descargaremos más adelante desde la plataforma, para poder
conectarnos por SSH con la instancia EC2.
En este paso podemos configurar la red VPC (Virtual Private Cloud) donde se va a crear la instancia, la subred,
etc. En esta práctica no vamos a modificar ninguno de estos parámetros, vamos a utilizar los que aparecen por
defecto.
En este paso tenemos que configurar las reglas del grupo de seguridad. Podemos crear un nuevo grupo de
seguridad o utilizar uno existente.
En este ejemplo vamos a crear un nuevo grupo de seguridad y vamos a utilizar tres reglas para permitir tráfico
SSH, HTTP y HTTPS.
En este paso configuramos cuál será el almacenamiento que utilizará la instancia EC2 que estamos creando.
En este ejemplo no vamos a modificar ninguno de los parámetros que aparecen por defecto y utilizaremos un
disco SSD de 8 GB.
En este paso podemos configurar algunos detalles avanzados de la instancia. Por ejemplo, en el campo User
data podemos indicar comandos o un script que se ejecutará cuando se inicie la instancia. Esta opción nos
permite preparar nuestra instancia para que se inicie automáticamente con el estado deseado.
En este paso podemos revisar la configuración seleccionada y seleccionar el número de instancias que quere‑
mos crear.
En este paso nos aparece un mensaje indicando que la instancia se está creando. Vamos a pinchar sobre el
identificador de la instancia que aparece en el cuadro de color verde.
Cuando pasen unos segundos le aparecerá en la consola la instancia que acaba de crear. Cuando la instancia
muestre que está en estado Running es que está preparada para conectarnos a ella.
1.7 Cómo conectarnos a una instancia EC2 por SSH desde Linux
Cuando la instancia aparezca en estado Running marcaremos el checkbox que aparece al inicio de la línea y
luego pincharemos sobre el texto Connect.
1.7.2 Paso 2. Obtener el comando para conectarnos desde un cliente SSH en Linux
En este paso nos aparece cómo podemos conectarnos a la instancia que acabamos de crear.
Vamos a seleccionar la opción SSH client, y vamos a leer los pasos que tenemos que realizar para conectarnos
a la instancia.
El comando que tenemos que utilizar para conectarnos a la instancia lo podemos copiar en este paso. En el
comando aparece el nombre del archivo .pem de la clave privada, el nombre del usuario y el nombre DNS
público de la instancia.
Ejemplo:
Para descargar la clave tiene que pinchar sobre el texto AWS Details y le aparecerá en la parte derecha la posi‑
bilidad de descargar la clave como un archivo .PEM o .PPK.
En Linux utilizaremos la clave .PEM y en Windows, si utilizamos el cliente PuTTY utilizaremos la clave .PPK.
Cuando descargue la clave privada labuser.pem guárdela en un directorio y desde allí realice los siguientes
pasos.
1 $ mv labuser.pem vockey.pem
• IMPORTANTE: Cambie los permisos el archivo para que solo el propietario tenga permisos de lectura.
• Ejecute el comando que copió en el paso 2 para conectarse por SSH a la instancia EC2 desde un terminal
de Linux. El comando será parecido al este, pero el nombre DNS de la instancia será diferente.
1.8 Cómo conectarnos a una instancia EC2 por SSH desde Windows
Para poder conectar a una instancia EC2 por SSH desde la línea de comandos de Windows o desde PowerShell,
necesitamos modificar la configuración de la clave privada.
Para descargar la clave tiene que pinchar sobre el texto AWS Details y le aparecerá en la parte derecha la posi‑
bilidad de descargar la clave como un archivo .PEM o .PPK.
Cuando descargue la clave se descargará como labsuser.pem, pero te recomiendo que le cambies el nombre
a vockey.pem.
Nos situamos sobre el archivo vockey.pem, hacemos click con el botón derecho y seleccionamos la opción de
Propiedades.
Nos aparece una nueva ventana donde tendremos que seleccionar Quitar todos los permisos hereados de
este objeto.
En el campo de texto Escriba el nombre de objetos para seleccionar escribimos nuestro nombre de usuario.
Nota: En mi caso el nombre de usuario es Administrator, ten en cuenta que tendrás que reemplazar este
nombre por que tengas en tu sistema.
Una vez que escribamos el nombre pinchamos sobre el botón Comprobar nombres.
En esta ventana podemos seleccionar los permisos que queremos dar al usuario sobre el archivo voc‑
key.pem.
En este caso podemos dejar los permisos que aparecen seleccionados por defecto, Lectura y ejecución y Lec‑
tura.
Una vez realizados todos los pasos anteriores pinchamos sobre el botón Aceptar.
Para conectar por SSH podemos abrir un shell de línea comandos o PowerShell y ejecutar el siguiente coman‑
do.
Donde:
• <USUARIO_REMOTO>: es el nombre del usuario con el que nos vamos a conectar a la instancia EC2. Si
hemos utilizado la AMI Ubuntu, el usuario que tenemos que utilizar para conectarnos es ubuntu.
Ejemplo:
1.9 Cómo conectarnos a una instancia EC2 por SSH desde Windows con
PuTTY
Para descargar la clave tiene que pinchar sobre el texto AWS Details y le aparecerá en la parte derecha la posi‑
bilidad de descargar la clave como un archivo .PEM o .PPK.
En nuestro caso vamos a utilizar la aplicación PuTTY para Windows, por lo tanto, necesitaremos descargar la
clave .PPK.
En primer lugar, vamos a descargar e instalar la aplicación PuTTY, que es un cliente SSH para Windows. Puede
descargar la aplicación desde la página web oficial:
• https://www.putty.org
Este paso es opcional, solo lo vamos a realizar si queremos configurar PuTTY para que permita tener una cone‑
xión activa con la instancia durante un largo periodo de inactividad.
Lo que haremos será configurar el cliente PuTTY para que envíe un paquete de keepalive a la instancia cada 30
segundos.
En el panel Category de la izquierda, seleccionamos Connection y en la opción Seconds between keepalives
escribirmos el valor 30.
En el panel Category de la izquierda, seleccionamos Connection y dentro de esta opción seleccionamos SSH
‑> Auth.
Seleccione Browse y busque la clave privada labuser.ppk que se ha descargado del Learner Lab de AWS.
En el panel Category de la izquierda, seleccionamos Session y dentro de esta opción podemos guardar los
datos que hemos configurado para la sesión en el campo de texto Saved Sessions.
En este caso hemos guardado la sesión con el nombre de AWS para que la próxima vez que queramos conectar
con la instancia no tengamos que volver a introducir todos los parámetros.
Una vez que nos hemos situado dentro del directorio, ejecutaremos el comando scp con los siguientes pará‑
metros.
Sintaxis
Vamos a explicar cada uno de los parámetros que tenemos que utilizar en el comando.
• CLAVE_PRIVADA Será la clave privada que hemos descargado del Learner Lab de AWS Academy. En
nuestro caso será vockey.pem
Nota: Tendrá que indicar la ruta completa donde se encuentra la clave privada. En este ejemplo vamos a ejecutar
el comando dentro del mismo directorio donde se encuentra la clave privada.
– IP Pública: 54.224.67.209
– Nombre DNS: ec2-54-224-67-209.compute-1.amazonaws.com
Ejemplo
A continuación, se muestra un comando de ejemplo donde vamos a copiar todos los archivos del directorio
/home/josejuan/lenguaje_de_marcas/ de nuestra máquina local, al directorio /home/ubuntu de
la instancia EC2.
Imporante: Tendrá que indicar la ruta completa donde se encuentra la clave privada. En este ejemplo vamos a
ejecutar el comando dentro del mismo directorio donde se encuentra la clave privada.
Ahora nos vamos a conectar a la instancia por SSH para mover los archivos que hemos copiado en el directorio
/home/ubuntu, al directorio /var/www/html, que es el directorio que utiliza por defecto el servidor web
Apache para servir el contenido web.
Ejemplo
Nota: Tendrá que reemplazar el nombre DNS público por el que tenga su instancia.
Una vez que nos hemos conectado a la instancia EC2 vamos a copiar los archivos que hemos copiado al direc‑
torio /home/ubuntu al directorio /var/www/html.
Importante: Tenemos que ejecutar el comando con sudo para tener privilegios de root.
1.10.4 Paso 4. Cambiamos los permisos de los archivos que acabamos de copiar
Vamos a cambiar el propietario y el grupo de los archivos que acabamos de copiar al directorio /var/www
/html y le vamos a asignar el usuario www-data y el grupo www-data, que son los utiliza el servidor web
Apache.
34
3 Licencia
Esta página forma parte del curso Implantación de Aplicaciones Web de José Juan Sánchez Hernández y su
contenido se distribuye bajo una licencia Creative Commons Reconocimiento‑NoComercial‑CompartirIgual 4.0
Internacional.
35