Está en la página 1de 121

OPENSTACK

Icehouse

Cloud Computing Open Source


Todo lo que necesitas saber sobre la ltima versin de OpenStack Icehouse.

Jorge Guerrero Garrido

OPENSTACK ICEHOUSE

Curso 13/14

Este proyecto est creado con la intencin de iniciar a cualquier persona sin ningn
conocimiento previo de OpenStack o Cloud Computing en este nuevo mundo en el cual
todava queda mucho por inventar, OpenStack es todava muy joven pero tiene un potencial
increble, est en contrastante desarrollo por una gran comunidad respaldada por las ms
grandes empresas del sector informtico.
Mi nombre es Jorge Guerrero Garrido y soy alumno del instituto Jerezano IES Romero Vargas
donde finalizo dos aos de estudio con este proyecto, el cual espero que sirva de ayuda para
cualquier persona que decida comenzar su andadura en OpenStack. El problema fundamental
que tiene OpenStack es la poqusima documentacin que existe en espaol, este problema
cada vez es menor, ya que la comunidad de habla hispana est manifestando un aumento en
los ltimos aos.
En este documento vamos a repasar desde los aspectos ms bsicos del Cloud Computing
hasta los aspectos ms especficos de OpenStack y haremos estudios de los diferentes tipos de
despliegues.
Espero que disfrutis con este documento tanto como yo he disfrutado desarrollndolo.
Es la hora de OpenStack y est claro que el mundo de la virtualizacin camina en ese sentido,
termino con una frase que me encanta.

Lo que no se prev con la cabeza se aguanta con la espalda.

Este documento est ntegramente sujeto a licencia Creative Commons Reconocimiento


NoComercial CompartirIgual (by-nc-sa): No se permite un uso comercial de la obra original ni de las
posibles obras derivadas, la distribucin de las cuales se debe hacer con una licencia igual a la que regula
la obra original.

1
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

OpenStack
Captulo 1. OpenStack ................................................................................................................... 5
Cloud Computing....................................................................................................................... 5
Qu es OpenStack?.................................................................................................................. 6
Por qu OpenStack? ................................................................................................................ 7
Reduccin de costes con OpenStack ......................................................................................... 8
Requisitos mnimos de OpenStack ............................................................................................ 9
Historia de OpenStack ............................................................................................................. 10
Componentes OpenStack ........................................................................................................ 11
Arquitectura conceptual ......................................................................................................... 13
Arquitectura de servicios ........................................................................................................ 15
Dashboard (Horizon) ........................................................................................................... 15
Compute (Nova) .................................................................................................................. 16
Object Storage (Swift) ......................................................................................................... 19
Block Storage (Cinder) ......................................................................................................... 20
Image Storage (Glance) ....................................................................................................... 22
Identity (Keystone) .............................................................................................................. 24
Networking (Neutron) ......................................................................................................... 25
Orchestration(Heat) ............................................................................................................ 27
Telemetry (Ceilometer) ....................................................................................................... 28
Database service (Trove) ..................................................................................................... 29
Conocimientos bsicos de compute (Nova) ............................................................................ 30
Hipervisores......................................................................................................................... 30
Usuarios y proyectos (Tenants) ........................................................................................... 32
Imgenes e instancias ......................................................................................................... 32
Lanzar una instancia ............................................................................................................ 32
Tipos de almacenamiento ................................................................................................... 33
Conocimientos bsicos de Keystone ....................................................................................... 34
TOKENS ................................................................................................................................ 35
Conceptos bsicos de Glance .................................................................................................. 37
Conceptos bsicos de Swift ..................................................................................................... 37
OpenStack en nuestras aulas ...................................................................................................... 38
Utilizacin de equipos fsicos .................................................................................................. 39
2
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Utilizacin de mquinas virtuales ........................................................................................... 40


Utilizacin de IaaS ................................................................................................................... 41
Metodologa de uso por el alumnado ..................................................................................... 42
Captulo 2: OpenStack en IES Romero Vargas............................................................................. 43
Ventajas e Inconvenientes ...................................................................................................... 43
Adaptacin de medios para 1 Gbps ........................................................................................ 44
Por qu no utilizo Router Gbps? ....................................................................................... 44
Proyectos para el despliegue de OpenStack en IES Romero Vargas ....................................... 45
Proyecto 1 (Ms austero) .................................................................................................... 45
Proyecto 2 (Utilizando todos los equipos del IES) ............................................................... 49
Proyecto 3 (Implementacin ptima de OpenStack) .......................................................... 54
Captulo 3: Amazon EC2 .............................................................................................................. 59
Qu es Amazon EC2? ............................................................................................................. 60
Historia .................................................................................................................................... 60
Componentes principales de Amazon EC2.............................................................................. 61
Amazon Machine Images e instancias ................................................................................ 61
Regiones y Zonas de disponibilidad .................................................................................... 62
Almacenamiento ................................................................................................................. 63
Bases de Datos .................................................................................................................... 64
Redes y Seguridad ............................................................................................................... 64
Monitoreo, Auto Scaling y balanceo de carga .................................................................... 65
AWS Gestin de Identidades y Acceso ................................................................................ 65
Interfaces disponibles EC2 .................................................................................................. 65
Cmo se le cobra por EC2? .................................................................................................... 66
Probemos Amazon EC2 ........................................................................................................... 67
Captulo 4. Instalaciones de OpenStack. ..................................................................................... 80
TryStack ................................................................................................................................... 80
DevStack (OpenStack IceHouse) ............................................................................................. 82
Instalacin de OpenStack con diferentes nodos ..................................................................... 88
Captulo 5. Administracin y utilizacin de OpenStack............................................................... 94
Gestin de imgenes ............................................................................................................... 94
Formato del disco ................................................................................................................ 94
Formato del contenedor ..................................................................................................... 95
Crear una Imagen ................................................................................................................ 96
Grupos de seguridad ............................................................................................................... 99
Pares de claves .................................................................................................................. 101
3
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Sabores (Flavors) ................................................................................................................... 102


Administracin de instancias ................................................................................................ 104
Lanzar una instancia .......................................................................................................... 104
Instantnea (Snapshot) ..................................................................................................... 106
Acciones para instancias ................................................................................................... 107
Gestin y creacin de Volmenes ......................................................................................... 108
Gestin de Redes (Neutron) .................................................................................................. 110
Topologa de Red............................................................................................................... 112
Gestin de usuarios y proyectos ........................................................................................... 113
Proyectos ........................................................................................................................... 113
Usuarios............................................................................................................................. 115
Conclusiones y agradecimientos ............................................................................................... 117
Bibliografa ................................................................................................................................ 118
Glosario ..................................................................................................................................... 119

4
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Captulo 1. OpenStack
OpenStack es una coleccin de tecnologas Open Source que proporcionan un software para el
despliegue escalable de de nubes pblicas y privadas. OpenStack proporciona Infraestructura
como Servicio IaaS (Infrastructure as a Service) y es un proyecto que se inici en el ao 2010
por la empresa Rackspace Cloud y por la agencia espacial norteamericana, NASA. Actualmente
ms de 200 empresas se han unido al proyecto, entre ellas se encuentran algunas como Intel,
Canonical, Red Hat, AT&T, Dell, Rackspace, Cisco. Podemos ver la impresionante lista en el
siguiente enlace https://www.openstack.org/foundation/companies/
OpenStack desarrolla dos proyectos relacionados:
OpenStack Compute, que proporciona recursos computacionales a travs de mquinas
virtuales y gestin de la red.
OpenStack Object Storage, que proporciona un servicio de almacenamiento de objetos
redundante y escalable.
OpenStack puede ser desplegado en una gran variedad de entornos desde una pequea
empresa hasta un gran CPD adems de grandes proveedores de servicio.

Cloud Computing
La computacin en la nube son servidores normalmente accesibles desde Internet encargados
de atender las peticiones en cualquier momento mediante una conexin a internet desde
cualquier dispositivo mvil o fijo ubicado en cualquier lugar, algunas de las caractersticas del
cloud computing son las siguientes:

Servicio a demanda: Los recursos de software o hardware se ofrecen como servicio a


los usuarios.

Accesible a travs de la red: Normalmente internet.

Agrupacin de recursos: Recursos se agrupan en diferentes grupos:


Almacenamiento, memoria RAM, cores, etc.

Independencia de recursos: Capacidad de aislar trfico, datos o configuraciones de


usuarios utilizando el mismo software.

Escalabilidad y Elasticidad: Permite ajustar los recursos utilizados a la demanda.

Pago por uso: Permite ajustar los costes de explotacin al uso de los recursos.

5
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

En el entorno de Cloud computing podemos distinguir entre varios tipos de cloud:

Software as a Service (SaaS). La forma ms conocida de cloud en la que todas las


aplicaciones de software se encuentran en la nube y el usuario suele acceder a ellas
mediante un simple navegador web. Algunos ejemplos son moodle, redes sociales o
correo web.

Platform as a Service (PaaS). Aplicacion completa para el desarrollo ofrecida como


servicio en la nube (Google App Engine, Nitrous IO..)

Infraestructure as a Service (IaaS). La evolucin de la infraestructura clsica de


servidores fsicos en las empresas, sustituyndolos por servidores virtuales. Amazon
EC2 (Elastic Compute Cloud) y las implementaciones de software libre Opennebula y
Eucalyptus.

Una de las clasificaciones ms tpicas es dependiendo del entorno donde se despliega de


manera que los podemos clasificar en:

Pblicos. Cuando los servicios ofrecidos por la nube son servidos por empresas
externas.
Privados. Cuando los servicios ofrecidos se manejan por un slo cliente que controla
las aplicaciones que se ejecutan.
Hbridos. Que es una solucin que combina las dos anteriores. Utilizando una API
comn.

La utilizacin del IaaS en el mbito empresarial es un mtodo de trabajo que se implantar


progresivamente dada sus grandes ventajas y ahorro de costes, sustituyendo as sus
propios servidores fsicos por servidores virtuales alojados en empresas externas, las
cuales gestionan y mantienen los servidores.
Empresas en las cuales por el tratamiento de datos de alto nivel de confidencialidad no es
posible o poco aconsejable confiar en una empresa externa, de ah nacen los cloud
privados e hbridos, ya que de esta manera todos los datos y recursos o parte de ellos los
gestionara la propia empresa evitando el riesgo de no controlar directamente los
servidores.

Qu es OpenStack?
OpenStack es un software Open Source usado para el despliegue de clouds pblicas y privadas.
OpenStack representa tanto a una comunidad y un proyecto de Software Libre, como un
software para ayudar a las organizaciones a ejecutar sus propios clouds para computacin o
almacenamiento virtual.
La finalidad con la que nace OpenStack es la de proporcionar una solucin de open source
para el despliegue de cloud pblicos y privados con el que conseguir la mxima escalabilidad y
elasticidad, con total independencia de ninguna empresa de tal manera que cualquier usuario
o empresa puede colaborar, opinar o desarrollar para este proyecto que llamamos OpenStack.

6
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Por qu OpenStack?
Una de las preguntas que pueden surgir al comenzar a hablar de OpenStack es Qu
conseguimos desplegando OpenStack? Por qu OpenStack?
Para intentar responder a esta pregunta a continuacin se muestran algunos de los muchos
beneficios o posibilidades que tendra la implementacin de OpenStack.

Recursos virtualizados (CPU, memoria, discos, interfaces de red): Mejor eficiencia en


el uso de los componentes dependiendo de la demanda de recursos.

Administracin de Redes: Asignacin de IP y VLAN adaptada a nuestras necesidades


sin necesidad de ningn dispositivo.

Permite balanceo de carga, cortafuegos y redes privadas virtuales (VPN).

Limitacin de velocidad y autentificacin: Pudiendo limitar la velocidad o ciertas


caractersticas solo a los usuarios permitidos.

Masivamente escalable: OpenStack naci para ser escalable 100%, si necesitamos


mayor capacidad de cmputo simplemente aadimos un nodo ms.

Administracin de imgenes: Fcilmente podremos almacenar, importar, compartir


y utilizar cualquier imagen almacenada en el servidor.

Gestin de VM: Podremos Iniciar, suspender, cambiar el tamao, terminar instancias


desde una sencilla interfaz y mientras las mquinas estn corriendo.

Grupos de seguridad: Flexibilidad para asignar y controlar el acceso a las instancias


mediante la creacin de grupos de seguridad.

VNC a travs del navegador: Rpido y totalmente compatible.

Tus datos permanecern en tu empresa y en empresas de terceros.

7
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Reduccin de costes con OpenStack


Una de las razones fundamentales por la que creo una buena opcin el despliegue tanto en
una gran empresa, as como pequea o incluso para implementar en universidades o centros
de formacin es que si implementacin conlleva una gran reduccin de costes. Algunos de los
componentes fundamentales en los que ahorraramos dinero seran los siguientes:

No tendramos que mejorar el hardware de los equipos de los usuarios ya que estn
virtualizados.

Los usuarios tendrn todas sus aplicaciones y datos en el servidor as que podrn
trabajar desde cualquier equipo de la empresa.

Totalmente compatible, podremos ejecutar cualquier aplicacin ya que se ejecutara


en el servidor y no en los equipos.

Equipos baratos y con pocos recursos para los usuarios (equipos antiguos o raspberry
pi) ya que todo el trabajo se ejecutar en el servidor.

Equipo fcilmente remplazable en caso de problema.

La cantidad de nodos operativos depende de la demanda lo que conlleva un


importante ahorro de luz.

No tendremos que pagar licencias SOFTWARE LIBRE!

Ningn software adicional para copias de seguridad.

No es necesario usar RAID lo cual conlleva un gran ahorro en discos duros.

Los usuarios podr ejecutar cualquier tipo de aplicacin en sus equipos sin importar las
caractersticas de esta, ya que se ejecutar en el servidor y no en sus equipos.

8
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Requisitos mnimos de OpenStack


Uno de los problemas fundamentales de OpenStack es fundamentalmente la gran cantidad de
recursos necesarios para su correcta implementacin, los recursos lgicamente debern de ser
mayores cuando mayor queramos que sea el rendimiento del cloud.
Para el despliegue de OpenStack como mnimo necesitamos dos nodos, un nodo controlador y
un nodo de computacin para los servicios compute y el Servicio de imagen y objeto, cuenta,
contenedores, y los servidores proxy para almacenamiento de objetos.
Servidor
Nodo controlador (Corren
los servicios network,
volumen,API, Scheduler y
imagen )

Hardware recomendado
Procesador : 64-bit X86
Memoria RAM: 12 GB
Espacio disco: 30 GB (SATA,
SAS, o SSD)

Notas
Se recomienda 2 NICS
aunque no es obligatorio. Un
servidor quad core con 12
GB de RAM debera de ser
suficiente para el nodo
controlador.

Volume storage: 2 Discos de


2 TB (SATA) para los
volmenes aadidos a los
nodos de computacin
Network: 1 interfaz de red 1
Gbps (NIC)
Nodos de computacin

Procesador : 64-bit X86


Memoria RAM: 32 GB
Espacio disco: 30 GB (SATA,
SAS, o SSD)
Network: 2 interfaces de red
1 Gbps (NIC)

Con 2 GB RAM puedes lanzar


una instancia con el sabor
m1.small en un nodo o tres
instancias m1.tiny sin
memoria Swap, as que 2 GB
RAM debera ser lo mnimo
para entorno de pruebas.
Como curiosidad en
Rackspace utilizan 96 GB de
RAM para los nodos de
computacin en el
despliegue de OpenStack

9
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Historia de OpenStack
A mediados de 2010 se produjo un evento determinante en el mundo del software de
Infraestructura como Servicio (IaaS). Rackspace y la NASA anunciaban de manera conjunta que
estaban desarrollando un nuevo software de IaaS que vena a solucionar los problemas que la
NASA le haba encontrado a Eucalyptus, y a convertirse en una alternativa real a Amazon Web
Services.
Este nuevo proyecto pretenda solucionar los problemas de Eucalyptus tales como que no es
se escala y que no es realmente de cdigo abierto. Al parecer Eucalyptus est pensado como
un producto completo para unas necesidades concretas: La Nube Privada. Sin embargo, la
NASA buscaba algo que escalase a lo a lo grande: Un milln de servidores o 60 millones de
mquinas virtuales. Para conseguir eso, es necesario reconstruir Eucalyptus prcticamente
desde 0 y modificarlo de tal manera que soporte ese nivel de escalado. Teniendo en cuenta
que Eucalyptus no era un proyecto 100% libre la NASA decidi que no poda meter recursos en
algo que no controlaba.
As que OpenStack naci como una alternativa completamente abierta al amparo de
Rackspace y gran parte de la industria. A diferencia de Eucalyptus no es un producto, sino un
Framework. Es decir, puede manipularse de tal manera que puede adaptarse a las
necesidades de los clientes. Y por supuesto todo el cdigo se encuentra disponible bajo
licencia Apache 2.0.
El lanzamiento fue todo un ejemplo de cmo presentar en sociedad un producto. Consiguieron
pasar de la nada al infinito en un instante. Todo el mundo hablaba de OpenStack. OpenStack
no pas inadvertido para las grandes empresas tecnolgicas del mundo que no tardaron en
respaldar el proyecto, entre ellas encontramos:

