ipman1971 / terraform

Laboratorios con Terraform

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Laboratorio con Terraform

Este repositorio tiene como fin el aprender los conocimientos básicos para poder generar infraestrutura a partir de código(IAC) mediante el uso de Terraform.

Nuestras prácticas se realizan sobre OpenStack como proveedor de la infraestructura.

Requisitos hardware

En nuestro laboratorio hemos utilizado una maquina dedicada del proveedor Hetzner con las siguientes caracteristicas:

Procesador Almacenamiento Memoria
Intel Core i7-950 2x HDD 2,0 TB SATA Enterprise 6x RAM DDR3 8192 MB

Requisitos software

Sobre la máquina se ha instalado Linux Ubuntu Server 16.04, DevStack versión Newton y Terraform 0.8.7

Instalación de DevStack

Para poder disponer de OpenStack en sobre una unica máquina se ha procedido ha instalar DevStack

Procedimiento de instalación

  1. Crear un usuario stack especifico para DevStack
adduser stack --shell /bin/bash --home /home/stack
  1. Dar capacidadd de sudo al usuario stack
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
  1. Actualizar paquetes del sistema
apt-get update
  1. Instalar git
apt-get install git
  1. Cambiar al usuario stack
su stack
  1. Cambiar al directorio HOME
cd $HOME
  1. Clonar el repositorio de DevStack
git clone https://git.openstack.org/openstack-dev/devstack
  1. Posicionarnos en el directorio devstack
cd devstack
  1. Cambiar a la rama estable para la version Newton de DevStack que deseamos instalar según las versiones posibles indicadas en el repo git. Versiones estables
git checkout stable/newton
  1. Creamos la configuración minima para DevStack creando el fichero local.conf con el siguiente contenido, donde secret debe ser la password del usuario admin que nos da acceso a nuestro Openstack.
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
  1. Lanzar la instalación de devstack y esperar a que finalize
./stack.sh
  1. Acceder a la consola de administración en http://tu-ip-server/dashboard

Requisitos en DevStack

Definimos aqui todos los requisitos necesarios para poder realizar los laboratorios

  1. Creación de un proyecto dedicado con las quotas necesarias.
  2. Usuario para el proyecto con rol de ResellerAdmin.
  3. Imagen Debian 8.7.0 disponible para el proyecto

Laboratorios disponibles

ID Descripción
example-1 Creación de un web-server con ip privada e ip flotante
example-2 Creación de un cluster de webservers con ip privada cuyo número depende del párametro cluster_size
example-3 Creación de un cluster de webservers con ip privada cuyo número depende del párametro cluster_size asociadoa a una zona de disponibilidad y generando un fichero yml con información de las instancias creadas

About

Laboratorios con Terraform

License:Apache License 2.0


Languages

Language:HCL 99.3%Language:Smarty 0.7%