proyecto fin de carrera - uocopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · opennebula y...

37
OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor: Víctor Carceler Hontoria Junio 2012 Proyecto Fin de Carrera

Upload: others

Post on 10-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula y Hadoop: Cloud Computing con herramientas

Open Source

Francisco Magaz Villaverde Consultor: Víctor Carceler Hontoria

Junio 2012

Proyecto Fin de Carrera

Page 2: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Contenido

•  Introducción  •  ¿Qué  es  Cloud  Compu5ng?  •  IaaS:  OpenNebula  •  PaaS:  Hadoop  •  Aplicación  Prác5ca  

2

Page 3: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

3

Cloud Computing

Page 4: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Cloud Computing

4

•  Definición  – Paradigma   computacional   que   pretende   el   uso  compar5do   de   recursos   (procesamiento,  almacenamiento,   servicios)   a   través   de   Internet  (también   redes   privadas)   de   la   forma   más  transparente  posible  para  el  usuario.    

Page 5: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Cloud Computing

5

•  Caracterís5cas  principales  – Servicio  bajo  demanda      – Elas5cidad  – Pool  de  recursos      – Acceso  por  red  – Recursos  compar5dos  

Page 6: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Cloud Computing

6

Ventajas   Inconvenientes  

Escalabilidad   Dependencia  del  proveedor  

Coste   Localización  de  los  datos  

Confiabilidad   Protección  de  la  información  

Integración   Fiabilidad  

Rapidez  de  despliegue   Cues5ones  legales  

Simplicidad  

Page 7: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Modelos de despliegue

7

•  Público:   Todos   los   recursos   proporcionados  por  el  proveedor  del  servicio.  

•  Híbrido:   Unión   de   una   nube   pública   y  privada.  

•  Privado:  Toda  la  infraestructura  pertenece  al  usuario.  

Page 8: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Modelos de servicio

8

•  SaaS:  SoVware  como  servicio  –  Proporciona   aplicaciones   que   serán   u5lizadas  directamente  por  el  usuario.  

•  PaaS:  Producto  como  servicio  –  Proporciona   Sistemas   Opera5vos,   herramientas  específicas  (ej.:  SGBD)  y  de  desarrollo.  

•  IaaS:  Infraestructura  como  servicio  –  Proporciona  una  infraestructura  de  computación.  

Page 9: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Modelos de servicio

9

Page 10: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

10

IaaS: OpenNebula

Page 11: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula

11

•  Solución  Open  Source  (bajo  licencia  Apache  v2)  que  permite  implementar  fácilmente  infraestructuras  Cloud  Compu5ng  privadas  (también  híbridas)  según  el  modelo  IaaS.    

•  Proyecto  iniciado  por  la  por  la  Universidad  Complutense  de  Madrid  en  2008.  

Page 12: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula

12

•  Plataforma   de   Cloud   Compu5ng   escalable,  segura  y  rápida  de  desplegar.  

•  Consiste  en  un  soVware  que  permite  desplegar  máquinas   virtuales   sobre   un   pool   de  máquinas  _sicas  u  hipervisores.    

•  Hipervisores  soportados:  –  Xen  –  KVM  –  VMWare  

Page 13: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula – Pilares básicos

13

•  Almacenamiento  •  Repositorio  de  plan5llas  •  Redes  virtuales  •  Manejo  de  máquinas  virtuales  •  Clústeres  •  Usuarios  y  grupos  •  API  

Page 14: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula – Pilares básicos

14

Page 15: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

OpenNebula – Hoy en día

15

•  Soporte   comercial   a   través   de   la   empresa  C12G.  

•  Disponible   en   los   repositorios   oficiales   de  Debian,  Ubuntu  y  OpenSuse.  

•  Uitlizado  por  Telefonica,  FermiLab  o  el  CERN.  

Page 16: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

16

PaaS: Hadoop

Page 17: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop

17

•  Es  un  framework  que  permite  el  tratamiento  distribuido   de   grandes   can5dades   de   datos  (del  orden  de  peta  bytes)  y  trabajar  con  miles  de  máquinas  de  forma  distribuida.  

•  Inspirado   en   la   documentación   sobre  MapReduce   y   Google   File   System   publicada  por  Google.  

Page 18: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - Características

18

•  Económico  

•  Escalable    

•  Eficiente  

•  Confiable  

Page 19: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - Aspecto clave

19

•  Hadoop,   en   lugar   de   mover   los   datos   hacia  donde   se   hace   el   procesamiento,   Hadoop  mueve   el   procesamiento   (Tasks)   a   donde  están  los  datos.  

•  Esto  reduce  el  tráfico  de  información  a  través  de  las  redes.  

Page 20: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - Capas

20

•  MapReduce :   P roce sam ien to   de   l a  información  de  forma  distribuida.  

•  Hadoop   Distributed   File   System   (HDFS):  Almacenamiento   de   todos   los   datos  repar5éndolos   entre   cada   nodo   de   la   red  Hadoop.  

Page 21: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - Capas

21

Page 22: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop – Tipos de nodos

22

•  NameNode:  –  Almacena  los  metadatos  del  sistema  de  ficheros  HDFS  y  donde  se  almacenan  los  bloques  de  datos.  