La primera release disponible de OpenStack llamada Austin, decepcion un poco al mundo que
haba nacido en torno a OpenStack, pero esto permitio dar esperanzas y motivar ms el
desarrollo del proyecto, era la primera vez que tenan algo palpable de este gran proyecto. As
que el proyecto OpenStack creci a una velocidad de vrtigo con su ltima relase llamada
Icehouse dejando atrs ya ocho relases diferentes y con la vista puesta en el horizonte con el
desarrollo de Juno que ver la luz en octubre de 2014.
10
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Componentes OpenStack
Conforme avanza el desarrollo de OpenStack aumentan el nmero de componentes y las
funcionalidades de este proyecto en la ltima versin disponible de OpenStack cuenta ya con
un total de 10 componentes con funcionalidades tan diferentes como el almacenamiento de
volmenes o la ejecucin de mquinas virtuales. La ltima versin Icehouse contar con los
siguientes componentes.
Servicio
Dashboard

Nombre del Proyecto


Horizon

Descripcin
Dashboard ("Horizon"):
proporciona una interfaz de
usuario modular, basada en la
web, para la gestin de todos los
servicios de OpenStack.

Compute

Nova

Networking

Neutron

Proporciona mquinas virtuales


bajo demanda. Similar al servicio
EC2 de Amazon.
Permite la conectividad de la red
entre un servicio y otro
OpenStack. Proporciona una API
para que los usuarios puedan
definir las redes y los archivos
adjuntos en ellos.

Almacenamiento
Object Storage

Swift

Block Storage

Cinder

Identity

Servicios compartidos
Keystone

Image

Glance

Telemetry

Ceilometer

Proporciona almacenamiento de
objetos. Swift nos permite
almacenar y/o recuperar ficheros,
varias compaas ofrecen
almacenamiento basado en Swift.
Cinder proporciona una
infraestructura para la gestin de
volmenes en OpenStack. En su
origen fue un componente
llamado Nova nova-volumen, pero
se ha convertido en un proyecto
independiente desde el
lanzamiento de Folsom. Es similar
a Elastic Block Storage (EBS) de
Amazon.
Proporciona servicios de
autenticacin y autorizacin a
todos los servicios de OpenStack.
Proporciona un catlogo y un
repositorio de imgenes de discos
virtuales.
Monitoriza y mide la el consumo de
recursos del cloud para su
posterior evaluacin o para una
facturacin.

11
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Orchestration

Database
Service

Servicios de alto nivel


Heat

Trove

Curso 13/14

Organiza mltiples aplicaciones en


la nube compuesta utilizando
cualquiera
el formato de la plantilla CALIENTE
nativo o la AWS CloudFormation
formato de la plantilla, tanto a
travs de una API REST-OpenStack
nativa y un
API Query compatible con
CloudFormation.
Proporciona servicios de bases de
datos escalables como servicios
permite tanto bases de datos
relacionales como no relacionales.

12
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Arquitectura conceptual
El lanzamiento de una mquina virtual o una instancia implica muchas interacciones entre los
diferentes servicios de OpenStack. El siguiente diagrama muestra la arquitectura conceptual
tpica en el lanzamiento de una instancia en Icehouse.

Nova almacena y recupera imgenes de discos virtuales y sus datos asociados y lanza las
instancias.
Glance almacena las imgenes en un directorio en disco, pero puede hacerlo a travs del
servicio Swift.
El servicio Keystone es el encargado de autentificar todos los servicios, es el encargado de que
cada usuario o servicio solo tenga acceso a sus recursos.
El servicio Swift es el encargado de proporcionar almacenamiento tanto para imgenes como
para copias de seguridad adems de otros servicios.
El servicio Cinder es el encargado de la gestin de volmenes y el aprovisionamiento de
volmenes a la instancia adems del realizado de copias de seguridad.

13
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

El servicio Neutron es el encargado de permitir la conectividad de la red tanto a la instancia


como entre los servicios de OpenStack.
Horizon proporciona un frontal grfico basado en web para la gestin del resto de servicios de
OpenStack.
Ceilometer se encarga de medir el consumo de las instancias con fines estadsticos, para su
posterior evaluacin o para una facturacin en caso de ser una empresa que preste un
determinado servicio.
Por ultimo Heat proporciona total compatibilidad al cloud por ejemplo con AWS.

14
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Arquitectura de servicios
En este apartado vamos a repasar todos los componentes de OpenStack de una manera
detallada para conocerlos mejor.

Dashboard (Horizon)
Horizon es una aplicacin web modular desarrollada con el framework de Python Django, cuyo
objetivo principal es proporcionar una interfaz a los servicios de OpenStack al administrador
del cloud y a los usuarios.
Mediante la utilizacin de Horizon podemos conseguir el la mxima funcionalidad para ello
debemos de usar la consola de comandos pero si nos proporciona una manera fcil de
administrar nuestro cloud.

Cmo consigue esto Horizon?

Horizon despliega a travs del mdulo de Apache mod_wsgi, el cual implementa la


interfaz WSGI que permite al servidor Apache ejecutar aplicaciones Python. El cdigo
de Horizon est separado en dos mdulos Python reutilizables, uno de ellos mantiene
toda la lgica de la aplicacin y es el encargado de interactuar con varias de las APIs
de OpenStack, mientras que el otro es el encargado de la presentacin, permitiendo
fcilmente la adaptabilidad e integracin con la apariencia del sitio web.
Una base de datos. Horizon almacena muy pocos datos, ya que utiliza los datos del
resto de servicios.

Horizon nos permite poder acceder a las instancias simplemente utilizando el navegador web
lo cual es tremendamente til, ya que no necesitaremos ms para trabajar como cliente de
OpenStack solo un navegador web.

15
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Compute (Nova)
El servicio Compute es el controlador de estructura cloud computing, que es la parte principal
de un sistema de IaaS. Lo utilizan para alojar y administrar sistemas de computacin en nube.
La parte principal de este mdulo est desarrollada en python.
Compute interacta con con el servicio de identificacin (Keystone) para la autentificacin, con
el servicio de imgenes (Glance) para la aprovisionarse de imgenes y con Dashboard para
interactuar con el usuario y para la administracin. El acceso a las imgenes es limitado por
proyecto y usuario, podemos limitar tambin las cuotas en un determinado proyecto, como
por ejemplo definir un nmero mximo de instancias para un determinado proyecto.
API

Nova-api: Es la encargada de aceptar y responder las llamadas del usuario final a la


API de nova-compute. El demonio nova-api soporta la API de OpenStack, la API EC2 de
Amazon y la API especial de administracin (para usuarios con privilegios que realicen
tareas administrativas).
Nova-api-metadata: Acepta solicitudes de metadatos de instancias. El servicio novaapi-metadata generalmente solo se utiliza cuando se ejecuta en modo multi-host con
instalaciones nova-network.

Ncleo de computacin

Nova-compute: El demonio nova-compute es el principal encargado de crear y


acabar con las mquinas virtuales (instancias) utilizando para ello las APIs del
hipervisor utilizado. nova-compute utiliza libvirt para KVM/QEMU, XenAPI para
XenServer/XCP y VMwareAPI para Vmware.

Nova-scheduler: El domonia Nova-scheduler es conceptualmente la pieza de cdigo


ms simple de Nova. A partir de un mensaje de solicitud de creacin de una instancia,
determina qu nodo de OpenStack debe ejecutar dicha instancia de acuerdo a un
algoritmo prevAMIente seleccionado. La eleccin se realiza entre todos los nodos que
ejecutan el demonio nova-compute.

nova-conductor: Este mdulo pretende evitar el acceso directo de nova-compute a


la base de datos, este servicio es el encargado de hacer de intermediario entre novacompute y la base de datos, evitando as problemas y agilizando las actualizaciones.

Redes para VMs

Nova-network: El demonio es muy parecido a los demonios nova-compute. Acepta


tareas de red desde la cola de mensajes y realiza ciertas que modifican el estado de la
red, como por ejemplo configurar una interfaz bridge cambiar las reglas de iptables.
Esta funcionalidad se est migrando a OpenStack Networking (Neutron), que es un
servicio de OpenStack independiente.

16
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

nova-dhcpbridge script: Es el Script encargado de almacenar las direcciones IP y la


informacin de la red en la base de datos. Esta este apartado est migrando a
OpensTACK Networking (Neutron) el cual implementa un nuevo script.

Nova nos permite acceder y administrar el cloud mquinas virtuales mediante la consola de
texto como lo haramos en (GNU/Linux) o mediante la consola grfica.
Lo ms aconsejable para la administracin siempre es la consola de texto, ya que consume
mucho menos recursos que Horizon, aunque tiene el inconveniente de que es ms difcil de
gestionar y se requieren mayores conocimientos.
Interfaz de consola
Para el aceso a las instancias mediante el navegador con una conexin VNC, algo que es una de
las grandes ventajas de OpenStack, ya que podemos acceder a nuestras instancias tan solo
teniendo un simple navegador web.
Para ello se ejecutan los siguientes demonios:

nova-consoleauth: Se encarga de autorizar tokens para usuarios que los proxies de


consola proporcionan. Los servicios nova-novncproxy y nova-xvpnvcproxy deben estar
en ejecucin para que los proxis de consola puedan prestar servicio.
nova-xvpnvncproxy: proporciona un proxy para el acceso a las instancias en
ejecucin a travs de un Conexin VNC. Soporta clientes novnc basadas en navegador.
nova-xvpnvncproxy: Proporciona un proxy para acceder a instancias en ejecucin a
travs de un VNC. Soporta un cliente Java diseado especficamente para OpenStack.
Nova-cert: Es el encargado de gestionar los certificados x509.

Cliente mediante lnea de comandos

nova client: Permite enviar comandos tanto al administrador como al usuario final.
nova-manage: Permite a los administradores del cloud de enviar comandos para su
administracin.

17
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Comandos de Nova
En la siguiente tabla se muestran algunos de los comandos que podemos utilizar para la
administracin de Nova.
Descripcin
Listar instancias
Listar imgenes

Comando
$ nova list
$ nova image-list

Listar Sabores

$ nova flavor-list

Lanzar una instancia usando el nombre de una


imagen y de un sabor

$ nova boot --image IMAGE --flavor FLAVOR


INSTANCE_NAME
$ nova boot --image cirros-0.3.1-x86_64-uec -flavor m1.tiny \
MyFirstInstance

Acceder a una instancia

# ip netns
# ip netns exec NETNS_NAME ssh USER@SERVER
# ip netns exec qdhcp-6021a3b4-8587-4f9c8064-0103885dfba2 \
ssh cirros@10.0.0.2
Nota: En CirrOS la contrasea del usuario cirros
es
Note, en CirrOS la contrasea del usuario cirros is
"cubswin:)" sin comillas.
$ nova show NAME

Ver detallaes de instancias

$ nova show MyFirstInstance

Ver el log de una instancia


Asignar metadatos a una instancia

$ nova console-log MyFirstInstance


$ nova meta volumeTwoImage set newmeta='my
meta data'

Crear un snapshot

$ nova image-create volumeTwoImage


snapshotOfVolumeImage
$ nova image-show snapshotOfVolumeImage

Pausar, suspender, parar, reanudar, redimensionar, reconstruir, reiniciar una instancia


$ nova pause NAME
$ nova pause volumeTwoImage
Quitar Pausa
$ nova unpause NAME
Pause

Suspender

$ nova suspend NAME

Unsuspend

$ nova resume NAME

Parar

$ nova stop NAME

Empezar

$ nova start NAME

Reanudar

$ nova rescue NAME

Redimensionar

$ nova resize NAME FLAVOR


$ nova resize my-pem-server m1.small
$ nova resize-confirm my-pem-server1

Reconstruir

$ nova rebuild NAME IMAGE

18
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

$ nova rebuild newtinny cirros-qcow2


Reiniciar

$ nova reboot NAME


$ nova reboot newtinny

Introducir datos de usuario y archivos en una


instancia.

$ nova boot --user-data FILE INSTANCE


$ nova boot --user-data userdata.txt --image
cirros-qcow2 \
--flavor m1.tiny MyUserdataInstance2
Para validar que el archivo est all, ssh en la
instancia y mirar el fichero /var/lib/cloud.
Introducir un par de claves en una instancia y acceder a la instancia con ese par de claves
Crear par de claves
$ nova keypair-add test > test.pem
$ chmod 600 test.pem
Iniciar con par de claves asociado
$ nova boot --image cirros-0.3.0-x86_64 --flavor
m1.small \
--key_name test MyFirstServer
Usar SSH para conectarse a una instancia.
# ip netns exec qdhcp-98f09f1e-64c4-4301-a8975067ee6d544f \
ssh -i test.pem cirros@10.0.0.4
Administrar la seguridad de los grupos
Aadir reglas al grupo de seguridad por defecto
$ nova secgroup-add-group-rule default default
permitiendo ping y SSH entre instancias
icmp -1 -1
pertenecientes al grupo default.
$ nova secgroup-add-group-rule default default
tcp 22 22

Object Storage (Swift)


El servicio object storage es un servicio de almacenamiento multi-tenant masibamente
escalable, permita almacenar grandes cantidades de datos no estructurados a un bajo coste
utilizando la API RESTful HTTP.
Este servicio incluye los siguientes componentes:

Servidores proxy (swift-proxy-server): El proxy acepta solicitudes a travs de la API


OpenStack Object o directamente a travs de HTTP. Una solicitud puede ser una
subida de un fichero, modificacin de los metadatos o la creacin de un contenedor.
Tambin acepta solicitudes de descarga de ficheros o del listado de objetos del
contenedor a travs de un navegador web.

Servidores de cuentas de usuario (swift-container-server): Este servidor


gestiona las cuentas de usuario definidas con el servicio de almacenamiento de
objetos.

Los servidores de contenedor (Swift-contenedor-servidor): Administrar un


mapeo de los contenedores, o carpetas, dentro del servicio de almacenamiento de
objetos.

Servidores de objetos (swift-object-server): Los servidores de objetos gestionan


los objetos reales (como ficheros o contenedores) en los nodos de almacenamiento.

19
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Hay tambin un conjunto de procesos que se ejecutan de forma peridica que realizan ciertas
tareas de limpieza sobre los datos. El ms importante de estos procesos es el servicio de
replicacin, los cuales aseguran consistencia y disponibilidad en todo el cluster. La
autenticacin se realiza normalmente a travs de Keystone.
Comandos Swift

Descripcin
Mostrar informacin sobre el usuario,
contenedor u objeto.

Listar contenedores

Comando
$ swift stat
$ swift stat ACCOUNT
$ swift stat CONTAINER
$ swift stat OBJECT
$ swift list

Crear contenedor

$ swift post CONTAINER_NAME

Subir un archivo a un contenedor

$ swift upload CONTAINER_NAME


FILE_NAME
$ swift upload mycontainer
IESRomeroVargas_Jorge.txt
$ swift list container

Listar objetos de un contenedor


Descargar objetos de un contenedor
Subir un fichero dividido en partes (Para
objetos de gran tamao)

$ swift download CONTAINER_NAME


FILE_NAME
$ swift upload -S SIZE CONTAINER_NAME
FILE_NAME
$ swift upload -S 64 container
archivo_de_granTamao

Block Storage (Cinder)


El servicio block storage permite la administracin de volmenes y snapshots. Este servicio
incluye los siguientes componentes:

cincer-volume: Este demonio responde a las peticiones de lectura y escritura para la base de
datos del bloque de almacenamiento para mantener su consistencia, interactuando con otros
procesos como cinder-scheduler, mediante una cola de mensajes o directamente con el
bloque de almacenamiento. Este servicio puede interactuar con una gran variedad de
proveedores de almacenamiento.

Messaging queue: Proporciona rutas de informacin entre procesos al bloque de


almacenamiento.

20
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Comandos Cinder

Descripcin

Comando
Administracion de volmenes y snapshots
Crear un nuevo volumen
$ cinder create SIZE_IN_GB --display-name
NAME
$ cinder create 1 --display-name
MyFirstVolume
Lanzar una instancia y asociar un volumen
$ nova boot --image cirros-qcow2 --flavor
m1.tiny MyVolumeInstance
Listar volumnes o notificar el estado de los $ cinder list
volumens
Asignar un volumen a una instancia una vez $ nova volume-attach INSTANCE_ID
est la instancia y el volumen activos.
VOLUME_ID auto
$ nova volume-attach MyVolumeInstance
/dev/vdb auto
Administrar volmenes desde la instancia
Listar dispositivos de almacenamiento
# fdisk -l
Asignar sistema de ficheros a un volumen

# mkfs.ext3 /dev/vdb

Crear un punto de montaje

# mkdir /myspace

Montar el un volumen en un punto de


montaje

# mount /dev/vdb /myspace

Crear un archivo en un volumen

# touch /myspace/helloworld.txt
# ls /myspace
# umount /myspace

Desmontar un volumen

21
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Image Storage (Glance)


La arquitectura de Glance se ha mentenido relativamente estable desde la versin Cactus de
OpenStack. El mayor cambio lo representa la incorporacin de Keystone como sistema de
autenticacin y autorizacin, la cual se aadi en la versin Diablo. Glance est formado por
cuatro componentes principales:

El demonio glance-api: Encargado de aceptar peticiones a travs de su API para el


