OpenStack como herramienta didáctica

Alberto Molina Coballes y José Domingo Muñoz Rodríguez

Primer encuentro OpenStack Sevilla. Sevilla 15 de Abril de 2015

Theme by: reveal.js

Sobre nosotros

Objetivos iniciales (2011)

  • Conocer el Cloud Computing. Especialmente IaaS
  • Formación Profesional: Aprendizaje a través de la práctica

Proyecto de Innovación

  • Proyecto desarrollado junto al IES Los Albares de Cieza (Murcia), IES La Campiña de Arahal (Sevilla) e IES Ingeniero la Cierva de Murcia
  • No participó ninguna empresa del sector ni ninguna otra administración
  • Resultados del proyecto. La documentación técnica ya está obsoleta.
  • Respuesta a los resultados:
    • Administración pública
    • Empresas

Características principales

  • Nube privada IaaS
  • Software libre
  • Inicialmente OpenNebula
  • Finalmente OpenStack

¿Por qué OpenStack?

  • Porque queremos instalar nuestro propio software para proporcionar IaaS
  • Porque tenemos demanda variable de infraestructura y queremos una autogestión ágil por parte de los usuarios
  • Porque es software libre
  • Porque es un proyecto estable, con muchos apoyos y muy buenas perspectivas de futuro
  • Porque tiene muchas funcionalidades
  • Porque podemos utilizar hardware convencional

OpenStack en el IES Gonzalo Nazareno

OpenStack IESGN

2011-12

  • Primeras pruebas en equipos convencionales
  • Nueva asignatura en 2º de ASIR sobre virtualización y cloud computing
  • Empezamos con OpenNebula 3 y OpenStack Diablo
  • Adquisición de servidores
  • Abril 2012: Instalación manual de OpenStack Essex (2012.1) sobre Debian Wheezy: Nova (KVM, nova-volume, nova-network), Keystone (SQL), Glance y Horizon. Nexentastor en el nodo de almacenamiento.
  • Varios alumnos hicieron su proyecto final sobre alguno de los componentes de esta instalación

2012-13

  • Comienza la utilización en el aula: Sistemas, Servicios y Cloud Computing
  • Muy provechoso a pesar de encontrar numerosos errores
  • Comienzan las colaboraciones esporádicas en "Debian OpenStack Packaging Team"
  • Se informa de algunos errores encontrados y se proponen parches
  • Sólo se utiliza la nube para prácticas. Los servidores de la red siguen en MVs convencionales (KVM)

2013-14

  • Nueva instalación manual en Septiembre
  • OpenStack Grizzly (2013.1) sobre Debian Wheezy (paquetes backport): Nova (KVM), Keystone (SQL), Glance, Cinder (LVM), Neutron (OVS) y Horizon
  • Inicialmente encontramos neutron muy complejo
  • Creación de usuarios, proyectos y redes con adduser-cloud
  • OpenStack más estable. Problemas con volúmenes e iscsi-target
  • Alumnos formados en OpenStack, pero aún no detectamos demanda del sector

2014-15

  • Nueva instalación con ayuda de openstack-debian-ansible. Últimos ajustes hechos manualmente.
  • OpenStack Icehouse (2014.1) sobre Debian Jessie: Nova (KVM), Keystone (SQL), Glance, Cinder (LVM), Neutron (OVS), Horizon (HTTPS) y Heat
  • Sin problemas significativos. Muy buena experiencia por parte de los alumnos
  • Comenzamos a detectar interés en OpenStack en el sector
  • Empezamos a incluir algunos servicios no críticos en instancias
esquema iaas

Equipos

  • 1 nodo controlador: Equipo básico con 1 CPU y 12 GiB de RAM
  • 1 nodo de red:Equipo básico con 1 CPU y 16 GiB de RAM
  • 1 nodo de almacenamiento: Equipo con 24 GiB de RAM, 1 SSD y 12 TiB en 6 HDs.
  • 4 nodos de computación: 8 CPUs (80 cores) y 192 GiB de RAM

Impresiones

  • Equipos sobredimensionados para la demanda real. Habitualmente sólo utilizamos dos nodos de computación
  • El uso de RAM en los nodos controlador, de red y almacenamiento es bajo en nuestro entorno (4-5 GiB como máximo)
  • Uso mínimo de CPU (entornos de pruebas)
  • Relación inadecuada CPU/RAM. CPU allocation ratio: 16:1, RAM allocation ratio: 1.5:1
  • Mejoras pendientes: Alta disponibilidad, KSM y Ceph
  • Componentes a considerar: Ceilometer, Swift, Designate, Trove y Sahara

Uso didáctico

"No hay apenas diferencias entre el aprendizaje teórico y el aprendizaje práctico. Al menos en teoría."

Proyectos

Cada uno de los 70 alumnos cuenta con:

  • Un proyecto en el que puede crear las redes, subredes y routers que desee
  • Hasta 10 instancias
  • Hasta 10 volúmenes
  • Hasta 10 IPs flotantes
  • Se monta una infraestructura similar mantenida por el propio alumno durante todo el curso. Por ejemplo: targaryen, stark, lannister y greyjoy

Otros elementos

  • Aprendizaje basado en proyectos
  • Redmine
  • OpenVPN

Utilización típica

  1. Se propone un proyecto o una tarea a través de redmine
  2. Los alumnos crean instancias y les asocian volúmenes si es necesario
  3. Los alumnos añaden las claves públicas de los profesores para que estos puedan acceder a las instancias
  4. Los alumnos se responsabilizan del mantenimiento
  5. En determinados casos un alumno puede compartir una instantánea con sus compañeros
  6. Se puede continuar el trabajo desde fuera del aula a través de la VPN
  7. El profesor puede corregir desde cualquier lugar la tarea o el proyecto cuando finalice

Conclusiones

  • Herramienta fundamental en el aprendizaje de los alumnos del IES Gonzalo Nazareno
  • Proporciona una forma ágil y sencilla de autogestionar la infraestructura, que es muy adecuada para las prácticas
  • Se aprende a administrar servidores de forma real
  • Combinado con una VPN permite la utilización continua de la infraestructura
  • Evita las limitaciones del uso de una nube pública
  • Supone mejorar las expectativas laborales de los alumnos
  • Supone mucho trabajo para los profesores implicados, pero a la vez una enorme satisfacción y mejora en su formación

¡Gracias!


Alberto Molina Coballes

alb.molina@gmail.com // @alberto_molina


José Domingo Muñoz Rodríguez

josedom24@gmail.com // @pledin_jd