•  DataNode:  –  Almacena  los  bloques  de  datos  de  HDFS.  

•  JobTracker:  –  Ges5ona   las   tareas   MapReduce   eligiendo   que   nodo   ejecuta   cada  

una.  •  TaskTracker:  

–  Ejecuta   las   tareas  Map   o   Reduce   siguiendo   instrucciones   del  JobTracker.  

Page 23: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - MapReduce

23

•  Map   and   Reduce   es   un   algoritmo   de   la  categoría  divide  y  vencerás.  

•  Se  basa  en   la  programación  funcional,  en   las  funciones   Map   y   Reduce   de   los   lenguajes  funcionales.  

– Map(k1,v1)  →  list(k2,v2)  – Reduce(k2,  list  (v2))  →  list(v3)  

Page 24: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - MapReduce

24

•  MapReduce   transforma   una   lista   de   clave/valor  en  una  lista  de  valores.  

•  Un  ejemplo  de  aplicación:  Contar  palabras  en  un   documento   de   entrada   (ú5l   para   la  indexación  de  ficheros)  

Page 25: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - MapReduce

25

Page 26: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - HDFS

26

•  Principal   sistema   de   almacenamiento   u5lizado  por  Hadoop.  

•  Crea  múl5ples  replicas  de  los  bloques  de  datos  y  los  distribuye  entre  los  nodos  de  un  clúster.  

•  Desde   la   perspec5va   del   usuario,   HFS   se  muestra  como  un  sistema  de  ficheros  tradicional  pudiendo  llevar  a  cabo  operaciones  CRUD.  

Page 27: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - HDFS

27

•  Recuperación  antes  fallos  de  hardware  •  Acceso  en  streaming  •  Grandes  volúmenes  de  datos    •  Coherencia  simple  •  Portabilidad  

Page 28: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Hadoop - HDFS

28

Page 29: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

29

Aplicación Práctica

Despliegue  de  un  Clúster  Hadoop  u5lizando  OpenNebula  con  hipervisor  

Xen    

Page 30: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Aplicación Práctica - Material

30

•  Ordenador  Barebone.  Se  ejecuta  el  hipervisor  Xen  controlado  por  OpenNebula.  –  Hardware:  

•  Procesador  Intel  Core  i3  con  VT-­‐x  a  3,10  GHz.  •  8GB  de  memoria  RAM.  •  1  TB  de  disco  duro.  •  Un  Interfaz  de  red.  

–  SoVware:  •  Debian  Wheezy  •  Xen  4.1  

•  Mac-­‐Mini:  Una  máquina  virtual  Debian  corriendo  en  VMWare  Fusion  hará  el  rol  de  front-­‐end  de  OpenNebula.  –  Procesador  Intel  Core  2  Duo.  (1  procesador  para  la  máquina  virtual)  –  2  GB  de  memoria  RAM  (512  MB  para  la  máquina  virtual)  –  350  GB  de  disco  duro  (15  GB  para  la  máquina  virtual)  –  Un  Interfaz  de  red.  

Page 31: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Aplicación Práctica

31

Page 32: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Aplicación Práctica

32

•  Principal  hándicap:  –  Limitaciones  de  una  maqueta  de  laboratorio    

•  Aún   así   se   ha   podido   desplegar   las   máquinas   virtuales   en  OpenNebula.  

•  Sobre  estas  máquina  virtuales  (nodos  del  clúster  Hadoop)  se  han  ejecutado  ejemplos  de  demo  de  tareas  MapReduce.  

Page 33: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Aspectos a destacar en el despliegue

33

•  El  inicio  es  di_cil  ya  que  hay  que  integrar  varios  sistemas:    

–  Virtualización  con  OpenNebula  –  Hadoop  con  OpenNebula  

 •  Debido   a   la   naturaleza   Open   Source   de   las   tecnologías  

elegidas  la  documentación  disponible  es  abundante  y  ú5l.  

•  Una  vez  desplegados  y  configurados  los  primeros  nodos,  los  siguientes   son   más   sencillos,   siendo   posible   automa5zar  dicho  proceso.  

Page 34: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

En el mundo real

34

•  Esta   infraestructura   implantada   en   un   entorno  real  puede  u5lizarse  para:  

 –  Indexación  masiva  de  archivos.    –  Almacenamiento   de   grandes   volúmenes   de   datos   con  tolerancia  a  fallos.  

 – Minería  de  datos.  

Page 35: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Posibles mejoras

35

•  U5lización  de  redes  virtuales.    •  Uso  de  la  contextualización.  

Page 36: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Conclusiones

36

•  Cloud  Compu5ng  no  es  solo  una  tendencia,  es  una  realidad.  •  Cuenta  con  el  apoyo  de  grandes  empresas  (Amazon,  Google,  

etc.)  •  Las   nubes   privadas   son   las   preferidas   por   las   grandes  

empresas  actualmente.  •  Es  posible  desplegar  y  dar  servicio  a  terceros  mediante  una  

infraestructura   Cloud   Compu5ng   u5lizando   herramientas  Open  Source.  

•  Existen  mercados  por  explotar  dentro  de  esta  tecnología.  

Page 37: Proyecto Fin de Carrera - UOCopenaccess.uoc.edu/webapps/o2/bitstream/10609/... · OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor:

Gracias por su atención