descubrimiento, recuperacin y almacenamiento de imgenes.
Glance-registry: Encargado de almacenar, procesar y recuperar metainformacin
sobre las imgenes (tamao, tipo, etc.).
Una base de datos para almacenar dicha metainformacin: De la misma forma
que Nova, la base de datos es optativa, pero la decisin siempre gira en torno a
MySQL PostgreSQL para entornos en produccin.
Un repositorio de almacenamiento para los ficheros de imgenes: Este
almacenamiento es configurable y pueden utilizarse desde directorios locales al
propio servicio Swift. Otras soluciones pasan por volmenes iSCSI, directorios NFS
CIFS, RADOS block device, Amazon S3 HTTP.

Glance representa un papel central en la arquitectura de OpenStack, ya que acepta peticiones


para la gestin de imgenes tanto de los usuarios finales como de otros servicios como Nova.

22
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Comandos Glance

Descripcin
Lista de imgenes a las que tienes acceso

Comando
$ glance image-list

Eliminar una imagen

$ glance image-delete IMAGE

Ver detalles de una imagen

$ glance image-show IMAGE

Actualizar una imgaen

$ glance image-update IMAGE


Administracin de imgenes

Imagen Kernel

$ glance image-create --name "cirrosthreepart-kernel" \


--disk-format aki --container-format aki --ispublic True \
--file ~/images/cirros-0.3.1~pre4-x86_64vmlinuz

Imagen RAM

$ glance image-create -name "cirrosthreepart-ramdisk" \


--disk-format ari --container-format ari --ispublic True \
--file ~/images/cirros-0.3.1~pre4-x86_64initrd

Imagen Three-part

$ glance image-create --name "cirrosthreepart" --disk-format ami \


--container-format ami --is-public True \
--property kernel_id=$KIDproperty
ramdisk_id=$RID \
--file ~/images/cirros-0.3.1~pre4-x86_64blank.img

Crear una imagen RAW

$ glance image-create --name "cirrosqcow2" --disk-format qcow2 \


--container-format bare --is-public True \
--file ~/images/cirros-0.3.1~pre4-x86_64disk.img

23
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Identity (Keystone)
Keystone permite la integracin de los servicis de OpenStack en un nico punto en aspectos
tan importantes como proporcionar servicios de autenticacin, gestin de tokens y el
mantenimiento de un catlogo y un repositorio de polticas de identidad.
Cada funcin de Keystone puede conectarse a un backend distinto que permite realizar esa
misma funcin de diferentes formas utilizando un servicio distinto. De esta forma, Keystone
puede integrarse fcilmente con diferentes almacenamientos como SQL, LDAP KVS (Key
Value Stores).
Esto es muy til en cuanto a la integracin de los servicios de autenticacin de OpenStakc con
los servicios de autenticacin existentes en un despliegue en concreto. El siguiente diagrama
muestra el proceso de autentificacin:

Comandos Keystone

Descripcin
Listar todos los usuarios

Comando
$ keystone user-list

Listar catlogo de identidad

$ keystone catalog

Listar todos los servicios asociados a un


catalogo

$ keystone service-list

Crear un nuevo usuario

$ keystone user-create --name NAME -tenant-id TENANT \


--pass PASSWORD --email EMAIL --enabled
BOOL
$ keystone tenant-create --name NAME -description "DESCRIPTION" \
--enabled BOOL

Crear un nuevo proyecto

24
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Networking (Neutron)
OpenStack Networking (Neutron) gestiona todas las facetas de redes para la infraestructura de
red virtual (VNI) y los aspectos de capa de acceso de la infraestructura de red fsica (PNI) en el
entorno de OpenStack. OpenStack Networking permite crear topologas de red avanzadas
virtuales, incluyendo servicios tales como firewalls, balanceadores de carga y redes privadas
virtuales (VPN).
Neutron proporciona las siguientes abstracciones de objetos: Redes, subredes y routers. Cada
uno tiene una funcionalidad que imita su contraparte fsica: Redes con subredes este servicio
permite enrutar el trfico entre los diferentes routers de subred y redes.
Red externa
Esta red no es ms que una red virtual definida y es accesible desde fuera de OpenStack. Las
direcciones IP de la red externa son accesibles desde el exterior. Debido a que esta red solo
representa una parte de la red exterior, el servicio DHCP est desactivado en esta red.
Red interna
Estas redes definidas por software que se conectan directamente a las mquinas virtuales. Esta
red interconecta las mquinas virtuales una red interna. Las subredes conectadas a travs de
interfaces a un router, pueden tener acceso a las mquinas virtuales conectadas a la red
directamente.
Acceso entre redes
Para tener acceso desde la red externa a las mquinas virtuales y vice versa, es necesario un
router entre las redes. Cada router tiene una puerta de enlace que est conectada a una red y
a muchas interfaces que estn conectadas a las subredes. Al igual que un router fsico, se
podr tener acceso a las subredes que estn conectadas al mismo router y igualmente las
mquinas virtuales podrn tener acceso a la red externa a travs de la puerta de enlace del
router.
Adems, podemos asignar direcciones IP en las redes externas a los puertos en la red interna.
Cada vez que algo est conectado a una subred, esa conexin llama a un puerto.
Podemos asociar direcciones IP de redes externas con puertos a las mquinas virtuales. De
esta manera, las entidades en la red externa pueden acceder a las mquinas virtuales.
Grupos de seguridad
Las redes tambin soportan grupos de seguridad. Los grupos de seguridad permiten a los
administradores para definir reglas de firewall en grupos. Una mquina virtual puede
pertenecer a uno o ms grupos de seguridad y Redes, definiremos las reglas en esos grupos de
seguridad para bloquear o desbloquear los puertos, rangos de puertos o el trfico para los
diferentes tipos para que VM.

25
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Comandos Neutron

Descripcin
Crear una red

Comando
$ neutron net-create NAME

Crear una subred

$ neutron subnet-create NETWORK_NAME


CIDR
$ neutron subnet-create my-network
10.0.0.0/29

Listar las redes y las subredes

$ neutron net-list
$ neutron subnet-list

Examinar los detalles de una res o de una


subred

$ neutron net-show
ID_OR_NAME_OF_NETWORK
$ neutron subnet-show
ID_OR_NAME_OF_NETWORK

26
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Orchestration(Heat)
El servicio de orquestacin proporciona un despliegue basado en plantillas para la descripcin
de una aplicacin del cloud ejecutando llamadas a las APIs de OpenStack para generar la
ejecucin de aplicaciones. El software integra otros componentes bsicos de OpenStack , tales
como IPs flotantes, los volmenes, los grupos de seguridad, usuarios, etc. Adems ofrece
algunas funciones ms avanzadas, como por ejemplo la alta disponibilidad o el auto
escalamiento de instancias. Hate proporciona una gran integracin con otros componentes
bsicos de OpenStack.

heat command-line client: Un CLI que se comunica con el heat-api para ejecutar
AWS. CloudFormation APIs. Los desarrolladores tambin pueden utilizar la API de
REST directamente.
heat-api component: Proporciona una OpenStack-native REST API que procesa las
solicitudes de la API mediante el envo a heat a travs de RPC.
heat-api-cfn component: Proporciona una API AWS de consulta compatible con
AWS CloudFormation y procesa solicitudes de la API mediante el envo a la mquina
de heat a travs de RPC.
heat-engine: Orquesta la puesta en marcha de las plantillas y proporciona eventos.

Comandos Heat
Un stack cuanta con una coleccin de recursos, para listar, ver su estado o eventos poedemos
ejecutar algunos de los siguientes comandos:
Descripcin
Listar stacks

Comando
$ heat stack-list

Ver los detalles de un stack


Ver los recursos de un stack

$ heat stack-show mistack


$ heat resource-list mistack

Ver los eventos generados durante un stack

$ heat event-list mystack

27
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Telemetry (Ceilometer)
El mdulo de telemetra es el encargado de recoger de manera eficiente los datos de medicin
en relacin con el coste de CPU y de red, tambin recopila datos mediante el control de
notificaciones enviadas desde los servicios o sondeando la infraestructura.
Las caractersticas bsicas de Ceilometer se pueden ampliar por medio de plug-ins adicionales.
Este componente tambin es capaz de producir mensajes autoafirmados de medicin de
manera que no puedan ser renunciados.
Este sistema se compone de los siguientes componentes basicos:

Un agente de computacin (ceilometer-agent-compute): Se ejecuta en cada


nodo de cmputo y realiza encuestas para determinar las estadsticas de utilizacin de
recursos. Puede haber otros tipos de agentes en el futuro, pero por ahora nos
centraremos en crear el agente de clculo.
A central agent (ceilometer-agent-central): Se ejecuta en un servidor de
administracin central para sondear las estadsticas de utilizacin de los recursos que
no asignados a instancias o nodos de computacin.
Un collector recaudador (ceilometer-collector): Se ejecuta en uno o ms
servidores de administracin central para supervisar las colas de mensajes (para las
notificaciones los datos de medicin procedentes del agente). Los mensajes de
notificacin se procesan y se convierten en la medicin mensajes y enviado de vuelta
mediante el bus de mensajes con el tema correspondiente.
Una alarma (ceilometer-alarm-notifier). Se ejecuta en uno o ms servidores de
administracin central para permitir el establecimiento de alarmas en funcin de la
evaluacin de un umbral.
Un almacn de datos: Una base de datos capaz de manejar escrituras simultneas (de
una o ms instancias recaudadoras y lee (desde la API del servidor).
Un API server (ceilometer-api): Se ejecuta en uno o ms servidores de
administracin central para proporcionar acceso a los datos del almacn de datos.

Estos servicios se comunican mediante el bus de mensajera. Slo el colector y el servidor


de la API tienen acceso al almacn de datos.
Comandos Ceilomenter

Descripcin
Crea una nueva alarma
Elimina una alarma
Lista las alarmas del usuario
Ver una alarma
Actualiza una alarma existen
Lista los contadores del usuario
Lista los recursos
Ver los recursos
Crea un sample
Lista los samples de un contador
Lista las estadsticas de un contador
Muestra la ayuda

Comando
$ ceilometer alarm-create
$ ceilometer alarm-delete
$ ceilometer alarm-list
$ ceilometer alarm-show
$ ceilometer alarm-update
$ ceilometer meter-list
$ ceilometer resource-list
$ ceilometer resource-show
$ ceilometer sample-create
$ ceilometer sample-list
$ ceilometer statistics
$ ceilometer help
28

OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Database service (Trove)


El servicio de base de datos proporciona una funcionalidad de aprovisionamiento al cloud
escalable y totalmente confiable tanto para motores de bases de datos relacionales como para
los no relacionales. Los usuarios pueden utilizar de forma rpida y fcil funciones de base de
datos sin necesidad de tareas administrativas complejas. Los usuarios del cloud y los
administradores de las bases de datos pueden aprovisionar y administrar varias instancias de
base de datos segn sea necesario.
El servicio de base de datos nos proporciona un aislamiento de recursos de alto rendimiento y
automatiza las tareas administrativas complejas, como la implementacin, configuracin,
parches, copias de seguridad, restauraciones y monitoreo.
He aqu un ejemplo del proceso de alto nivel usando el servicio de bases de datos:
1. Administrador del servicio de bases de datos:
a. El administrador de OpenStack instala el servicio de base de datos.
b. El administrador crear una imagen por cada tipo de base de datos que quiere
tener (uno para MySQL, una para MongoDB, y as sucesivamente).
c. El administrador de OpenStack actualiza el almacen de datos para utilizar las
nuevas imgenes utilizando el comando trove-manage.
2. Usuario final que utiliza el servicio de base de datos
a. Ahora que la infraestructura bsica est configurada, el usuario final puede
crear una instancia de Trove (base de datos) cuando el usuario lo necesite,
utilizando el comando trove create.
b. El usuario final obtiene la direccin IP de la instancia Trove utilizando el
comando trove-list para obtener el ID de la instancia y, a continuacin,
utilizando el comando trove show IDinstancia para obtener la direccin IP.
c. El usuario final puede ahora acceder a la instancia Trove usando el acceso
base de datos mediante comandos. MySQL ejemplo:

$ mysql -u miusuario pmicontrasea -h trove_direccion_ip miDB

29
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Conocimientos bsicos de compute (Nova)


En este proyecto vamos a centrarnos fundamentalmente en el mbito de la virtualizacin, ya
que OpenStack abarca tantos componentes y con tantos detalles que contar de cada uno de
ellos que perderamos un poco el enfoque hacia la virtualizacin que es el objetivo principal de
este proyecto.
Como ya hemos contado anteriormente en este documento el nombre del proyecto es Nova y
proporciona el software necesario para desplegar una infraestructura IaaS. Nova es bastan te
similar a Amazon EC2, se dijo en los inicios de Nova que era una copia prcticamente idntica
al servicio de Amazon.
Nova no incluye ningn hipervisor en s mismo, nova va mucho ms all y te permite elegir
entre una amplia gama de hipervisores, nova simplemente define unos controladores que
interactan con los hipervisores. Esta es una de las grandes ventajas de entre proyecto al ser
Open Source la versatilidad es mxima.

Hipervisores
Como ya comente antes OpenStack Compute soporta varios hipervisores, esto nos puede
llevar confusin o indecisin sobre cul de ellos elegir vamos a intentar arrojar un poco de luz
a la eleccin de un hipervisor. Hay que tener en cuenta que la mayora de las instalaciones
utilizan slo un hipervisor pero es posible con configuraciones ms avanzadas implementar
ms de uno dentro de un mismo sistema (estas configuraciones vienen explicadas en la
documentacin oficial de OpenStack).
Los siguientes hipervisores son soportados por OpenStack Icehouse:

KVM - Kernel-based Virtual Machine: Los formatos de disco virtual que soporta,
son heredados de QEMU, ya que utiliza un programa de QEMU modificado para poner
en marcha la mquina virtual. Los formatos soportados incluyen imgenes RAW,
qcow2 y formatos de VMware.
LXC - Linux Containers (Mediante libvirt): Es usado para ejecutar mquinas
virtuales basadas en Linux.
QEMU - Quick EMUlator: Generalmente solo se utilizara para entorno de desarrollo,
no se recomienda su implementacin en entorno de produccin.
UML - User Mode Linux: Generalmente solo se utilizara para entorno de desarrollo,
no se recomienda su implementacin en entorno de produccin.
VMware vSphere: Desde la actualizacin 4.1 en adelante es posible ejecutar
imgenes de Linux y Windows basados en VMware a travs de una conexin con un
servidor vCenter o directamente con un servidor ESXi.
Xen - XenServer, Xen Cloud Platform (XCP): Es capaz de ejecutar mquinas
virtuales Linux o Windows. Debe instalar el servicio de nova-compute en una mquina
virtual para-virtualizado.
Hyper-V - Server virtualization with Microsoft's Hyper-V: Es capaz de ejecutar
Windows, Linux, y las mquinas virtuales FreeBSD. Adems Ejecuta nova-compute de
forma nativa en la plataforma de virtualizacin de Windows.
Bare Metal No es un hipervisor tradicional: Se trata de unos controladores que
provisiona de el hardware fsico a travs de unos sub-controladores. Ejemplo, PXE
para el despliegue de imgenes, e IPMI para la administracin de energa.

30
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Basndome en mi experiencia en OpenStack y en viarios sistemas de virtualizacin tanto en


entorno Linux como Windows, adems de varias investigaciones y pruebas realizadas que
corroboran mi opinin, yo me decanto por implementar KVM en OpenStack.
Os preguntareis y por qu KVM?
Bien, vamos a aadir algo de luz a esta pregunta, la razn fundamental por la que elijo KVM es
completamente libre y no depende de ninguna empresa, simplemente es un mdulo no
necesita parches, adems contiene soporte de paravirtualizacin y su rendimiento es muy
bueno, yo me decanto por KVM.
Hay varios estudios que corroboran mi opinin al respecto de que hipervisor utilizar en
OpenStack, pero cada uno es libre de utilizar el que crea mejor o se encuentre ms cmodo
trabajando con l. En OpenStack tenemos donde elegir esto es software libre!
La siguiente imagen muestra tanto las distribuciones donde esta implementado ms
OpenStack como los hipervisores ms utilizados actualmente en OpenStack.

31
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Usuarios y proyectos (Tenants)


En openstack en primer lugar debemos crear un usuario al cual le podemos guardar su
nombre, correo electrnico y contrasea. A este usuario le debemos de asignar un proyecto
(Tenants en la jerga de OpenStack). Con la asignacin conseguimos poner limitaciones a un
usuario, ya que en un proyecto podemos ejecutar un conjunto de instancias con caractersticas
en comn, por ejemplo pueden estar todas las instancias en el misma red, pueden utilizar una
serie de imgenes de sistemas o tener limitado el uso de recursos del cloud.
Al usuario tambin podemos asignarle un rol para limitar las operaciones que puede realizar
cada usuario. A un usuario se le pueden asignar diferentes roles en cada proyecto.

Imgenes e instancias
Las imgenes son imgenes de discos que son plantillas para las mquinas virtuales que se van
a crear. El servicios que proporciona las imgenes, Glance, es el responsable de almacenar y
gestionar las imgenes en OpenStack.
Las imgenes son imgenes de discos como las que consimimos normalmente en los formato
tpicos que todos conocemos como puede ser ISO o RAW OpenStack soporta una gran
variedad de formatos de los cuales hablaremos ms adelante. Como ya hemos dicho
anteriormente Glance es el encargado de provionar al cloud de imgenes.
Las instancias son las mquinas virtuales que se ejecutan en los nodos de computacin. El
servicio de computacin, Nova, gestiona estas instancias. Se pueden lanzar cualquier nmero
de instancias a partir de una determinada imagen. Cada instancia se ejecuta de una copia de
una imagen base, por lo que las modificaciones que se realicen en la instancia no alteran la
imagen en la que se basa. Mediante el uso de instantneas (snapshots) de las instancias, se
pueden crear nuevas imgenes que s guardan todas las modificaciones realizadas hasta ese
momento en la instancia.
Cuando se lanza una instancia, se debe seleccionar un conjunto de recursos virtuales, conocido
como sabor (flavor).
Un sabor define para una instancia el nmero de CPUs virtuales, la RAM, si dispone o no de
discos efmeros, etc. OpenStack preinstala una serie de sabores, que el administrador puede
modificar o crear algunos nuevos si as se desea.

Lanzar una instancia


Para lanzar una instancia hay que elegir una imagen, un sabor y opcionalmente otros atributos.
OpenStack copia la imagen base al disco que utilizar la instancia como primer disco vda),
cuanto ms pequea sea la imagen, ms rpido ser el lanzamiento. Dependiendo del sabor,
tambin se crea un nuevo disco vaco (vdb). Para la gestin de volmenes antes se encargaba
nova-volume, este trabajo se ha delegado a Cinder, los volmenes se mapearan como vdc.
Una vez que decidimos terminar la instancia, todos los recursos utilizados por la instancia son
liberados (RAM, almacenamiento, etc.), salvo los volmenes persistentes que permanecen
almacenados y es posible asignarlos a otra instancia posteriormente.

