Automatiza tus tareas con scripts de Bash en AWS

Automatiza tus tareas con scripts de Bash en AWS

¿Para qué se utilizan los bash scripts?

Los bash scripts permiten provisionar instancias de EC2 mientras estas son creadas. Entre algunas de las posibilidades encontramos la de instalar software, actualizar paquetes o el propio sistema operativo.

¿Cómo crear bash scripts en una instancia de EC2?

  1. Crea un nuevo archivo index.html en tu maquina local.
<!DOCTYPE html>
<html>
    <head>
        <title>Page Title</title>
    </head>
    <body>
        <h1>Page Title</h1>
        <p>
            Lorem ipsum dolor sit amet, consectetur adipisicing elit. Itaque
            enim vitae repellat eos veritatis tempore modi odit dolor a
            voluptas, dignissimos, ea libero molestias! Consequatur at eum
            nostrum repellendus nesciunt nemo, laudantium et fugiat, ut modi
            doloribus dicta tenetur, ratione ad neque quae nihil voluptatem cum
            quas soluta. Ut, qui.
        </p>
        <p>
            Porro in laboriosam nemo molestiae, reiciendis animi dolorem
            voluptatibus officiis, laudantium ducimus fugit blanditiis vero nam
            enim doloribus ab sit quaerat perferendis quasi corrupti delectus
            voluptatem? Blanditiis eius, inventore fugit ducimus aspernatur
            tempora repudiandae dolorum sequi rem ut ab, ad, odio temporibus
            cumque! Labore incidunt non iste nam, saepe. Recusandae.
        </p>
        <p>
            Eum, odit? At quae animi suscipit tenetur. Fugit ea modi voluptates
            consequuntur, sapiente nemo fugiat, incidunt deserunt atque, sequi
            voluptate placeat magni nulla quia consequatur. Assumenda,
            exercitationem incidunt nobis a quia libero, odit ad temporibus
            numquam rerum explicabo animi, accusantium dolor impedit consectetur
            aliquid magnam repellendus adipisci? Tenetur, iste iusto.
        </p>
    </body>
</html>
  1. Crea un nuevo bucket y sube el archivo index.html que acabas de crear.
  2. Crea un nuevo role con privilegios (policies) AmazonS3FullAccess.
  3. Crea una nueva instancia EC2 con el role que acabas de crear, el siguiente bash script dentro de Advanced Details > User data > As text dentro del paso 3 que corresponde a los detalles de configuración de la instancia y el puerto http abierto.
#!/bin/bash
yum update -y
yum install httpd -y
service httpd start
chkconfig httpd on
cd /var/www/html/
aws s3 cp s3://nombre_de_tu_bucket/index.html .
  1. Espera a que la instancia se haya terminado de inicializar (este proceso tardará mas por el script que esta ejecutándose).
  2. Una vez realizada esta operación accede en el browser al url http://ip_de_la_instancia.