3

Packer: demo

Este es un pequeño recuento de la clase Packer: Demo

En la carpeta scripts estan los archivos “install-docker.sh” y la llave publica “packer-key.pub” que se crea con el siguiente comando.

$ ssh-keygen -f ~/.ssh/packer-key -t rsa

Este comando generará 2 archivos “packer-key” que contiene la llave privada y “packer-key.pub” que contiene la llave publica. La llave publica sera usado por el archivo “aws-ami.json”

Otro requisito previo es que ya se tenga el codigo AMI que se usara en el archivo “aws-ami.json”

Primero se crea una maquina virtual con Centos 7 en la consola del AWS luego ingresas por medio de SSH y configuras el repo de Docker que luego sera usado por el script “install-docker.sh

$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
  --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

Ya teniendo instalado el repo creas la imagen

image

Una vez creada la imagen en la seccion Images --> AMIs en la parte derecha hay una seccion"AMI ID" es lo que se copia en el archivo aws-ami.json en la seccion “source_ami”

image

El codigo “owners” se obtiene del “Account ID” que es la cuenta con la que ingresas a la consola de AWS

image

En el archivo aws-ami.json estan configurada las variables de entorno que
en Windows se crea por medio del Powershell

$env:AWS_ACCESS_KEY_ID="clave"
$env:AWS_SECRET_ACCESS_KEY="clave"

Y se valida con el comando

Get-ChildItem Env:

Tanto el “access_key_id” como el “secret_access_key” se obtienen del archivo “descargar.csv”, en la seccion cuando se creo el usuario en el IAM de la consola de Amazon.

Una vez se tenga los prerequisitos ya podemos validar el archivo aws-ami.json

$ packer validate aws-ami.json

Validamos que no tengamos ningun error de sintaxis.

Luego ejecutamos

$ packer build aws-ami.json

Empezara a crear un AMI en la instancia AWS

image
Escribe tu comentario
+ 2
6

Hola @muchikon
no le veo mucho sentido crear una img manual si el sentido de IaC es crear infraestructura en codigo sin tener que interactuar con la consola

0
27362Puntos
un año

Si es una guia de apoyo al curso de terraform, segun entiendo es una imagen base que se construye una vez, luego llamas a este archivo para desplegar tu infraestructura.

0
4159Puntos
un año

Hola estimados, mi consulta es parecida a la de Oscar, en ese orden de ideas no seria mejor desplegar desde una de las amis por defecto de AWS, y ya sobre el el despliegue si parametrizarla.