32
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Tipos de almacenamiento
OpenStack nos proporciona dos tipos de almacenamiento de bloques:

Almacenamiento efmero: El almacenamiento efmero existe slo mientras se


ejecuta la instancia, se mantendr cuando se reinicie la instancia, pero se borrar en el
momento que se borre la instancia para la que se cre. Todas las instancias tienen
almacenamiento efmero y es posible, dependiendo del sabor, que tengan ms de un
disco efmero a su disposicin.
Volmenes persistentes: Los volmenes persistentes dispositivos de bloques
independientes de la instancia. Los volmenes se pueden asociar a una determinada
instancia, pero posteriormente se pueden desasociar y asociar a cualquier otra
instancia manteniendo los datos, como si fuera una unidad USB.

33
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Conocimientos bsicos de Keystone


Keystone, es el componente de OpenStack encargado de la autentificacin y la autorizacin de
los distintos componentes, de manera que cuando un componente o usuario necesita realizar
alguna accin este preguntar a Keystone y este le conceder o no el permiso. Keystone tiene
funciones principales:

Gestin de usuarios: Keystone es el encargado de registrar y asignar permisos a


cada usuario.

Registro los servicios ofrecidos: Keystone ofrece un catlogo de los servicios


ofrecidos, as como la forma de acceder a sus APIs.

Para terminar de entender correctamente la funcin de Keysone necesitamos saber una serie
de conceptos que nos arrojaran algo de luz sobre Keystone en relacin con los usuarios.

Usuario: Usuario normal con una serie de privilegios que har uso del cloud, de el
podremos almacenar su nombre, correo electrnico y contrasea.
Proyecto (tenant en la jerga de OpenStack): En un proyecto podemos ejecutar un
conjunto de instancias con caractersticas en comn, de manera que podremos
asignar una serie de limitaciones dependiendo del proyecto.
Rol: Nos indica qu operaciones puede realizar cada usuario. A un usuario se le
pueden asignar diferentes roles en cada proyecto. Por ejemplo el Rol de
administrador.

Hay algunos conceptos que es conveniente conocer en relacin con el registro de servicios

Servicio: Corresponde a un componente de OpenStack que puede utilizar el mdulo

de autentificacin.
Endpoints: Representa las URL que nos permiten acceder a las API de cada uno de los
ser- vicios o componentes de OpenStack.

34
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

TOKENS
Para entender con ms claridad el sistema de autentificacin de Keystone es necesario
conocer de qu manera se autentifican los servicios y componentes de OpenStak. Keystone
permite a OpenStack una autentificacin basada en tokens Qu es esto? Para comprenderlo
debemos de saber primero que es un token

Token: Un token es una cadena de caracteres que tiene un significado coherente en cierto
lenguaje de programacin. Ejemplos de tokens podran ser palabras clave, identificadores,
nmeros, signos, o un operador de varios caracteres.
En OpenStack tanto los servicios como los usuarios no se autentifican unos a otros
directamente, sino que se autentifican mediante un actor intermediario encargado de verificar
la autenticidad de cada uno de los elementos es Keystone.
La siguiente imagen muestra el proceso que realiza un usuario para autenticarse en Keystone:

35
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

ADMIN_TOKEN
Con Keystone recin instalado no tenemos ningn usuario con privilegios de administracin en
la base de datos de keystone, por lo no podramos hacer ninguna modificacin. El mecanismo
que proporciona keystone para solventar esta situacin es definir en el fichero de
configuracin un token con privilegios de administracin, que recibe el nombre de
ADMIN_TOKEN, que puede definirse directamente en la instalacin o cuando queramos en el
fichero /etc/keystone/keystone.conf, el ADMIN_TOKEN puede tener cualquier valor, pero hay
que custodiarlo adecuadamente mientras est activo, ya que otorga privilegios de
administracin sobre Keystone a quien lo conozca. Posteriormente, una vez definidos los
usuarios en keystone y los dems elementos, podemos borrar este campo del fichero de
configuracin de keystone y no volver a utilizarlo.
De forma general en Keystone, un usuario deber tener algo con que demostrar su
autenticidad (una contrasea o un token) y la URL de un API con la que desea interaccionar, en
este caso vamos a definir con dos variables de entorno el token con privilegios de
administrador y la URL del servicio de administracin de keystone:
export SERVICE_ENDPOINT=http://127.0.0.1:35357/v2.0/
export SERVICE_TOKEN=12345678
Donde 12345678 representa el valor que hayamos elegido para nuestro ADMIN_TOKEN y
tendr el mismo valor que el parmetro ADMIN_TOKEN que tenemos guardado en el fichero
de configuracin. Una vez realizado esto el usuario de esa sesin acta como administrador de
keystone, por lo que los pasos siguientes sern crear usuarios, darles roles, definir los servicios,
etc.

36
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Conceptos bsicos de Glance


Glance es uno de los componentes ms sencillos y fciles de entender de OpenStack por lo que
no nos vamos a detener demasiando en este apartado.
Como ya hemos comentado en apartados anteriores Glance es el componente dedicado a la
gestin de imgenes, proporciona los servicios necesarios para la bsqueda, localizacin y
obtencin de imgenes para las mquinas virtuales del cloud. Glance es el encargado de
responder mediante su API las solicitudes tanto de los metadatos de las imgenes para las
mquinas virtuales, como la solicitud en s de una imagen.
Las imgenes que estn disponibles a travs de Glance, se pueden almacenar en diferentes
ubicaciones, desde un simple sistema de ficheros que es la opcin por defecto a un sistema de
almacenamiento de objetos como OpenStack Swift.

Conceptos bsicos de Swift


OpenStack Object Storage, conocido como OpenStack Swift, es un sistema de almacenamiento
de objetos escalable no es un sistema de ficheros en el sentido tradicional. No es posible
montar este sistema como volmenes de sistemas SAN o NAS.
OpenStack Swift es un sistema de almacenamiento conceptualmente similar a Amazon Simple
Storage Service (S3) y es un componente prcticamente independiente del resto de
OpenStack. Swift es un software derivado del Cloud files de rackspace y se trata de un
software mucho ms maduro y estable que otros componentes del proyecto.
Como ya dijimos anteriormente en este documento nos vamos a centrar fundamentalmente
en la parte de virtualizacin (Nova) y nos mantendremos un poco al margen de Swift.

37
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

OpenStack en nuestras aulas


Todos los beneficios que venimos contando a lo largo de este documento no son solo para el
mbito laboral o empresarial, sino tambin hay grandes beneficios en el mbito educativo.
Si analizamos la evolucin que ha tenido la educacin nos damos cuenta que OpenStack o la
utilizacin del IaaS no es ms que una nueva evolucin en la manera de trabajar en nuestras
aulas.

Utilizacin de equipos fsicos

Utilizacin de mquinas virtuales

EL FUTURO Utilizacin de IaaS


Vamos a repasar un poco como ha sido la evolucin en la manera de trabajar en el mbito
educativo, repasando las ventajas y los inconvenientes de cada uno de los modelos de trabajo,
los diferentes cambios que se han producido a lo largo del tiempo son en primero lugar el paso
de equipos fsicos a mquinas virtuales y por ltimo, un corto periodo de tiempo se empezara
a implementar la utilizacin de IaaS.

38
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Utilizacin de equipos fsicos


La forma de trabajar utilizando equipos fsicos est totalmente obsoleta y quedo totalmente
desplazada por la utilizacin de mquinas virtuales las cuales incorporan muchas ventajas que
veremos a continuacin.
La forma de trabajar seria con una maquina por alumno y algunos servidores compartiendo
recursos de manera que cada alumno gestionar su propio equipo pero no gestiona los
servidores.

Algunas de las ventajas e inconvenientes de la utilizacin de mquinas fsicas son las


siguientes:

Ventajas
Fcil despliegue inicial y
puesta en marcha.

Inconvenientes
Poca capacidad de cambio.
Practicas muy limitadas por nmero
de equipos y tipo de conjuraciones.
Hardware poco variado
Practicas reales complicadas de
preparar.
Tiempos muertos entre practicas
Posibles conflictos entre asignaturas
Mayor tiempo de realizacin.

39
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Utilizacin de mquinas virtuales


La aparicin de las mquinas virtuales aporto grandes beneficios a la manera de trabajar en las
aulas, ya que el alumno tena un entorno para trabajar con varias mquinas virtuales
gestionadas por el mismo en su propio equipo pudiendo as hacer prcticas ms complejas.

Algunas de las ventajas e inconvenientes de la utilizacin de mquinas virtuales son las


siguientes:

Ventajas
Cada alumno dispone de un entorno
independiente
Practicas menos rgidas.
Ms sencillo simultanear prcticas.
El alumno dispone de un entorno de
pruebas.
El alumno aprende virtualizacin.

Inconvenientes
Entorno ms complejo
Requiere equipos actualizados para los
alumnos
Los alumnos tienen que administrar el gestor
de mquinas virtuales.
Requiere un mayor conocimiento del alumno.
Puede ocasionar problemas el desconocimiento
del alumno del software de virtualizacin.

40
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Utilizacin de IaaS
Cada vez es ms evidente que el futuro est en la utilizacin el IaaS, ya que conlleva grandes
beneficios como que nunca tendremos que cambiar el hardware de los equipos de los
alumnos, entre otros muchos que comentaremos a continuacin.

Algunas de las ventajas e inconvenientes de la utilizacin de mquinas virtuales son las


siguientes:

Ventajas

Inconvenientes

Creacin/uso/eliminacin de instancias
rpido y sencillo

Imprescindible administracin del Cloud

Mayor variedad de practicas

La inversin inicial puede ser importante

Fcil utilizacin de entornos


preconfigurados

Los entornos preconfigurados pueden llevar a


una falta de aprendizaje del alumno.

Utilizacin de entornos ms complejos

Equipos bsicos para los alumnos

El alumno aprende sobre Cloud


Computing
41
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Metodologa de uso por el alumnado


1. Cada alumno inicia una instancia del SO en el que va a instalar el servicio.
2. Realiza la instalacin del servicio
3. Realiza la conjuracin del servicio. Si esta conjuracin dura ms de una clase, suspende
la instancia y la reinicia en la siguiente clase.
4. Una vez terminada la configuracin puede crear una instantnea para utilizarla como
base en posteriores prcticas.
Si algn alumno no ha podido realizar la conjuracin correctamente podr utilizar la
instantnea de un compaero en clases posteriores.

42
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Captulo 2: OpenStack en IES Romero Vargas


Soy un alumno del IES Romero Vargas (Jerez de la Frontera) en este proyecto he analizado la
posibilidad de implementar OpenStack en mi centro educativo, analizando los requerimientos
tcnicos, adaptabilidad de los medios, ventajas e inconvenientes, capital necesario para su
despliegue, etc.
En este proyecto analizo la situacin desde el punto de vista de mi centro educativo, pero
OpenStack puede ser desplegado en cualquier centro educativo o empresa privada y los
siguientes datos pueden ser de ayuda para su despliegue.

Ventajas e Inconvenientes
He analizado las ventajas e inconvenientes del despliegue de OpenStack en mi centro
educativo y he llegado a las siguientes conclusiones:

Ventajas

Inconvenientes

Los profesores ya no tendra que pasarnos ms


ISOs por pendrive o por red.

La inversin inicial puede ser importante.

No importara el equipo que llevemos a clase.

Difcil instalacin.

Se necesitara un lugar donde alojar los nodos.

Igualdad de condiciones en los exmenes ya que


todos utilizaramos las mismas instancias con los
mismos recursos.

Los entornos pre configurados pueden llevar a


una falta de aprendizaje del alumno.

Requiere conocimiento del profesorado para


la administracin del cloud

Ahorro en la compra de equipos. No VT-x

Los profesores podran almacenar Snapshots de


aos anteriores y simplemente compartirlo.

El profesor podra terminar las instancias llegado el


tiempo lmite para entregar la prctica o examen.

Podramos acceder desde casa al cloud del instituto


y trabajar desde all con las mismas instancias.(Poco
probable actualmente por la poca velocidad de
subida)

43
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Adaptacin de medios para 1 Gbps


OpenStack requiere unos requisitos para su correcto funcionamiento entre otros que la red
sea como mnimo de 1gbps, para ello necesitamos tanto las NICs de los equipos y nodos sean
de 1 Gbps y adems todo el cableado debe ser Categora 6, sin olvidarnos de los dems
componentes como Switch, paneles de parcheo y router deben ser de 1Gbps.
Algunos de los cambios que nos haran falta seran los siguientes:

Cambiar todo el cableado de la clase y pasarlo a categora 6: Para un correcto


rendimiento de la red Gbps es necesario que todo el cableado sea Categora 6.

Switch, paneles de parcheo y Router con puertos Gbps: Tambin es necesario


que tanto los Switch y paneles de parcho como el router Router cuenten con puertos
Gbps.

Por qu no utilizo Router Gbps?


En los presupuestos ms austeros no vamos a utilizar Router con puertos Gbps, ya que el
aumento de rendimiento seria insignificante. Es verdad que implementar un Router con
puertos Gbps beneficiara un poco al acceso de las instancias a internet, as como el acceso
desde internet al cloud cosa que actualmente es poco probable dada la conexin a internet del
cloud.
El problema de acceder al cloud desde internet es la psima velocidad de subida con la que
actualmente cuanta nuestro centro, actualmente contamos con una velocidad de subida de
800 Kbps, lo cual hace imposible el acceso al cloud desde fuera. Este es el motivo por el cual
descartamos la opcin de implementar un Router Gbps.

44
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Proyectos para el despliegue de OpenStack en IES Romero Vargas


A continuacin vamos a hacer diferentes diagramas de red y presupuesto para la
implementacin de OpenStack en el IES Romero Vargas, analizaremos diferentes presupuestos
desde el ms austero a un presupuesto real que funcionara de una manera ptima.

Proyecto 1 (Ms austero)


Este primer presupuesto la idea es formar un cloud con los equipos de una sola clase
manteniendo los dems equipos para acceder al cloud, hay que tener en cuenta que este
primer presupuesto es el ms austero, por lo tanto es el menos recomendable ya que al utilizar
menos recursos econmicos el rendimiento se ve afectado negativamente.
Para este primer presupuesto vamos a utilizar los equipos de la clase de ASIR2 para formar un
cloud de manera que luego tendremos que comprar otros equipos con menos recursos para
que los alumnos de ASIR2 puedan acceder al cloud, sin embargo la clase de ASIR1 dejaremos
los equipos que tienen para acceder al cloud.
Actualmente ninguna clase del IES Romero Vargas cuenta con cableado Cat. 6 y tampoco
cuentan con Switch o Paneles de parcheo con puertos Gbps por lo que tendremos que
comprar el cableado de las dos clases, 3 Stich y 3 paneles de parcheo con puertos Gbps.
Recordemos que este presupuesto es el ms austero y por lo tanto vamos a elegir unos
componentes un precio menor pero esto conlleva tambin un menor rendimiento del cloud.
Procedimiento

Equipos para el Cloud: En la clase de ASIR-2 actualmente contamos con 11 equipos con
unas caractersticas medias, que son los que formaran parte del cloud, para ahorrar
costes en comprar servidores De manera que contaremos con 1 nodo controlador y 10
nodos de computacin.

Adquisicin de equipos con pocos recursos para los alumnos: Ya que los equipos de
gama media van a pasar a formar parte del cloud necesitaremos algunos equipos para
que los alumnos se conecten al cloud, estos equipos pueden ser raspberry pi o
equipos antiguos.

Cambio de todo el cableado a Categora 6.

Adquisicin de 3 Switch y 3 paneles de parcheo.

Vamos a adquirir un armario para almacenar el Switch del Cloud y el Router. (En las
otras clases ya estn instalados)

45
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Lista de la compra

Articulo
Raraspberry Pi
Switch TP-Link TL-SG1024
Bobina cable Categora 6
Armario Rack Cablematic

Cantidad/Unidades
11
3
1
1

TOTAL

Precio
35
112
318
117

Precio Total
385
336
318
117

1156

46
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

