Actualizado el 12 de Marzo del 2019 (Publicado el 6 de Noviembre del 2017)
1.204 visualizaciones desde el 6 de Noviembre del 2017
633,8 KB
17 paginas
Creado hace 11a (02/11/2012)
Introducci´on a OpenStack
Proyecto de Innovaci´on
.
Implantaci´on y puesta a punto de la infraestructura
de un cloud computing privado para el despliegue de
servicios en la nube
IES Gonzalo Nazareno
Dos Hermanas (Sevilla)
IES Los Albares
Cieza (Murcia)
IES La Campi˜na
Arahal (Sevilla)
IES Ingeniero de la Cierva
Murcia
Cloud Computing
Seg´un la wikipedia:
“La computaci´on en la nube, concepto conocido tambi´en bajo los
t´erminos servicios en la nube, inform´atica en la nube, nube de
c´omputo o nube de conceptos, del ingl´es cloud computing, es un
paradigma que permite ofrecer servicios de computaci´on a trav´es de
Internet.”
2 de 17
Cloud Computing. Capas
Tradicionalmente se definen tres capas:
Software as a Service (SaaS) Aplicaci´on completa ofrecida como
servicio en la nube (Servicios de Google, Salesforce.com,
Microsoft Office 365, . . . )
Platform as a Service (PaaS) Aplicaci´on completa para el desarrollo
ofrecida como servicio en la nube (Google App Engine,
Windows Azure, RedHat OpenShift, . . . )
Infrastructure as a Service (IaaS) Almacenamiento (tambi´en
denominado Storage as a Service) y capacidades de
c´omputo (m´aquinas completas) ofrecida como servicio
en la nube.
3 de 17
Cloud Computing. Tipos
P´ublico Una empresa ofrece IaaS a terceros, encarg´andose de
toda la gesti´on del Cloud. El caso m´as conocido es
Amazon Elastic Compute Cloud (EC2).
Privado Una organizaci´on configura sus propios recursos como
IaaS para tener m´as flexibilidad y control total sobre sus
recursos.
H´ıbrido Algunos servicios se gestionan en el cloud privado y
otros se transfieren a uno p´ublico, normalmente utilizan
una API com´un que permita una buena integraci´on.
4 de 17
Inicios de OpenStack
• Cloud propio desde 2005
◦ Cloud servers (IaaS)
◦ Cloud files (StaaS)
• Este software cambia a licencia libre en Abril 2010
• Comienza a utilizar Eucalyptus, pero lo descarta
por no ser completamente libre (es “open core”)
• Crea el software para IaaS Nebula
• Nebula cambia a licencia libre en Mayo 2010
• Nasa y Rackspace lo inician en Junio de 2010
• Dos componentes principales:
◦ OpenStack Compute (nova), deriva de Nebula
◦ OpenStack Object Store (swift), deriva de cloud
5 de 17
files
Objetivo de OpenStack
“Crear una plataforma en software libre para cloud computing que
cumpla con las necesidades de los proveedores de nubes p´ublicas y
privadas, independientemente de su tama˜no, que sea f´acil de
implementar y masivamente escalable.”
6 de 17
Principios fundacionales de OpenStack
• Licencia Apache 2.0, no existe versi´on “enterprise”
• Proceso de dise˜no abierto
• Repositorios p´ublicos de c´odigo fuente
• Todos los procesos de desarrollo deben estar documentados y ser
transparentes
• Orientado para adoptar est´andares abiertos
• Dise˜no modular que permite flexibilidad mediante el uso de APIs
7 de 17
OpenStack es libre y abierto
• OpenStack es un proyecto con licencia libre (Apache)
• Dise˜no abierto:
◦ http://blueprints.launchpad.net/openstack
◦ http://www.openstack.org/summit/san-diego-2012/
• Desarrollo abierto:
◦ http://launchpad.net/openstack y
http://github.com/openstack/
◦ Lenguaje de programaci´on Python
◦ http://bugs.launchpad.net/openstack/
• Comunidad abierta:
◦ http://www.openstack.org/community/
◦ http://www.openstack.org/foundation/companies/
◦ http://lists.openstack.org
• Comunidad + empresas
8 de 17
Versiones de OpenStack
• Proyecto muy nuevo, pero con un fuerte ritmo de desarrollo
Austin 21 Octubre 2010
Bexar 3 Febrero 2011
Cactus 15 Abril 2011
Diablo 22 Septiembre 2011 (Publicaci´on semestral)
Essex 5 Abril 2012
Folsom 27 Septiembre 2012
Grizzly Previsto 4 Abril 2013
• Est´a previsto que se publiquen dos versiones al a˜no
• Hasta ahora cada versi´on incluye importantes modificaciones
respecto a la anterior
• Essex ha sido la primera versi´on “completa”
• Desde Cactus, el ritmo de publicaci´on se acopla al de Ubuntu
9 de 17
OpenStack Essex (2012.1)
• ¿Por qu´e es importante Essex?
◦ Primera versi´on completa de OpenStack para usar en producci´on
◦ Presente en Ubuntu 12.04 LTS. La pr´oxima versi´on LTS ser´a en 2014
◦ Presente en Debian Wheezy (pr´oxima estable). Debian wheezy
soportar´a OpenStack Folsom en backport
• Componentes de OpenStack Essex:
◦ OpenStack Compute (nova)
◦ OpenStack Object Store (swift)
◦ OpenStack Image (glance)
◦ OpenStack Identity (keystone) ← Nuevo en Essex
◦ OpenStack Dashboard (horizon) ← Nuevo en Essex
http://wiki.openstack.org/ReleaseNotes/Essex
10 de 17
OpenStack Folsom (2012.2)
• OpenStack tiene un ritmo de publicaci´on semestral, dif´ıcil de
incluir en la publicaci´on de distribuciones “estables”. Ubuntu LTS
o Debian se publican cada dos a˜nos.
• Incluye mejoras en bastantes componentes de OpenStack
• Incluido en Ubuntu 12.10
• Se incluir´a en Debian Wheezy mediante backport (repositorio extra
menos estable)
• Las principales novedades son la aparici´on de dos nuevos
componentes principales:
◦ OpenStack Network Service (Quantum)
◦ OpenStack Block Storage (Cinder)
http://wiki.openstack.org/ReleaseNotes/Folsom
11 de 17
¿Es OpenStack una buena opci´on?
• A pesar de ser un proyecto muy nuevo, tiene un ritmo de desarrollo
muy fuerte
• Cuenta con la mayor comunidad de desarrolladores dentro de los
proyectos de software libre para cloud computing (∼200 en Essex)
• M´as de 100 empresas participan en el desarrollo en diferente
Google Trends:
medida
• Esto es consecuencia
de la orientaci´on libre
y abierta del proyecto
• Has o´ıdo hablar de
OpenStack con
motivo, esto no es
vaporware
12 de 17
Servicios de OpenStack nova
• Nova es el componente principal de OpenStack y est´a compuesto
por varios servicios independientes:
nova-api Encargado de aceptar las peticiones de los usuarios o
del resto de componentes de OpenStack mediante
una API RESTful
nova-scheduler Encargado de planificar la ejecuci´on de las
instancias en los diferentes nodos del cloud
nova-compute Encargado de ejecutar una instancia sobre un
hipervisor
nova-network Encargado de la comunicaci´on de la instancia con el
exterior
nova-volume Encargado de gestionar los vol´umenes asociados a las
• Los componentes de nova se comunican entre s´ı mediante AMQP
instancias
13 de 17
Funcionamiento t´ıpico de OpenStack
• Un usuario interact´ua con la API de nova (bien directamente o
indirectamente a trav´es de horizon) para ejecutar una instancia.
• nova-api le pedir´a que se autentique previamente con keystone
• Una vez autenticado le mostrar´a las im´agenes disponibles en glance
• Cuando seleccione una imagen y unas caracter´ısticas para la
instancia, se enviar´a a nova-scheduler la petici´on
• Nova-scheduler determinar´a en que nodo debe ejecutarse la
instancia
• Nova-compute del nodo seleccionado se encargar´a de ejecutar la
instancia sobre el hipervisor que disponga
• Nova-network realizar´a las configuraciones necesarias en la red
• Nova-volume se encargar´a de gestionar en su caso los vol´umenes
asociados a la instancia
14 de 17
Funcionamiento de OpenStack
15 de 17
Instalaci´on de componentes de OpenStack
• Dependiendo del n´umero de equipos del cloud y la configuraci´on de
red, se instalar´an en cada nodo diferentes componentes, p. ej.:
16 de 17
APIs
• Cada componente de OpenStack ofrecen una API RESTful
• Las APIs se pueden utilizar con XML o JSON (por defecto JSON)
• Esto hace OpenStack extensible y adaptable a cada entorno
$ nova -- debug list
connect : (172.22.222.1 , 5000)
send : ’ POST / v2 .0/ tokens HTTP /1.1\ r \ nHost : 1 7 2 . 2 2 . 2 2 2 . 1 : 5 0 0 0 \ r \ nContent - Length :124
\ r \ ncontent - type : a p p l i c a t i o n / json \ r \ naccept - e n c o d i n g : gzip , deflate \ r \ naccept : ap
p l i c a t i o n / json \ r \ nuser - agent : python - n o v a c l i e n t \ r \ n \ r \ n {" auth ": {" t e n a n t N a m e ": " te
st " , " p a s s w o r d C r e d e n t i a l s ": {" u s e r n a m e ": " user " , " p a s s w o r d ": " t e s t p a s s "}}} ’
reply : ’ HTTP /1.1 200 OK \ r \n ’
connect : (172.22.222.1 , 8774)
send : u ’ GET / v2 / a a a a a a a a 5 8 9 4 4 7 3 c 8 a 9 8 f 8 9 a 8 9 5 c 6 b 2 c / servers / detail HTTP /1.1\ r \ nHost :
1 7 2 . 2 2 . 2 2 2 . 1 : 8 7 7 4 \ r \ nx - auth - project - id : test \ r \ nx - auth - token : e 9 2 3 3 f e f 4 c e 3 4 e e 4 9 f 7 d
b 1 a a a a a a a 1 3 f \ r \ naccept - e n c o d i n g : gzip , deflate \ r \ naccept : a p p l i c a t i o n / json \ r \ nuser
- agent : python - n o v a c l i e n t \ r \ n \ r \n ’
reply : ’ HTTP /1.1 200 OK \ r \n ’
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+ - - - - - - - -+ - - - - - - - - - - - - - - -+ - - - - - - - - - - - - - - - -+
|
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+ - - - - - - - -+ - - - - - - - - - - - - - - -+ - - - - - - - - - - - - - - - -+
| V E R I F Y _ R E S I Z E | vlan5 = 1 0 . 0 . 5 . 6 |
| b1724bd0 -34 f4 -4 bf1 -9444 -110 e b 3 5 3 1 6 0 2 | demo9
| e82814aa - fb1d -4 c29 -81 ab - c 3 9 f 9 9 1 8 4 4 1 3 | demo10 | ACTIVE
| vlan5 = 1 0 . 0 . 5 . 3 |
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+ - - - - - - - -+ - - - - - - - - - - - - - - -+ - - - - - - - - - - - - - - - -+
N e t w o r k s
Status
ID
|
Name
|
|
17 de 17
Comentarios de: Introducción a OpenStack (0)
No hay comentarios