You are here: Home » Cursos » Curso Openstack | Introducción

Curso Openstack | Introducción

Saludos comunidad,

Hace ya casi un año que no genero material nuevo en el sitio, esto debido a compromisos académicos y  laborales que han consumido el tiempo que dedicaba a aportar contenido, a partir de hoy haré un esfuerzo para escribir más seguido. Para retomar quiero compartir con todos ustedes un curso de OpenStack completamente abierto para que aprendamos de esta tecnología, sus ventajas, arquitectura e implementación.

Temario:

  1. Introducción
  2. Instalación y Configuración de Keystone
  3. Keystone | Creación de Tenants, Roles y Usuarios

Qué es Openstack?

Es una gran comunidad que desarrolla software libre para la construcción de nubes publicas y privadas de forma rápida, escalable y segura fundada por RackSpace y la NASA.

Los invito a ver el vídeo de Introducción de Openstack presentado por Sandy Walsh @TheSandyWalsh uno de los desarrolladores principales de Openstack.

Si alguno está interesado en tomar los cursos oficiales que ofrecen para openstack pueden ver el catálogo en https://www.openstack.org/marketplace/training/

Recursos Adicionales:

  • Documentación oficial de openstack disponible en: http://docs.openstack.org/
  • Libro OpenStack Cloud Computing Cookbook Second Edition el cual pueden adquirir en amazon http://www.amazon.com/OpenStack-Cloud-Computing-Cookbook-Second-ebook/dp/B00FZMREUM/

Estos dos recursos son el material referencia para el desarrollo del curso.

Cualquier error o sugerencia sobre el curso agradezco enviar los comentarios a través del formulario de contacto.  Manos a la obra!!!

 

Requerimientos:

El siguiente curso está desarrollado para trabajar sobre distribuciones linux basadas en Debian (Ubuntu, Linux Mint, entre otros).

  • Conocimientos básicos en linux, uso de línea de comandos
  • Conocimientos básicos en redes

Nuestro equipo debe tener soporte para virtualización y es recomendado contar con al menos 8 GB de Memoria RAM y mucho espacio libre en disco (+100GB).

Para saber si tenemos soporte para virtualización ejecutamos desde una consola el comando:

grep –color vmx /proc/cpuinfo

Lo cual debe arrojar una salida como esta:

virtualization support

 En algunos casos las opciones de virtualización deben habilitarse desde el BIOS de nuestra máquina.

VirtualBox

Para la creación del laboratorio utilizaremos virtualbox, el cual podemos instalar con el comando:

sudo apt-get install virtual-box

Vagrant:

Vagrant es una herramienta escrita en ruby que permite la creación de entornos virtuales de desarrollo con la capacidad de automatizar tareas.

Para instalar Vagrant debemos ir al sitio oficial http://www.vagrantup.com/downloads.html y descargar la versión correspondiente a nuestro sistema operativo e instalarla.

Vagrant

Realizamos la instalación desde la línea de comandos:

sudo dpkg -i ../Descargas/vagrant_1.3.5_x86_64.deb

Configuración del entorno de trabajo

Una vez instalado Vagrant vamos a definir y a desplegar la máquina virtual que realizará las funciones de identidad es decir Keystone, para esto vamos a crear una carpeta openstackOps y  un archivo llamado  Vagrantfile.

Desde el home de nuestro usuario ejecutamos:

mkdir openstackOps
cd openstackOps/
touch Vagrantfile

Con nuestro editor favorito ya sea vim, nano, gedit o cualquier otro vamos a colocar la siguiente información:

 

Guardamos el archivo.

Una de las recomendaciones es configurar virtualbox para que cree las máquinas virtuales en una partición de disco donde tengamos suficiente espacio ya que vamos a desplegar varias VM’s y por defecto virtualbox las creará en nuestro home.

Abrimos VirtualBox / Archivo / Preferencias

Selección_344

En la sección general establecemos la ruta predeterminada para almacenar las VM’s

Selección_345

Para crear la máquina virtual ejecutamos desde la carpeta openstackOps el siguiente comando:

vagrant up keystone

Durante el proceso se descargará una instancia virtualizada de Ubuntu 12.04

vagrant up keystone

Tras finalizar iniciará una máquina virtual en virtualbox a la cual vamos a acceder con el comando

vagrant ssh keystone

Si todo sale bien debemos ver una pantalla como esta:

Selección_348

Este proceso ha creado una máquina virtual con la siguiente configuración de red:

Tarjeta 1 – NAT  – eth0

Tarjeta 2 – vboxnet1 – eth1: 172.16.0.200/16

Tarjeta 3 – vboxnet2 – eth2: 10.10.0.200/16

Tarjeta 4 – vboxnet3 – eth3: 192.168.100.200/24

Instalación de Ubuntu Cloud Archive

En el servidor keystone ejecutamos los siguientes comandos

sudo apt-get update
sudo apt-get install python-software-properties
sudo add-apt-repository cloud-archive:havana

Si el proceso es exitoso debe mostrar un mensaje como este:

Selección_349

Instalación de MySQL-Server

apt-get install python-mysqldb mysql-server

Durante la instalación debemos ingresar una contraseña para el root de MysQL

Selección_350

Al finalizar la instalación es importante validar el acceso a MySQL con el usuario root y el password establecido, ejecutamos el comando:

mysql -u root -p

Colocamos la contraseña asignada durante la instalación y debe aparecer la consola de MySQL

Selección_351

Salimos de la consola de mysql y editamos el archivo de configuración de MySQL

Editamos el archivo my.cnf y colocamos en el parámetro bind-address la dirección interna del keystone es decir la asignada a la tarjeta eth1

sudo vim /etc/mysql/my.cnf

bind-address            = 172.16.0.200

Guardamos y reiniciamos el servicio.

sudo /etc/init.d/mysql restart

El siguiente paso dotará de algunos parámetros de seguridad al servicio de base de datos.

sudo mysql_secure_installation

Responder a las siguientes preguntas como se muestra en las imágenes.

Selección_355

Selección_356

Finalizado el proceso debe aparecer un mensaje como este:

Selección_357

 

En el próximo capítulo comenzaremos el proceso de configuración del controlador keystone.

Founder of http://hotfixed.net - Co-Founder of @BusyToneGroup and @S3cT0 | Penetration Tester | Security Consultant | Linux | VoIP

http://hotfixed.net