A continuacin se muestra el diseo de red despus del despliegue de OpenStack de la manera


que los alumnos de ASIR-1 utilizarn sus los equipos que tienen actualmente para
contactarse al cloud y los equipos de ASIR-2 pasan a formar parte del cloud. Como
sustitucin de los equipos de ASIR 2 hemos adquirido 11 Raspberry Pi para que puedan
conectarse al cloud.

*Hay que tener en cuenta que este modelo no se ajusta totalmente a la realidad, ya que habra que aadir a este
modelo tanto el total de los nodos de computacin restantes como todos los equipos de las clases adems de los
paneles de parcheo.

47
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Dado que cada equipo de la clase ASIR-2 (Equipos del cloud) cuenta con 6 GB de memoria
RAM, 4 ncleos y 80 GB de almacenamiento.
Finalmente tendramos un cloud con 1 nodo controlador y 10 nodos de computacin, as que
con este despliegue nuestro cloud tendr las siguientes caractersticas:
Componente

Valor

Cores

40

Memoria RAM

60 Gb

Almacenamiento

800 Gb

Como ya dije antes este despliegue es un tanto austero y no permitir a los alumnos ejecutar
demasiadas instancias por la falta de recursos.
Dado que disponemos con 60 GB de memoria RAM y tenemos que abastecer a unos 35 y 2
profesores alumnos entre la clase de ASIR-1 y ASIR-2. Con este despliegue no llegamos a los
dos GB de memoria RAM por alumno, lo cual es poqusimo si el alumno est trabajando con
instancias con Windows sobre todo, en el caso que el alumno utilice instancias con SO Linux la
demanda de memoria ser menor pero aun as no se recomienda este despliegue con un cloud
con unos recursos tan bajos.
Este despliegue es posible y puede funcionar con algo ms de fluidez si se decide comprar
algunos nodos de computacin ms o realizar una ampliacin de memoria RAM a los nodos
que ya tenemos.

48
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Proyecto 2 (Utilizando todos los equipos del IES)


Este presupuesto conllevar un mejor rendimiento del cloud si lo comparamos con el
presupuesto anterior, ya que aumenta el nmero de nodos destinados a la computacin pero
an no es un modelo ptimo para desplegar OpenStack s que puede ser una opcin
interesante sobre todo si amplAMIos un poco la memoria RAM de los nodos.
En este proyecto vamos a utilizar los equipos tanto de ASIR-1 como de ASIR-2 para el Cloud, de
manera que como estos estarn prestando servicios dentro del Cloud tendremos que adquirir
nuevos equipos para que los alumnos se conecten al Cloud en este caso hemos optado
adquirir para todos estos equipos Raspberry Pi.
Como ya hemos comentado anteriormente ninguna clase del IES Romero Vargas cuenta con
cableado Cat. 6 y tampoco cuentan con Switch o Paneles de parcheo con puertos Gbps por lo
que tendremos que comprar el cableado de las dos clases, 3 Stich y 3 paneles de parcheo con
puertos Gbps por lo que tambin lo incluiremos en este presupuesto.
As como el presupuesto anterior se intent hacer lo ms austero posible en este proyecto est
basado en recursos de gama media con lo que mejorar el rendimiento del cloud y de la red
pero aumentar el coste de despliegue.

49
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Procedimiento

Equipos para el Cloud: En esta ocasin vamos a incluir en el Cloud tanto los equipos de
ASIR-1 como los de ASIR-2.
ASIR-1: Todos los equipos de ASIR-1 los vamos a destinar a nodos de
computacin, actualmente la clase de ASIR-1 cuenta con un total de 16
equipos.
ASIR-2: En la clase de ASIR-2 actualmente contamos con 11 equipos con unas
caractersticas medias, que son los que formaran parte del cloud, para ahorrar
costes en comprar servidores de manera que contaremos con 1 nodo
controlador y 10 nodos de computacin.

Entre las dos clases contamos con 27 equipos, que son los que formaran parte del
cloud, para ahorrar costes en comprar servidores.

Adquisicin de equipos con pocos recursos para los alumnos: Ya que los equipos de los
alumnos van a pasar a formar parte del cloud necesitaremos algunos equipos para que
los alumnos se conecten al cloud, estos equipos pueden ser raspberry pi o equipos
antiguos.

Cambio de todo el cableado a Categora 6.

Adquisicin de 3 Switch y 3 paneles de parcheo.

Debemos instalar en la habitacin destinada a los servidores un dispositivo de aire


acondicionado para refrigerar los equipos, ya que habr 27 equipos encendidos en un
espacio reducido.

Vamos a adquirir un armario para almacenar el Switch del Cloud y el Router. (En las
otras clases ya estn instalados).

Dada que en esta instalacin el nmero de equipos destinados al cloud aumenta


considerablemente vamos a adquirir tambin un acondicionador de aire para
refrigerar los equipos del Cloud.

Para almacenar los equipos hemos vamos a utilizar unas nueva cajas, sustituyendo las
que tienen los equipos actualmente por unas cajas que nos permitirn formar un rack.

Finalmente tambin necesitamos un armario rack para meter todos los equipos y
mantener el cloud de una manera centralizada.

50
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Lista de la compra

Articulo
Raraspberry Pi
Switch ZyXEL GS1900
Bobina cable Categora 6
Armario Rack Cablematic
Aire acondicionado
Armario Rack
Caja Rack

Cantidad/Unidades
27
3
1
1
1
1 /32U
27

TOTAL

Precio
35
285
318
160
345
500
162

Precio Total
945
855
318
160
345
500
4374

7497

51
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

A continuacin se muestra el diseo de red despus del despliegue de OpenStack de la manera


que los equipos de ASIR-1 y ASIR-2 sern destinados al Cloud, adems como podis
observar ha aumentado de manera considerable el nmero de nodos de computacin. Para
que los alumnos de puedan conectar al Cloud hemos adquirido 26 Raspberry Pi como
sustitucin de sus equipos.

*Hay que tener en cuenta que este modelo no se ajusta totalmente a la realidad, ya que habra
que aadir a este modelo tanto el total de los nodos de computacin restantes como todos los
equipos de las clases adems de los paneles de parcheo.

52
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

La clase de ASIR-1 cuenta con un total de 16 equipos y cada uno cuenta con 4 GB de memoria
RAM, 2 ncleos, y 160 GB de almacenamiento.
Los equipos de ASIR-2 cuenta con un total de 11 equipos y cada uno cuenta con 6 GB de
memoria RAM, 4 ncleos y 160GB de almacenamiento.
Finalmente tendramos un cloud con 1 nodo controlador y 26 nodos de computacin, as que
con este despliegue nuestro cloud tendr las siguientes caractersticas:
Componente

Valor

Ncleos

72

Memoria RAM

124 Gb

Almacenamiento

4160 Gb

Como podemos comprobar el rendimiento del Cloud aumenta considerablemente respecto al


presupuesto anterior pero aun as no tendra un rendimiento recomendado para un despliegue
real.
Dado que disponemos con 124 GB de memoria RAM y tenemos que abastecer a unos 35
alumnos y a 2 profesores entre la clase de ASIR-1 y ASIR-2. Con este despliegue logramos
aumentar hasta casi los 4 GB de memoria RAM por alumno, lo cual sigue siendo poco para que
el alumno pueda trabajar con fluidez y a pleno rendimiento, como siempre esta cantidad de
RAM puede ser suficiente si el alumno trabaja con instancias con SO Linux ya que estas
consumen muchos menos recursos pero nos quedaremos corto de memoria RAM si utilizamos
varias instancias con Windows o las distribuciones de Linux que consumen ms recursos.
Este despliegue es posible y puede ser implementado realmente si en un futuro se decide
comprar algunos nodos de computacin ms o realizar una ampliacin de memoria RAM a los
nodos que ya tenemos. Si aumentramos todos los nodos a 8 GB de memoria RAM podramos
alcanzar los 208 GB de memoria RAM con lo que cada alumno contara con 6 GB de memoria
RAM disponible para su uso, lo cual est bastante bien para trabajar con varias instancias sin
ningn problema.

53
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Proyecto 3 (Implementacin ptima de OpenStack)


En este proyecto quiero analizar cmo sera un despliegue ptimo de OpenStack, es decir, sin
reparar en gastos de ningn tipo y buscando siempre el mejor rendimiento tanto de la red
como del Cloud. Siempre desde el punto de vista en la implementacin en el IES Romero
Vargas aunque este modelo de despliegue tambin puede ser vlido para cualquier tipo de
organizacin, empresa privada, universidad, etc.
En este proyecto vamos a descartar la utilizacin de equipos que se encuentran actualmente
en el IES para aumentar el rendimiento vamos a comprar unos ordenadores nuevos que
formarn parte del cloud para conseguir un rendimiento ptimo, sin embargo nos
ahorraremos el dinero en equipos para que los alumnos puedan acceder al cloud, ya que los
alumnos mantendrn los que tienen actualmente.
Como ya hemos comentado anteriormente ninguna clase del IES Romero Vargas cuenta con
cableado Cat. 6 y tampoco cuentan con Switch o Paneles de parcheo con puertos Gbps por lo
que tendremos que comprar el cableado de las dos clases, 3 Stich y 3 paneles de parcheo con
puertos Gbps por lo que tambin lo incluiremos en este presupuesto.
En este proyecto vamos a optar por poner un Router Gbps para aumentar el rendimiento y as
tener la red completamente en Gbps.
Este despliegue es totalmente recomendado y funcionar de manera ptima para un consumo
medio del cloud como los que se muestran a continuacin si se pretende un consumo ms
elevado del cloud, lgicamente debemos de aumentar la capacidad de computo.

54
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Procedimiento

Equipos para el Cloud: Los equipos que formarn el Cloud sern equipos totalmente
nuevos y los equipos que actualmente tienen los alumnos los utilizarn para acceder al
Cloud.

Cambio de todo el cableado a Categora 6.

Adquisicin de 3 Switch, 3 paneles de parcheo y 1 Router Gbps.

Debemos instalar en la habitacin destinada a los servidores un dispositivo de aire


acondicionado para refrigerar los equipos, ya que habr 5 equipos encendidos en un
espacio reducido.

Vamos a adquirir un armario para almacenar el Switch del Cloud y el Router. (En las
otras clases ya estn instalados).

Un armario rack para 17 U por si en el futuro decidimos aumentar los servidores.

55
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

En este proyecto pretendemos que cada alumno tenga disponibles los siguientes recursos:

2 Ncleos con 4 hilos de ejecucin.


8 GB de memoria RAM.
150 GB de almacenamiento.

Para conseguir esa capacidad para cada alumno hemos optado por obtener 5 servidores de los
cuales cuatro sern destinados como nodos de computacin con unas caractersticas
superiores y el restante ser el nodo controlador.
Componente
Ncleos
Hilos de ejecucin
RAM
Almacenamiento

Nodo controlador
4
8
16
2TB

Nodos de Computacin
16
32
64
2TB

Sumando el total de los nodos de computacin (4 nodos), finalmente nuestro Cloud tendr la
siguiente capacidad de computacin.
Componente

Valor

Ncleos

64

Hilos de ejecucin

128

Memoria RAM

256 Gb

Almacenamiento

8 Tb

Una capacidad ms que suficiente para lo que pretendemos que consuma cada alumno, si es
verdad que hay que tener en cuenta que vamos a implementar un RAID de tipo 1 en cada
servidor para evitar la prdida de informacin, por lo tanto perderemos la mitad de la
capacidad de almacenamiento.

56
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Lista de la compra

Para comprar unos servidores con estas caractersticas hemos contactado con Dell y entre la
amplia gama de servidores que nos han dado a elegir, finalmente nos hemos decantado por los
siguientes:
El modelo elegido para los nodos de computacin es un Dell PowerEdge R720 lo hemos
configurado a nuestro gusto de manera que le hemos puesto dos CPU modelo Intel Xeon E52670 que cuenta con 8 ncleos y 16 hilos de ejecucin cada una, le hemos ampliado la
memoria RAM a 64 GB (4x16GB), adems le hemos aadido 2 discos duros de 1 TB que los
vamos a configurar en RAID 1.
El nodo controlador hemos elegido tambien un Dell PowerEdge R720 pero esta vez con lo
hemos configurado con unas caractersticas mucho menores para reducir costes, ya que en
este nodo no se ejecutar ninguna instancia, lo hemos configurado con una sola CPU modelo
Intel Xeon E5-2603 que cuenta con 4 ncleos, le hemos ampliado la memoria RAM a 16 GB,
adems le hemos aadido 2 discos duros de 1 TB que los vamos a configurar en RAID 1.

57
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE
Articulo
Dell R720 (Computacin)
Dell R720 (Controlador)
Cisco SG500-28
Bobina cable Categora 6
Armario Rack Cablematic
Aire acondicionado
Armario Rack
Cisco 819 1Gbps

Cantidad/Unidades
4
1
3
1
1
1
1 /32U
1

TOTAL

Precio
7.253
2.182
571
318
160
345
500
984

Curso 13/14
Precio Total
29.016
2.182
1.713
318
160
345
500
984

35.218

58
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

A continuacin se muestra el diseo de red despus del despliegue de OpenStack de la manera


que los equipos de ASIR-1 y ASIR-2 se utilizaran para acceder al cloud y los nuevos
servidores comprados de la marca Dell sern los que formaran parte del cloud.

*Hay que tener en cuenta que este modelo no se ajusta totalmente a la realidad, ya que habra
que aadir a este modelo tanto el total de los nodos de computacin restantes como todos los
equipos de las clases adems de los paneles de parcheo.
Este modelo de despliegue de OpenStack como habris observado es bastante ms caro, pero
se podr trabajar de una manera eficiente y a un rendimiento bastante alto. Hay que tener en
cuenta tambin que el desembolse se hace en la instalacin luego, nunca ms tendremos que
cambiar los equipos de los alumnos, por lo que terminaramos amortizando el despliegue.

59
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Captulo 3: Amazon EC2


A pesar de que este documento est basado en OpenStack es importante conocer tambin
esta plataforma, aprender un poco sobre ella nos ser til ya que muchas opciones de
OpenStack estn basadas en Amazon EC2, adems Amazon AWS fue el pionero en el Cloud
Computing que conocemos hoy en da.

Qu es Amazon EC2?
Amazon Elastic Compute Cloud (Amazon EC2) es un servicio web que proporciona capacidad
informtica cambiar de tamao, literalmente, los servidores en los centros de datos de
Amazon, que se utilizan para construir y alojar sus sistemas de software. Puede acceder a los
componentes y caractersticas que EC2 proporciona mediante una GUI basada en web,
herramientas de lnea de comandos y API.
Con EC2, que utiliza y pagar slo por la capacidad que usted necesita. Esto elimina la necesidad
de hacer compras de hardware grande y costoso, reduce la necesidad de pronosticar el trfico,
y permite escalar automticamente los recursos de TI para hacer frente a los cambios en los
requisitos o los picos de popularidad relacionada con su aplicacin o servicio.

Historia
A finales de 2003, Chris Pinkham y Benjamin Black presentaron un documento proponiendo a
la compaa construir y vender un conjunto de servicios basados en la experiencia de la
construccin y uso de la infraestructura de Amazon.com. El primer servicio AWS lanzado para
el uso pblico era Simple Queue Service en noviembre de 2004. Amazon EC2 fue construido
por un equipo en frica del Sur, Ciudad del Cabo bajo Pinkham cuyo desarrollador lder fue
Chris Brown.
En junio de 2007, Amazon afirm que ms de 330.000 desarrolladores se haban inscrito para
utilizar Amazon Web Services.
Actualmente Amazon AWS es con bastante diferencia la plataforma IaaS con mayor cuota de
mercado debido a que su rendimiento es muy bueno adems de que fue el pionero en
despliegue de IaaS.
Aunque Amazon EC2 es la plataforma ms potente hay muchas plataformas que vienen
apostando fuerte como pueden ser Windows Azure o Google Cloud Platform, as como
proyectos de Open Source como OpenStack.

60
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Componentes principales de Amazon EC2


Al empezar con Amazon EC2, debe comprender los principales componentes de Amazon EC2 y
la forma en que son similares o diferentes a sus propios centros de datos.

Amazon Machine Images e instancias


Una Amazon Machine Image (AMI) es una plantilla que contiene una configuracin de
software (por ejemplo, un sistema operativo, un servidor de aplicaciones, y las aplicaciones).
Desde el IAM, que inicie las instancias, que son copias de la AMI se ejecutan como servidores
virtuales en la nube. Puede iniciar varias instancias de un IAM, como se muestra en la siguiente
figura.
Amazon publica AMIs muchos que contienen configuraciones de software comunes para el uso
pblico. Adems, los miembros de la comunidad de desarrolladores de AWS han publicado sus
AMIs personalizados. Tambin puede crear su propio personalizado o IAM IAM, al hacerlo le
permite comenzar rpidamente y fcilmente las nuevas instancias que cuentan con todo lo
necesario. Por ejemplo, si su aplicacin es un sitio web o servicio web, el IAM podra incluir un
servidor web, el contenido esttico asociado, y el cdigo de las pginas dinmicas. Como
resultado, despus de iniciar una instancia de este IAM, el servidor web se inicia, y su
aplicacin est lista para aceptar peticiones.
Puede lanzar diferentes tipos de instancias de una sola AMI. Un tipo de instancia que
determina esencialmente el hardware de la computadora host utilizado para la instancia. Cada
tipo de instancia ofrece diferentes capacidades de cmputo y memoria. Seleccione un tipo de
instancia sobre la base de la cantidad de memoria y potencia de clculo que usted necesita
para la aplicacin o el software que va a ejecutarse en la instancia. Para obtener ms
informacin, vea Tipos disponibles de instancia. Puede iniciar varias instancias de un IAM,
como se muestra en la siguiente figura.

61
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Regiones y Zonas de disponibilidad


Amazon tiene centros de datos en las diferentes reas del mundo (por ejemplo, Amrica del
Norte, Europa y Asia). En consecuencia, Amazon EC2 est disponible para su uso en diferentes
regiones. Con el lanzamiento de las instancias en regiones separadas, puede disear la
aplicacin para estar ms cerca de clientes especficos o para cumplir con requisitos legales o
de otro tipo. Los precios de Amazon EC2 uso varan segn la regin.
Cada regin contiene mltiples ubicaciones distintas llamadas Zonas de disponibilidad. Cada
zona de disponibilidad est diseado para estar aislado de catstrofes, cuenta con baja
latencia de conectividad de red a otras zonas de la misma regin. Con el lanzamiento de las
instancias en Zonas de disponibilidad por separado, usted puede proteger sus aplicaciones de
la falla de un solo lugar.

62
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Almacenamiento
Amazon nos proporciona tres modos de almacenamiento que son los siguientes:

Amazon Elastic Block Store (Amazon EBS)

Amazon EC2 Tienda Instancia

Amazon Simple Storage Service (Amazon S3)

La siguiente figura muestra la relacin entre estos tipos de almacenamiento:

Amazon EBS
Amazon volmenes de EBS es la opcin de almacenamiento recomendada para la mayora de
los casos. Amazon EBS ofrece un almacenamiento persistente para las instancias a nivel de
bloque de almacenamiento.
Amazon EBS es especialmente adecuado para aplicaciones que requieren una base de datos,
un sistema de archivos o el acceso a los recursos a nivel de bloque de almacenamiento.
Como podemos ver en el grafico anterior, podemos adjuntar varios volmenes a una instancia.
Adems hacer una copia d seguridad de los datos se puede crear una instantnea de un
volumen de EBS y este se almacenar en Amazon S3. Es puede crear un nuevo volumen en
Amazon EBS a partir de una instantnea y adjuntarlo a otra instancia.
La siguiente imagen muestra lo que normalmente es el ciclo de vida de un volumen:

63
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Almacenamiento de Instancia
Todos los tipos de instancias, con excepcin de los casos Micro, cuentan con un
almacenamiento temporal a nivel de bloque de almacenamiento. Este es el almacenamiento
que esta fsicamente conectado a la computadora host. Este volumen ser eliminado cuando la
instancia termina o es eliminada (Lo que en OpenStack llamamos almacenamiento Efmero).
Almacn de instancias es una opcin para el almacenamiento temporal de bajo costo. Puede
utilizar volmenes Instancia de almacn si no se requiere la persistencia de datos. (Lo que en
OpenStack llamamos almacenamiento Efmero).
Amazon S3
Amazon S3 es el almacenamiento por Internet. Proporciona una interfaz de servicio web
simple que le permite almacenar y recuperar cualquier cantidad de datos desde cualquier
lugar en la web.

Bases de Datos
Amazon EC2 nos permite implementar tambin bases de datos de una forma fcil y dndonos
a elegir entre varios tipos siendo los siguientes los ms comunes:

Servicio de base de datos relacional (Amazon RDS), que le permite obtener fcilmente
una base de datos relacional gestionado en la nube
Iniciar una instancia de una base de datos de AMI, y utilizar esa instancia EC2 como la
base de datos

Amazon RDS ofrece la ventaja de manejar las tareas de administracin de bases de datos, tales
como parchear el software, copias de seguridad y almacenar las copias de seguridad.

Redes y Seguridad
Cada instancia que se lanza en Amazon EC2 se le asigna una direccin IP pblica para su
acceso. En caso de que alguna aplicacin necesite una IP estatica, Amazon EC2 tambien ofrece
direcciones IP estticas.
Puede utilizar grupos de seguridad para controlar quin puede acceder a sus instancias. Estos
son anlogos a un servidor de seguridad de red entrante que le permite especificar los
protocolos, puertos y rangos de IP de origen que se les permite llegar a las instancias. Puede
crear varios grupos de seguridad y asignar diferentes reglas para cada grupo. A continuacin,
puede asignar a cada instancia de uno o ms grupos de seguridad, y usamos las reglas para
determinar qu trfico se deja que alcance la instancia. Puede configurar un grupo de
seguridad para que las direcciones IP solamente o grupos especficos de seguridad tienen
acceso a la instancia. (Este proceso ya lo conocemos, ya que es prcticamente idntico en
OpenStack).

64
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Monitoreo, Auto Scaling y balanceo de carga


AWS ofrece funciones que permiten realizar las tareas ms avanzadas como el balanceo de
carga o el auto escalamiento. Toda la informacin sobre cmo realizar estos procesos se
encuentra en la pgina web de Amazon AWS.

AWS Gestin de Identidades y Acceso


Amazon EC2 se integra con AWS Identity and Access Management (IAM) es el servicio
equivalente a Keystone en OpenStack, un servicio que le permite a su organizacin haga lo
siguiente:

Crear usuarios y grupos respecto a la cuenta de su empresa AWS.


Comparta fcilmente sus recursos de la cuenta de AWS entre los usuarios de la cuenta.
Asignacin de credenciales de seguridad nicas para cada usuario.
Granular usuarios controlar el acceso a los servicios y recursos.

Interfaces disponibles EC2


Amazon EC2 nos permite varias opciones para su acceso y administracin vamos a repasarlas
un poco en los siguientes apartados.
AWS Management Console
El AWS Management Console es una sencilla interfaz grfica de usuario basada en la web. Para
empezar a utilizar la consola, consulte Introduccin a instancias de Amazon EC2 Linux.
Herramientas de lnea de comandos (Herramientas API)
EC2 proporciona API basada en Java que nos muestra una lnea de comandos de cliente que se
envuelve la API de EC2.

65
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Cmo se le cobra por EC2?


Hemos dicho anteriormente que Amazon EC2 es una plataforma de pago por uso, pero como
realiza las mediciones Amazon para cobrarnos, la idea es muy parecida a como actualmente
nos cobran otros servicios comunes como por ejemplo la luz elctrica.
Con EC2, solo pagaras por lo que uses, y no hay cargo mnimo. Los cargos se dividen en las
siguientes partes generales:

Instancia uso.
Transferencia de datos.
Almacenamiento.

Si el servicio no le convence o quiere cambiar a otros servicios OpenSource como por ejemplo
OpenStack se puede dar de baja fcilmente desde la web de Amazon AWS
http://aws.amazon.com.

66
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Probemos Amazon EC2


En primer lugar quiero comentar mi experiencia en Amazon EC2, la verdad que ha sido
bastante positiva Amazon EC2 tiene una interfaz muy intuitiva, funciona todo muy fluido y a
una gran velocidad. Cuando me inici en el mundo del Cloud Computing Amazon AWS fue la
primera plataforma que prob y la verdad que acab muy satisfecho con el rendimiento, desde
mi experiencia creo que actualmente Amazon AWS es la mejor alternativa IaaS de pago por
uso.
Amazon EC2 tiene muchos entornos predefinidos e imgenes disponibles, nosotros tan solo
tenemos que elegir la imagen y lanzar la instancia lo cual es una gozada, tanto por la facilidad
de uso, como por el rendimiento, yo ya digo que me quedo con Amazon EC2 como IaaS de
pago por uso.

Amazon nos permite probar AWS de manera gratuita durante un ao con una serie de
limitaciones, a nosotros nos basta con lo que nos da Amazon gratuitamente para hacer
nuestras pruebas y conocer su funcionamiento que es el objetivo. A continuacin muestro una
captura de pantalla de la publicidad de la prueba gratuita que he comentado antes.

En primer lugar debemos registrarnos en http://aws.amazon.com/es/ , durante el registro


Amazon nos requerir todos nuestros datos incluida una tarjeta con algo de saldo (Te cobran
un euro que te devuelven pasados unos das Que no cunda el PANICO!).
Como Amazon no nos cobra hasta dentro de un ao cuando terminemos las pruebas nos
podremos dar de baja del servicio de la siguiente manera:
1. Ir a http://aws.amazon.com.
2. Haga clic en Mi cuenta / consola, a continuacin, haga clic en Actividad de la cuenta.
3. Inicia sesin para Amazon Web Services, si no lo ha hecho.
4. Segn cuenta, haga clic en Administrar tu cuenta.
5. Si cancela AWS, esto cancela todos los servicios, incluyendo EC2. En virtud de cancelar
su cuenta AWS pgina, haga clic en Cancelar su cuenta AWS. Alternativamente, usted
puede cancelar los servicios individuales, vaya a cancelar los servicios seleccionados,
seleccione Amazon Elastic Compute Cloud, a continuacin, haga clic en cancelar el
servicio.
67
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez estemos registrados en la plataforma vamos a crear una instancia de prueba para
comprobar el funcionamiento del servicio.
Una vez entramos en la plataforma nos mostrar todos los servicios de Amazon AWS
seleccionamos AC2 que es componente en el que nos vamos a centrar.

A continuacin nos muesta EC2 Dashboard que es la interfaz de administracin via web de A2C
desde la cual podemos administrar los servidores, lanzar instancias, crear volmenes, etc. EC2
es el equivalente a Horizon en OpenStack.

68
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

En esta prueba vamos a crear una instancia, para ello seleccionamos Instances en el men
izquierdo.

Seguidamente, EC2 Dashboard nos muestra las instancias que tenemos actualmente creadas,
en este caso no tengo ninguna, vamos a crear una.

69
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una gran ventaja que tiene Amazon AWS con respecto a OpenStack es que Amazon AWS ya
nos ofrece una gran cantidad de imgenes tanto Windows como de distribuciones Linux ya
instaladas en el servicio, con lo cual nos ahorramos tener que subirlas nosotros, simplemente
elegimos simplemente el sistema operativo que queremos y ya estar lista para lanzar la
instancia. En este caso vamos a elegir una imagen de Windows Server 2012.

Una vez seleccionada la instancia debemos elegir las caractersticas que va a tener nuestra
instancia, lo que en OpenStack llamamos el Sabor en este caso vamos a el tipo t1.micro ya
que es una versin gratuita y as evitamos cargos adicionales.

70
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez elegidas las caractersticas de la instancias (Sabor) nos permite aadirle un volumen a
la instancia en este caso vamos a aadirle un volumen de 30Gb.

71
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Debemos de elegir a que grupo de seguridad va a pertenecer la instancia, en grupo de


seguridad es donde elegiremos los valores de seguridad de la instancia, es decir, el trfico que
permitimos en esa instancia.
En este caso como no tenemos ningn grupo vamos a seleccionar Create a new security
group para crear un nuevo grupo de seguridad llamado Acceso TOTAL.
Vamos a aadir una regla a este grupo poco recomendable ya que permitiremos todo el trfico
desde cualquier direccin IP hacia la instancia pero al tratarse de una prueba esto tiene poca
importancia.

Una vez creado el grupo de seguridad simplemente seleccionamos el grupo que acabamos de
crear.

72
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Finalmente nos mostrar un resumen de todas las opciones seleccionadas antes de lanzar la
instancia para que confirmemos que son correctas.

Al igual que Ceilometer en OpenStack, EC2 nos termite tambin un servicio de telemetra
para controlar el consumo de recursos.

73
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez confirmado que las opciones verdaderamente son las que queremos debemos
seleccionar en la parte inferior derecha el botn que dice Launch para lanzar la instancia.
Sin embargo debemos de configurar una cosa ms antes de lanzar la instancia, ya que
debemos crear un par de claves RSA para poder acceder a ella. Seleccionamos Create a new
key pair y ponemos el nombre que queramos yo en mi caso le voy a poner Clave_Jorge.

Una vez definida la clave seleccionamos Download key pair en la parte inferior y comenzar
la descarga de nuestra clave.

Si vamos a la ruta donde hemos descargado la clave podemos comprobar que es una clave RSA
verdaderamente simplemente abriendo el archivo como se ve a continuacin.

74
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Finalmente ya podemos hacer clic en el botn Launch Instances y la instancia comenzar a


lanzarse.

Una vez terminado el lanzamiento de la instancia podemos comprobar como su estado es


Running lo cual quiere decir que el proceso de lanzamiento de la instancia ha finalizado. Sin
embargo no tendremos acceso a ella hasta que termine de generar la contrasea. Si
intentamos acceder nos muestra lo siguiente.

Podemos revidar el estado de la creacin de contrasea para comprobar cuando termina el


proceso cuando cambie el icono de Status Checks mientras su estado sea Initializing no
podremos acceder a ella.

Una vez cambia el icono nos indica que la instancia est lista para su acceso

75
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Para acceder a la instancia debemos seleccionar el botn de la parte superior que dice
Connect, nos mostrar la siguiente ventana.

Para acceder a ella mediante escritorio remoto EC2 nos lo pone muy fcil simplemente
seleccionamos la opcin de Download Remote Desktop File y comenzar la descarga de un
archivo con extensin .rdp que directamente al ejecutarlo conectaremos con la instancia.
Pero antes debemos de obtener la contrasea de administrador para acceder a ella
seleccionamos luego la seccin Get Password y nos requerir la clave RSA descargada
previamente, simplemente seleccionamos la clave y hacemos clic en Descrypt Password

76
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez descifrada la clave RSA nos muestra la clave del usuario administrador y ya podremos
acceder mediante escritorio remoto a la instancia.

Simplemente ejecutando el archivo direccin_ip.rdp y poniendo la clave anterior de


administrador, ya tendremos acceso a la instancia.

Cuando iniciamos sesin por primera vez el proceso es algo ms lento porque est creando el
perfil.

77
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Terminado el proceso de creacin del perfil nos mostrar el escritorio de Windows 2012
Server.

Podemos utilizar el servidor normalmente el proceso del cloud computing es totalmente


transparente al usuario.

78
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Como podemos comprobar tendremos acceso a internet sin problemas la siguiente pgina
Web muestra como he entrado sin problema en la pgina web del IES Romero Vargas.

Con esto terminamos el proceso de creacin de la instancia y como acceder a ella, la verdad
que EC2 es relativamente fcil te utilizar, adems en la pgina web de Amazon AWS podemos
encontrar informacin de todo tipo acerca de cmo utilizar sus servicios.

79
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Captulo 4. Instalaciones de OpenStack.


En este captulo vamos a explicar varias formas para iniciarse en el mundo e OpenStack
normalmente los servicios que se explicarn son para la instalacin en equipos con
relativamente pocos recursos y para entornos de Testing ya que hacen falta una gran
cantidad de recursos para desplegar OpenStack de una manera efectiva. Para iniciarse en el
mundo de OpenStack hay varios entornos medianamente predefinidos ya para una primera
toma de contacto, vamos a ver algunos.

TryStack
TryStack es una plataforma que nos permite utilizar OpenStack gratuitamente para hacer
pruebas y para probar configuraciones. Es una manera de comenzar con OpenStack solo nos
permitir lanzar instancias con unos recursos limitados, pero nos servir para una primera
toma de contacto. Cabe decir que TryStack es solo para entorno de pruebas nunca lo utilicis
para entornos de produccin ya que pueden eliminar los recursos en cualquier momento.
Para acceder debemos entrar en la web www.trystack.org donde nos encontraremos con la
siguiente pantalla en la que en la parte derecha vemos un apartado que dice Join Our
Facebook Group para probar Trystack debemos de registrarnos con nuestro Facebook y
tambin debemos de registrarnos en el grupo de Facebook de Trystack, lo cual lo podemos
hacer sin problemas, no te enviaran publicidad ni nada parecido.

Trystack esta respaldado por grandes empresas que apollan el proyecto como las que
podemos ver a continuacin:

80
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Debemos tener en cuenta que el servicio Trystack recibe una gran afluencia de solicitudes
debido a la gran cantidad pblico relacionado con OpenStack que quiere probar el servicio, por
lo tanto debemos de ser pacientes, ya que desde nos registramos en el servicio hasta que nos
validan la solicitud pueden pasar varios das.
Una vez nos validen la solicitud simplemente en la misma pgina de Trystack seleccionamos
Login.
Por ultimo comentar que Trystack se encienta ahora dando servicio de la versin Havana de
OpenStack y se estn planteando actualizar a nuevas versiones como Icehouse.

Vamos a crear una instancia en Trystack para comprobar que funciona correctamente aunque
el proceso de creacin se omitir en este apartado ya que se explicara en el captulo de
administracin de OpenStack.
Una vez hemos accedido mediante nuestro Facebook tendremos operativo un servidor de
OpenStack como podemos ver a continuacin podemos acceder sin problemas.

81
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

DevStack (OpenStack IceHouse)


DevStack es un conjunto de script bash que nos permiten instalar OpenStack de forma
automtica para entornos de desarrollo.
En este caso vamos a instalar DevStack en una mquina virtual con VMW pero es preferible
instalarlo en una maquina fsica para obtener un mejor rendimiento, adems vamos a instalar
la ltima versin de OpenStack Icehouse.
DevStack nos instalar todos los componentes necesarios para el funcionamiento de
OpenStack en una mquina virtual, con nuestro porttil simplemente podremos desplegar
OpenStack y hacer todas las pruebas que deseemos en l.
Para desplegar OpenStack mediante DevStack necesitaremos una mquina virtual o fsica con
al menos 2 Gb de memoria RAM.
Otro de los requisitos es que DevStack solo permite alguno de los siguientes Sistemas
Operativos:

Ubuntu 12.04 (Precise).


Fedora 20 and CentOS/RHEL 6.5.
OpenSUSE.
Debian.

Nosotros vamos a optar por instalarlo en un Ubuntu 14.04 LTS para comprobar que tambin
funciona correctamente, no es necesario que sea Ubuntu 12.04, eso lo dice la pgina oficial de
DevStack pero estar pendiente de actualizacin.

En primer lugar antes de comenzar verdaderamente la configuracin vamos a configurar la red


a establecer direccin IP fija para no tener luego problemas. Para ello editamos el fichero
/etc/network/interfaces
nano /etc/network/interfaces
Yo en mi caso lo he configurado de la siguiente manera, la configuracin depender de la
configuracin de la red.

82
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez comprobemos que tenemos conexin sin problemas a internet con la nueva direccin
IP fija vamos a actualizar los repositorios con la siguiente orden:
apt-get update
Una vez finalizada la actualizacin vamos a instalar GIT para que nos permita descargar los
archivos necesarios para la instalacin de DevStack ya que estos archivos se encuentran en un
repositorio GIT.
apt-get install git
Una vez instalado Git, podemos encontrar la ruta a este repositorio en la misma pgina de
DevStack. Los desarrolladores de DevStack se encargan de actualizar estos repositorios a las
nuevas versiones de OpenStack.

Debemos tener en cuenta que debemos ejecutar la lnea anterior con un usuario sin
privilegios, al ejecutar esa lnea de comando comenzar la descarga de DevStack.
$ git clone https://github.com/openstack-dev/devstack.git
En cuanto lo tengamos descargado debemos acceder a la carpeta que se nos ha creado
llamada devstack con la siguiente orden
cd devstack
Dentro de esa carpeta podremos ver cmo estn todos los script que realizarn en despliegue
de OpenStack

83
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Antes de ejecutar nada debemos de elegir la versin de OpenStack que deseamos que nos
instale Devstack, actualmente podemos elegir algunas de las siguientes opciones (Debemos
estar dentro de la carpeta devstack):

OpenStack- Havana
$ git checkout stable/havana
OpenStack- Icehouse
$ git checkout stable/icehouse

En este documento, como ya hemos comentado antes vamos a desplegar la ltima versin de
OpenStack Icehouse, por lo tanto ejecutamos la siguiente lnea.
$ git checkout stable/icehouse

Con la lnea anterior se realizan las modificaciones para la instalacin de la ltima versin,
recibiremos el siguiente mensaje.

Antes de ejecutar ningn script debemos de crear el fichero local.conf donde configuraremos
las contraseas que utilizarn los servicios, para que luego podamos acceder a ellos sin
problemas, en este caso solo vamos a configurar las contraseas pero podemos configurar
muchas ms opciones, vallan a la siguiente pgina para ver algunas de ellas
http://devstack.org/configuration.html
Vamos a crear el fichero local.conf dentro de la carpeta devstack para ello ejecutamos la
siguiente lnea
$ nano local.conf
Dentro del fichero debemos de escribir lo siguiente:

[[local|localrc]]
ADMIN_PASSWORD=password
MYSQL_PASSWORD=password
RABBIT_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=tokentoken

84
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Le damos permisos al fichero para no tener problemas luego con los permisos
#Chmod 666 local.conf
Finalmente ya podemos ejecutar el script que comenzar la instalacin este script se llama
stack.sh y lo podemos encontrar lgicamente dentro de la carpeta devstack.
$./stack.sh
Nos requerir la contrasea del usuario que utiliza sudo y comenzar la instalacin.

En la siguiente imagen se muestra devstack en pleno despliegue de OpenStack. Debemos tener


en cuenta que el proceso de instalacin es bastante largo debido a la gran cantidad de
componentes y configuraciones que tiene que instalar, as que debemos de ser pacientes, el
proceso suele tardar unos 30 minutos, dependiendo del rendimiento del equipo donde se est
instalando.

Una vez terminado el proceso de instalacin, devstack nos muestra la direccin desde la cual
podemos acceder a Horizon, en m caso es la siguiente:
http://192.168.128.128

85
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Vamos nuestro navegador Web y entramos en la direccin que nos muestra y veremos la
interfaz de Horizon que nos requiere un usuario y una contrasea para acceder, en mi caso yo
en el fichero local.conf puse password como contrasea, por lo tanto accedo con el usuario
admin con contrasea password.

Una vez Keystone valida nuestra contrasea veremos la interfaz de Horizon

Finalmente tenemos terminado el proceso de instalacin de OpenStack (Icehouse) mediante


Devstack, por ahora en este apartado no vamos a comentar nada ms sobre la administracin
de OpenStack, comentaremos como crear instancias, grupos de seguridad, usuarios, etc. en
otros apartados de este documento.
Finalmente cabe destacar una cosa muy importante, como Devstack esta creado para entornos
de prueba cada vez que reiniciemos nuestra mquina, perderemos el acceso a OpenStack, para
solucionar este problema, despus de cada reinicio debemos de ir a la carpeta devstack y
ejecutar el siguiente script rejoin-stack.sh.

86
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

$./rejoin-stack.sh
Debemos esperar un poco a que termine el proceso de relanzamiento de OpenStack y
tendremos disponible de nuevo Horizon en la misma direccin que anteriormente desde el
navegador.

87
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Instalacin de OpenStack con diferentes nodos


En este apartado pretendemos instalar OpenStack con un despliegue lo ms parecido posible a
lo que sera un despliegue real, para lo cual crearemos un escenario formado por varias
mquinas virtuales desplegadas con Vagrant donde se instala OpenStack a partir de recetas
desarrolladas en ansible. Esta vez vamos a ejecutar el despliegue en Debian 7 wheezy.
En primer lugar tenemos que tener en cuenta la memoria RAM que disponemos. Las cuatro
mquinas que se despliegan necesitan 2,5 GB de RAM, por lo que creo que con un ordenador
de 4 GB sera suficiente. Por otro lado partimos de que estamos usando un equipo con la
extensin de virtualizacin hardware VT-x/AMD-v activada.
Hay que tener en cuenta que este despliegue es aconsejable hacerlo en mquinas fsicas de lo
contrario el rendimiento ser psimo, adems no es posible hacer esta configuracin en
VMware es donde yo lo he intentado y da un error al instalar el nodo de almacenamiento
debido a que no reconoce el formato de discos de VMware.
Comencemos la instalacin, en primer lugar antes de comenzar verdaderamente la
configuracin vamos a configurar la red a establecer direccin IP fija para no tener luego
problemas. Para ello editamos el fichero /etc/network/interfaces
nano /etc/network/interfaces
Yo en mi caso lo he configurado de la siguiente manera, la configuracin depender de la
configuracin de la red.

Una vez comprobemos que tenemos conexin sin problemas a internet con la nueva direccin
IP fija vamos a actualizar los repositorios con la siguiente orden:
apt-get update
Como anteriormente, los datos se encuentran en un repositorio Git as que vamos a instalar
Git con la siguiente orden:
#apt-get install git

88
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

El software que se va a utilizar para ejecutar las mquinas virtuales es VirtualBox. Para la
instalacin, ejecutamos la siguiente orden:
# apt-get install virtualbox
Tambin necesitamos instalar un complemento de python que lo instalaremos con la siguiente
orden:
apt-get install python-netaddr
Vagrant nos permite crear entornos de desarrollo virtualizados. Esta herramienta nos permite
automatizar la creacin y gestin de mquinas virtuales. Vamos a utilizar esta herramienta
para definir y gestionar las mquinas virtuales que vamos a usar. Estas mquinas sern
ejecutadas en VirtualBox. Podemos instalar vagrant con la siguiente orden:
# wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.4.3_x86_64.deb
# dpkg -i vagrant_1.4.3_x86_64.deb
Las mquinas virtuales que se crean tienen el sistema operativo Ubuntu 12.04 amd64, por lo
tanto es conveniente descargar el box de vagrant precise64 con el siguiente comando:
vagrant box add precise64 https://cloud-images.ubuntu.com/vagrant/precise/current/preciseserver-cloudimg-amd64-vagrant-disk1.box
Si el proceso se a realizado correctamente debemos ver lo siguiente:

Por ltimo vamos a utilizar ansible, una herramienta que nos permite automatizar y gestionar
la configuracin de nuestras mquinas. Podemos utilizar la herramienta pip para instalar la
ltima versin de este programa:
# apt-get install python-pip python-dev
# pip install ansible
Un vez que tenemos instaladas las herramientas necesarias, vamos a obtener el repositorio
desde el que vamos a realizar la instalacin, para ello tenemos que clonarlo ejecutando los
siguientes comandos:
git clone https://github.com/openstack-ansible/openstack-ansible
Una vez descargado accedemos a la carpeta que se nos ha descargado con el nombre de
openstack-ansible
cd openstack-ansible

89
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Dentro de ella vamos a actualizar con la siguiente orden:


git submodule update --init

Antes de por ltimo, ejecutar los script de que realizarn la instalacin debemos tener en
cuenta que existe un error con esta instalacin que debemos de arreglar antes de realizar la
instalacin. El problema es que no se sustituye correctamente la variable que contiene la
contrasea de administrador en la instalacin, por lo tanto la instalacin nos funcionar
correctamente pero no podremos acceder con el usuario admin solo con el usuario demo,
esto lo arreglaremos de la siguiente manera:
Debemos ir a la carpeta openstack-ansible/group_vars y editar el fichero all en uno de

los apartados del fichero dice admin_password en el fichero tendr un formato


parecido al que muestro a continuacin:
admin_password: "{{ lookup('password', inventory_dir + '/credentials/admin-password') }}"
Debemos buscar esa lnea en el fichero openstack-ansible /group_vars/all y cambiarla para

que quede como la siguiente:


admin_password: secret

Una vez modificado el fichero podemos proceder a la instalacin con el siguiente


comando:
openstack-ansible# make

90
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Debemos ser pacientes, ya que el proceso de instalacin es bastante largo, puede llegar a
tardar hasta 1 hora.
Una vez finalizada la instalacin, Horizon estar disponible y podremos acceder a l mediante
cualquier navegador web accediendo a la siguiente direccin:
http://10.1.0.2/horizon
Como podemos comprobar podremos acceder sin problemas con el usuario admin y
contrasea secret, tambin podremos acceder con el usuario demo con contrasea
secret pero con este ltimo no tendremos privilegios de administrador.

91
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez dentro vemos la interfaz de Horizon desde la cual podremos administrar OpenStack de
una manera muy eficiente.

92
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Al finalizar la instalacion tendremos varias maquinas corriendo en virtualbox que se


corresponderan a cada uno de los nodos de OpenStack

Comentar tambien que si accedemos a este directorio podemos manejar las mquinas
virtuales (pararlas, arrancarlas o destruirlas). Estas tres acciones se haran con los siguientes
comandos:

openstack-ansible/testcases/standard#vagrant halt
openstack-ansible/testcases/standard#vagrant up
openstack-ansible/testcases/standard#vagrant destroy

Con esto dados por terminada la instalacin de OpenStack con Vagrant utilizando varios
nodos, cabe comentar que aunque este esquema se asemaja bastante a un despliegue real de
OpenStack no es nada aconsejable para una implementacin real, ya que todos los
componentes estan virtualizados.

93
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Captulo 5. Administracin y utilizacin de OpenStack


En este captulo vamos a comentar todo lo relacionado con la administracin de OpenStack,
como administrar instancias, agregar imgenes, crear grupos de seguridad, gestin de redes,
etc.

Gestin de imgenes
OpenStack utiliza imgenes de sistemas operativos previamente instalados para crear las
instancias que se ejecutan en los nodos de computacin. Estas imgenes pueden tener
diferentes formatos, pueden ser sistemas operativos limpios recin instalados o por contra
sistemas con muchas aplicaciones completamente configuradas y pueden ser incluso
instantneas (snapshots) de instancias que se estn ejecutando o se han ejecutado en alguno
de los nodos de computacin.
El componente de OpenStack encargado de la gestin de instancias es Glance que inicialmente
almacena las imgenes en el directorio /var/lib/glance/images, aunque es posible utilizar
tambin un componente de almacenamiento de objetos como OpenStack Swift.

Formato del disco


Tendremos que dar un formato a nuestra imagen para cuando creemos una mquina virtual.
Existen muchos tipos de formatos de imagen de disco, actualmente podemos utilizar los
siguientes en OpenStack (Disk and Container Formats):

Raw: Formato de imagen de disco no estructurado. Es el formato bsico que puede crearse
por ejemplo con la aplicacin dd, no est optimizado para su utilizacin en virtualizacin, pero
puede manejarse con herramientas bsicas del sistema (dd, parted, fdisk, mount, kpartx, ...)
vhd: Usado por herramientas de virtualizacin como VMWare, Xen, Microsoft, VirtualBox y
otros.

vmdk Otro formato usado por herramientas de virtualizacin como por ejemplo VMWare
player.

Vdi: Formato soportado por VirtualBox y el emulador QEMU


iso Formato de ficheros o contenido de un dispositivo ptico como un CDROM o
DVD.

qcow2: Formato de disco soportado por el emulador QEMU que permite expandir
dinmicamente y soporta Copy on Write.

Aki: Indica que la imagen guardada en Glance es una Amazon Kernel Image.
Ari: Indica que la imagen guardada en Glance es una Amazon Ramdisk Image.
Ami: Indica que la imagen guardada en Glance es una Amazon Machine Image.

94
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Formato del contenedor


El formato del contenedor se refiere a si la imagen de la mquina virtual est en un formato de
archivo que contiene metadatos. Actualmente podemos utilizar uno de los siguientes tipos de
formato para el formato del contenedor:

Bare: Esto indica que no existe formato sobre los metadatos de la imagen.
ovf Open Virtualization FormatEstndar: abierto que estn implementando diferentes
soluciones de virtualizacin/cloud.

Aki: Indica que la imagen guardada en Glance es una Amazon Kernel Image.
Ari: Indica que la imagen guardada en Glance es una Amazon Ramdisk Image.
Ami: Indica que la imagen guardada en Glance es una Amazon Machine Image.

95
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Crear una Imagen


Encontraremos una apartado que dice Imgenes si hacemos clic en l nos mostrar todas las
imgenes que Glance conoce, como todava no hemos aadido ninguna solo nos aparecern
las Cirros que se crean por defecto durante la instalacin.

96
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Como podemos ver en la captura de pantalla anterior hay un botn que dice Crear imagen
hacemos clic en l.
Horizon nos muestra un pequeo formulario para que pongamos el nombre, descripcin y
seleccionemos la imagen que queremos exportar Glance.
Seleccionando la seccin Seleccionar archivo y seleccionamos la imagen que queremos
aadir.

97
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Una vez seleccionada la imagen que queremos, debemos completar el formulario con el
formato de la imagen, adems de otros valores opcionales como la arquitectura o el disco duro
mnimo para lanzar una instancia con este tipo de imagen y hacemos clic en Crear Imagen y
comenzar el proceso de subida.

Una vez finalizado el proceso podemos comprobar como la imagen ya nos aparece disponible
para su uso.

98
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Grupos de seguridad
Un grupo de seguridad no son ms que reglas de cortafuegos (iptables) que controlan el
acceso a las instancias mediante la direccin IP otante.
Vamos a crear un grupo se seguirdad mediante Horizon, para ello vamos a la seccin Acceso
y seguridad de nuestro proyecto asignado y nos mostrar todos los grupos que tenemos
actualmente durante la instalacin se nos cre un grupo llamado Default.

Nosotros vamos a crear uno nuevo llamado AccesoInstancia, para ello hacemos clic en la
parte derecha en la seccin Crear grupo de seguridad.

Ahora el grupo de seguridad est creado pero no tiene ninguna regla, por lo tanto no sabr
que trfico permitir o cual denegar, vamos a crear reglas haciendo clic en Agregar regla.

99
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Horizon nos muestra las diferentes opciones que podemos elegir con respecto al trfico hacia
la instancia.

Vamos a crear una regla con la que permitamos todo el trfico ICMP hacia nuestra instancia
desde cualquier direccin IP, esta regla sera as:

Finalmente hacemos clic en aadir y nuestra regla estar creada correctamente

100
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Pares de claves
Si queremos tener acceso a nuestra instancia mediante SSH debemos de crear un par de claves
RSA para autenticarnos, para crearlas seguiremos el siguiente proceso.
Dentro del men Acceso y seguridad vamos a la pestaa que dice Pares de claves y
seleccionamos la opcin de la parte superior derecha que dice Crear par de claves, le
asignamos un nombre a nuestro par de claves, yo en mi caso le he puesto Clave_Jorge.

Cuando finalmente seleccionamos la opcin Crear par de claves la descarga comenzar


automticamente.

La descarga se debe realizar sin problemas y tendremos un archivo con el siguiente formato:

Nombre_par_de_claves.pem en mi caso clave_jorge.pem

101
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Sabores (Flavors)
Como ya hemos explicado anteriormente un sabor define para una instancia el nmero de
CPUs virtuales, la RAM, si dispone o no de discos efmeros, etc. En este apartado vamos a crear
nosotros uno de prueba para las instancias con Linux.
OpenStack preinstala una serie de sabores, que el administrador puede modificar, estos
sabores se muestran a continuacin.

Para ir a este apartado simplemente seleccionamos Sabores en el panel de administracin.


Para crear un nuevo sabor debemos de hacer clic en la parte superior derecha donde dice
Crear sabor.
En el siguiente formulario nos muestra nos pide un nombre, nuemro de VCPUs, RAM, Disco
duro, etc.
Nosotros hemos creado este sabor para instancias con Linux con las siguientes caractersticas:

102
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Como podemos comprobar una vez creado ya nos aparece el nuevo sabor entre los sabores
creados previamente.

103
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Administracin de instancias
Lanzar una instancia
Vamos a lanzar una instancia de Debian 7 wheezy, esta imagen ya la hemos cargado
previamente.
Para lanzar una instancia vamos a alguno de los proyectos a los que estemos asignados, en mi
caso yo estoy utilizando el usuario admin en el proyecto admin, vamos a la seccin instancias y
seleccionamos Lanzar instancia en la parte derecha.

En el men de creacin de instancias, Horizon nos requiere que introduzcamos algunos valores
como por ejemplo, nombre de la instancia, sabor, nmero de instancias, origen de arranque de
la imagen, etc.
Nosotros hemos elegidos los siguientes valores en la pestaa detalles para lanzar una imagen
de Debian 7.

Pero antes de lanzar la instancia debemos de seleccionar algunas opciones ms que nos da
Horizon, como por ejemplo en la pestaa Acceso y seguridad le podemos asignar el grupo de
seguridad que queremos que tenga la instancia, le vamos a asignar el grupo que creamos
anteriormente con el nombre de AccesoInstancia si recordamos este grupo de seguridad le
asignamos una regla que permita el trafico ICMP hacia la instancia.

104
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Adems del grupo de seguridad tambin le asignamos el par de claves que creamos
anteriormente.

Finalmente lanzamos la instancia haciendo clic en Lanzar y comenzar la creacin de la


instancia.

Pasado un tiempo el estado de la instancia cambiara a Running, una vez est corriendo la
instancia podremos acceder a ella sin ningn problema con haciendo clic en el nombre de la
instancia, luego veremos varias pestaas donde una de ellas es Consola que nos permitir
acceder a nuestra instancia mediante VNC.

105
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Como se puede ver en la siguiente captura vemos lo que est pasando en nuestra instancia
mediante la pestaa consola y podremos administrar nuestra instancia desde esta conexin
VNC.

Instantnea (Snapshot)
Un snapshot es una fotografa (copia de seguridad) de un servidor virtual en un momento
determinado. El snapshot permite volver a ese estado si se produce algn fallo al realizar
acciones o modificaciones.
Vamos a crear una instantnea de la instancia que hemos creado previamente seleccionamos
en la parte derecha Crear instantanea

Se nos abrir un formulario en el que debemos de introducir el nombre de la instantnea

Una vez creada la instantnea podremos acceder a ella como si de una imagen se tratara.

106
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Acciones para instancias


En el men de instancias hay una pestaa en la parte derecha llamada Ms en ella podemos
encontrar gran cantidad de acciones para realizar en nuestra instancia como por ejemplo,
Asociar una direccin Ip flotante para su acceso, ver log, redimensionarla, suspender la
instancia, terminar la instancia, etc.

107
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Gestin y creacin de Volmenes


Un volumen no es ms que una unidad de almacenamiento totalmente independiente de la
instancia, permanecer creado independientemente de que la instancia se elimine o no, para
hacernos una idea aproximada es como un disco duro que podemos conectar o desconectar de
las instancias cuando lo desechamos.
Para crear un nuevo volumen vamos a nuestro proyecto asociado y seleccionamos
Volmenes y como siempre en la parte derecha tendremos una opcin que dice Crear
volumen la cual nos permitir crear un volumen.

En el siguiente formulario se nos requerir que introduzcamos el nombre del volumen, el


tamao que deseamos que tenga, etc.

108
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Como podemos ver en la siguiente captura de pantalla el volumen se encuentra disponible


para su uso

Por ultimo vamos a asociar el volumen que hemos creado ahora con la instancia que creamos
previamente para eso vamos a la pestaa Ms del volumen y seleccionamos Editar
asociaciones

En el menu de asociaciones seleccionamos la instnacia a la que queremos asociarlo en la parte


inferior, como se muestra en la siguientr captura lo hemos asociado a la instancia Jorge-Debian
7.

Pasados unos minutos ya tendremos asociado el volumen a nuestra instancia y podremos


acceder a l desde la instancia.

109
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Gestin de Redes (Neutron)


Como ya hemos dicho anteriormente el encargado de la creacin y gestin de redes en
OpenStack IceHouse es Neutron vamos a conocerlo de una manera ms prctica.
Para hacer esta pequea prueba de creacin de redes vamos a crear 4 instancias, de manera
que vamos a dividirlas en 2 grupos, primer grupo ser la clase de 1 ASIR y el segundo grupo
ser la clase de 2 ASIR.
En primer lugar debemos acceder a la creacin y administracin de redes que se encuentra en
el men de la parte izquierda, seleccionamos Administrar Red y como vamos a crear una
nueva red seleccionamos Redes una vez dentro de ese men en la parte derecha pone
Crear red vamos a crear una red con el nombre ASIR1 que ser de la clase de primero de
ASIR.

Ahora vamos a crear una subred con el mismo nombre que pertenecer a ASIR 1

110
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Realizamos el mismo proceso para crear la red ASIR2 y al final del proceso obtenemos el
listado de las redes, en mi caso es algo as:

Como podemos ver tenemos creadas dos redes, ahora solo queda asignrselas a las instancias,
para realizar esta prctica hemos creado 4 instancias como ya hemos dicho le vamos a asignar
a dos de ellas la red ASIR 1 y a las otras dos la red ASIR 2.
En el proceso de creacin de la instancia hay una pestaa que dice Redes este campo es
totalmente obligatorio y simplemente tenemos que seleccionar la red a la que queremos que
pertenezca en este caso queremos que pertenezca a ASIR1.

De igual forma vamos asignando las instancias a la red que queramos las instacias que hemos
creado en esta prctica son las siguientes:

Como podemos observar las instancias Jorge y Jos Profesor han obtenido una direccin IP
correspondiente a la red a la que pertenecen, en este caso ha ASIR 2, mientras que el resto
han obtenido una direccin IP de la red ASIR1.

111
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Topologa de Red
Una de las grandes ventajas de Neutron es que nos permite ver la topologa de red de una
manera rpida y sencilla, simplemente haciendo clic en men de la izquierda y seleccionando
Topologa de red.
En la siguiente captura muestro la topologa de red de la prctica creada anteriormente:

112
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Gestin de usuarios y proyectos


OpenStack nos permite definir diferentes usuarios y asignarle a cada uno diferentes proyectos
para que puedan trabajar sobre ellos, vamos a repasar un poco en que consiste este la gestin
de usuarios y proyectos.

Proyectos
En el men de la izquierda hacemos clic en Panel de identidad y dentro de l seleccionamos
proyectos, esto nos mostrar un listado de todos los proyectos que tenemos actualmente
creados. En la siguiente captura de pantalla se ven algunos proyectos que se han creado
durante la instalacin.

Para crear un nuevo proyecto, podemos ver que en la parte superior derecha, hay un botn
que dice Crear proyecto, hacemos clic en l.
En el formulario que se muestra se nos requiere el nombre y la descripcin

Adems de la pestaa Informacin del proyecto tenemos dos pestaas ms una que dice
Miembros del proyecto que la podremos utilizar para agregar usuarios a este proyecto y la
pestaa Cuota la cual vamos a ver algo ms detenidamente.
113
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

En esta pestaa podemos establecer las limitaciones a las que estarn sujetas los diferentes
usuarios de OpenStack, entre ellas podemos definir, VCPUs, numero de instancias, numero
volmenes, memoria RAM, etc.

Por ltimo creamos el proyecto haciendo clic en crear proyecto.

114
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Usuarios
Podemos crear diferentes tipos de usuarios y asignarle roles diferentes a cada uno de ellos, de
manera que podemos limitar el acceso a los recursos, vamos crear un usuario de la siguiente
manera:
En el men de la izquierda hacemos clic en Panel de identidad y dentro de l seleccionamos
usuarios, esto nos mostrar un listado de todos los usuarios que tenemos actualmente
creados. En la siguiente captura de pantalla se ven algunos usuarios que se han creado durante
la instalacin y que OpenStack utilizar para la autentificacin entre servicios.

Para crear un nuevo usuario, podemos ver que en la parte superior derecha, hay un botn que
dice Crear usuario, hacemos clic en l.
En el formulario que se muestra se nos requiere el nombre de usuario, correo electrnico,
contrasea, proyecto al que queremos asociarlo y por ltimo el rol.

115
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Hemos creado el usuario Jorge y lo hemos asignado al proyecto ASIR-2 como se ve en la


siguiente captura de pantalla.

Finalmente hacemos clic en crear usuario y nuestro usuario estar creado correctamente y
podremos iniciar sesin con l.

116
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Conclusiones y agradecimientos
Finalizo este proyecto integrado sobre OpenStack Icehouse con la sensacin de que an
queda mucho por aprender en este gigantesco mundo que ha nacido entorno a OpenStack,
espero que este proyecto os haya servido de ayuda para conocer mejor OpenStack o para
comenzar vuestra andadura en este mundo. Mi consejo es que os formis para poder aportar
algo a la comunidad, a la gran comunidad de OpenStack en todo el mundo que es lo que
verdaderamente estn desarrollando este proyecto y los que hacen que esto salga a delante
con trabajo y esfuerzo.
Actualmente la comunidad espaola es bastante reducida, aunque est aumentando de una
forma considerable en los ltimos tiempos, dada a la pequea comunidad espaola en
comparacin con otras partes del mundo, hay poqusima documentacin en espaol por lo
tanto me ha sido de gran ayuda toda la documentacin aportada por Alberto Molina y Jose
Domingo dos profesores del IES Gonzalo Nazareno, sus aportaciones estn ayudando mucho a
la comunidad de habla hispana de OpenStack, os recomiendo que entris en sus blog, en ellos
podris encontrar informacin de todo tipo no solo relacionada con OpenStack, sino en varios
aspectos de la informtica, el blog de Alberto Molina es
http:/www.albertomolina.wordpress.com y Jos domingo que podris contactar con el
mediante su pgina web http://www.josedomingo.org/ , un especial agradecimiento a este
ltimo con el que intercambie va varios correos electrnicos para resolverme algunas dudas.
La comunidad de OpenStack tiene infinidad de documentacin en su pgina web
http://docs.openstack.org/ , desde la pgina oficial es donde he obtenido la mayor parte de la
documentacin, aunque tiene el inconveniente que est totalmente en ingls.
Finalmente finalizo este proyecto animando a todo el mundo a aportar su grano de arena por
la comunidad de OpenStack, una buena forma de comenzar en este mundo es suscribindose
a las listas de correo para estar a la ltima y enteraros de todas las novedades.
Jorge Guerrero Garrido

117
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Bibliografa
Sitio Web de OpenStack: https://www.openstack.org/
Gua de instalacin en Debian 7: http://docs.openstack.org/icehouse/installguide/install/apt-debian/content/
Gua de instalacin en Ubuntu 12.04/14.04 LTS:
http://docs.openstack.org/icehouse/install-guide/install/apt/content/
Gua para el usuario final: http://docs.openstack.org/user-guide/content/
Gua de Imgenes de VM: http://docs.openstack.org/image-guide/content/
Obtener Imgenes: http://docs.openstack.org/imageguide/content/ch_obtaining_images.html
Trystack: http://trystack.org/.
Blog de Alberto Molina: http://albertomolina.wordpress.com/
Pgina web Jos Domingo: http://www.josedomingo.org/pledin/
DevStack: http://devstack.org/
Informacin general: http://openwebinars.net/
Lista de Comandos OpenStack: http://docs.openstack.org/userguide/content/novaclient_commands.html
Buen post sobre la historia de OpenStack: http://nubeblog.com/
Informacin til sobre OpenStack: http://aprendiendoopenstack.blogspot.com.es/

118
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Glosario
API: La Application Programming Interface es un conjunto de funciones de desarrollo que
OVH pone a disposicin de sus clientes para que estos controlen sus servicios cloud. Gracias a
esta API, usted puede integrar directamente en sus programas llamadas a los servicios OVH.
Descubra laAPI de OVH.

Cloud: Son recursos informticos virtualizados, disponibles para uso pblico o privado. Los
recursos cloud son mltiples (procesador y capacidad de clculo, memoria, mquinas virtuales,
red, almacenamiento, archivado, plataformas, software). El cloud puede destinarse al
consumo interno de las empresas, o tambin al leasing externo o pago por consumo. Las
infraestructuras que producen estos recursos virtuales y servicios pueden estar repartidas
geogrficamente, consolidadas, conectadas para dar a un nivel de simulacin superior la
imagen de que es independiente de esas consideraciones: es la nube.

Clonacin: Accin de duplicar los recursos en el cloud para poder conservar las
configuraciones iniciales (instancias, proyectos, espacios de almacenamiento, espacios de
archivado).

Contenedores (containers): Un contenedor (container, PCS) es un espacio de


almacenamiento destinado a contener datos a corto o medio plazo. Estos datos quedan
accesibles permanentemente. Es posible tener varios contenedores (PCA) en una misma
cuenta cloud OVH para distintos usos.
Cada contenedor tiene su propia seguridad y es posible acceder/modificar/aadir nuevos
objetos (archivos) en cada container a travs de la API o, prximamente, desde el rea de
cliente Cloud OVH.

Disponibilidad (almacenamiento/archivado): En el contexto del almacenamiento y el


archivado, hablamos de disponibilidad cuando queremos acceder al servicio para subir o
recuperar datos. Decimos que la plataforma est disponible (o accesible) a travs de las
herramientas proporcionadas con un porcentaje de disponibilidad, que es la relacin entre:

El tiempo realmente disponible (excluyendo las interrupciones planificadas),

El tiempo total.

Dedicated Cloud (o cloud dedicado): En OVH entendemos el Dedicated Cloud como la


infraestructura virtual, dedicada para una empresa, que puede mejorarse rpidamente en
funcin de la demanda y de los picos de carga. El Dedicated Cloud permite acceder a recursos
(CPU, RAM, red, etc.) y servicios de forma puntual segn las necesidades.

Fiabilidad: En el contexto del almacenamiento y el archivado, definimos la tasa de fiabilidad


como el nmero de archivos preservados sin daos o incidentes en relacin con el nmero
total de archivos confiados al proveedor.

119
OpenStack - Jorge Guerrero Garrido.

OPENSTACK ICEHOUSE

Curso 13/14

Instancia: Llamamos instancia a cada servidor virtual iniciado por un perodo de tiempo
determinado. Es decir, la instancia es un servidor (mquina virtual) que, por lo general, se
utiliza estratgicamente de forma provisional, en lugar de instalarlo definitivamente.

Imgenes de mquina: En lugar de ofrecer un servidor (mquina virtual) vaco, es posible


instalar en l automticamente un sistema operativo y una serie de programas de software
preconfigurados para que el servidor est operativo directamente. Es lo que llamamos
imgenes de mquina.

OVF: Es un formato de archivo que permite almacenar/migrar mquinas virtuales apagadas.


Es el formato comnmente utilizado por VMware.

OpenStack: Es un entorno virtualizacin libre y completo que engloba numerosas funciones


especficas.

OpenSwift: OpenSwift es el nombre de la API de almacenamiento de OpenStack. A travs de


esta API usted puede gestionar sus contenedores cloud storage.

Objetos almacenados: Para el almacenamiento cloud (PCA), la tecnologa empleada


(OpenStack) es una tecnologa de almacenamiento de objetos. Un objeto de almacenamiento
corresponde a un archivo transferido a la plataforma.

Pay as you go: Hablamos de pay as you go cuando se pagan los recursos por consumo real.
Solo se paga lo que se ha consumido, y no por adelantado.

Proyecto cloud: Un proyecto cloud de OVH es un espacio asociado a una vApp. Este espacio
engloba una vxLAN (red virtual dedicada) y un conjunto de mquinas virtuales y de reglas de
red.

RESTful: Es el tipo de desarrollo de API ms utilizado hoy en da por la comunidad de


programadores.
Snapshot: Un snapshot es una fotografa (copia de seguridad) de un servidor virtual en un
momento determinado. El snapshot permite volver a ese estado si se produce algn fallo al
realizar acciones o modificaciones.

Restauracin: Puesta a disposicin del cliente de los datos subidos con anterioridad a un
espacio de archivado.

vCloud: Se trata de la tecnologa de control global (vCloud Datacenter) utilizada por OVH para
proporcionar los entornos de vApps y mquinas virtuales.

VApp: Se trata de una aplicacin virtual que agrupa un conjunto de instancias, una vxlan y las
reglas de configuracin de red relativas. Las direcciones IP externas tambin estn asociadas a
esta aplicacin y son enrutadas internamente hacia las diferentes mquinas.

VxLAN: Red virtual. En el marco de las instancias cloud, cada proyecto (espacio de instalacin
de mquinas) est asociado a una vxLAN en una vApp.

120
OpenStack - Jorge Guerrero Garrido.

También podría gustarte