Introducción
1. ¿Qué es OpenStack?
OpenStack es un proyecto open source que permite gestionar recursos virtuales de computación, redes, almacenamiento e imágenes, para diseñar y gestionar nubes privadas y públicas. También se puede definir como una plataforma de cloud computing que proporciona infraestructura como servicio o IaaS (Infraestructura as a Service).
2. Componentes de OpenStack
Los componentes básicos de OpenStack con los que vamos a trabajar en la nube privada de nuestro centro son los siguientes:
- Nova: Gestiona la virtualización de los recursos de cómputo.
- Neutron: Gestiona la virtualización de los recursos de red.
- Glance: Se encarga de la gestión de las imágenes.
- Cinder: Gestiona el almacenamiento a nivel de bloques.
- Swift: Gestiona el almacenamiento a nivel de objetos.
- Horizon: Nos permite interactuar con OpeStack a través de una interfaz web.
- Keystone: Se encarga de la gestión de identidades y acceso.
Figura 1. Componentes básicos de OpenStack. Imagen obtenida de la web oficial.
3. Infraestructura del entorno de producción
La infraestructura del entorno de producción está formada por un switch gestionable de capa 2 y tres nodos: (1) nodo de control, (2) nodo de cómputo y (3) nodo de almacenamiento.
Las máquinas del entorno de producción son servidores Dell PowerEdge de 14ª generación, que cuentan con las características hardware que se detallan en la siguiente tabla.
Nodo | Componente | Descripción |
---|---|---|
Control | Modelo | Servidor Dell PowerEdge R240 de 14ª generación. |
Procesador | Intel Xeon E-2224, 3,4 GHz, 4 núcleos (1 Thread por core) | |
Memoria RAM | 32 GB de RAM (4×8 GB DDR4 UDIMM 3200MHz ECC) | |
Controladora RAID | Sin controladora RAID | |
Disco duro | 1 TB | |
Cómputo | Modelo | Servidor Dell PowerEdge R440 de 14ª generación. |
Procesador | 2 x Intel Xeon Silver 4214, 2,2 GHz, 12 núcleos (2 Threads por core) | |
Memoria RAM | 1024 GB de RAM (16×RDIMM de 64 GB, 3200 MT/s) | |
Controladora RAID | Controladora RAID PERC H730P+ | |
Disco duro | 1,2 TB a 10K rpm, SAS a 12 Gbps | |
Almacenamiento | Modelo | Servidor Dell PowerEdge R640 de 14ª generación. |
Procesador | Intel Xeon Silver 4210R, 2,4 GHz, 10 núcleos (2 Threads por core) | |
Memoria RAM | 256 GB de RAM (4×RDIMM de 64 GB, 3200 MT/s) | |
Controladora RAID | Controladora RAID PERC H730P | |
Discos duros | Disco duro 480GB | |
4 x Discos duros 401-ABHQ 2.4TB 10K rpm SAS 12Gbps 512e |
Tabla 1. Especificaciones del nodo de control, nodo de cómputo y nodo de almacenamiento
4. Configuración de los valores de sobresuscripción
Los valores de sobresuscripción de recursos que estamos utilizando son los valores que vienen por defecto en la configuración de OpenStack y son los siguientes:
- CPU allocation ratio:
16:1
- RAM allocation ratio:
1.5:1
- Disk allocation ratio:
1:1
Estos valores quieren decir que para el planificador de OpenStack un core físico equivale a 16 cores virtuales o vCPU, 1 GB de RAM físico equivale a 1,5 GB de RAM virtual o vRAM y 1 GB de espacio de disco equivale a 1 GB de espacio de disco virtual.
Teniendo en cuenta las características de los nodos y según los cálculos realizados en las siguientes fórmulas,
Nuestro entorno de producción dispone de los siguientes recursos para virtualizar:
Recursos para virtualización | Valor |
---|---|
vCPUs | 768 |
vRAM | 1,5 TB |
Espacio de disco para crear volúmenes | 6,6 TB |
Tabla 2. Recursos de virtualización disponibles en el entorno de producción.
5. Arquitectura de red del entorno de producción
Figura 2. Diagrama de red de OpenStack. Imagen de elaboración propia (CC BY-NC-SA).
La figura 2 muestra la arquitectura de red que estamos utilizando en el entorno de producción. En este diagrama se puede observar como todos los nodos del clúster de OpenStack están conectados a una red externa y a tres redes internas: (1) la red container, (2) la red tunnel y (3) la red storage.
La red externa de OpenStack (172.16.0.0/16
) es una red de clase B que nos
permite direccionar 65534 hosts, mientras que una red de clase C sólo nos
permite 254 hosts. Todas las instancias que se crean en el clúster pueden tener
asignada una dirección IP flotante que estará conectada a esta red externa,
permitiendo que la instancia sea accesible desde otras instancias de la misma
red y desde la red del departamento.
Nuestro entorno de producción también cuenta con una máquina con pfSense que hace de router y firewall, entre la red del departamento y la red externa de OpenStack.
El nodo bastión que aparece en el diagrama de red, sólo es necesario para realizar las operaciones de instalación y actualización del clúster con OpenStack Ansible. En este nodo es donde se ejecutan los playbooks de Ansible.
6. Cómo acceder a OpenStack Celia
OpenStack sólo es accesible desde la red del departamento, por lo tanto, sólo se podrá acceder desde las aulas que estén conectadas a esta red (Aulas: 8, 20, 21, 22, 23, 24, Ateca, Emprendimiento y Cantina). También es posible acceder haciendo uso de la VPN del IES Celia Viñas.
Para acceder a Horizon, que es el servicio web que nos permite interactuar con OpenStack, podemos hacerlo a través de las siguientes URLs:
Si no puede resolver el nombre de dominio openstack.celia
es posible que
necesite configurar el servidor DNS en su configuración de red y añadir el
servidor 172.16.0.1
.
7. Cuotas predeterminadas de los proyectos
La gestión de los recursos de OpenStack se realiza a través de proyectos. Cada proyecto tiene establecidas unas cuotas predeterminadas que limitan los recursos que puede utilizar.
Las cuotas que se han establecido para los proyectos son las siguientes:
Recursos | Valor |
---|---|
Número de instancias: | 6 |
vCPU | 12 |
RAM | 12 GB |
Volúmenes | 2 |
Instantáneas de volumen: | 5 |
Almacenamiento de volumen: | 20 GB |
IPs flotantes | 10 |
Grupos de seguridad | 10 |
Reglas del grupo de seguridad: | 100 |
Redes | 10 |
Subredes | 20 |
Puertos | 50 |
Routers | 10 |
Tabla 3. Cuotas predeterminadas para cada proyecto.
Los valores de las cuotas son provisionales, tendremos que ir ajustando los valores hasta encontrar la configuración definitiva.
8. Configuración inicial de proyectos y usuarios
En la configuración actual cada usuario tiene su propio proyecto, aunque es posible asignar varios usuarios al mismo proyecto.
Para cada proyecto se ha creado de forma predeterminada:
- Una red.
- Una subred.
- Un router.
- Un grupo de seguridad.
También se han añadido dos reglas al grupo de seguridad que se crea por defecto en cada proyecto para:
- Permitir el trafico ICMP.
- Permitir el acceso a las instancias por SSH.
9. Uso de OpenStack en el currículo educativo
Actualmente OpenStack se está utilizando en los siguientes módulos profesionales.
Módulo profesional | Ciclo formativo | Curso |
---|---|---|
Aplicaciones web | SMR | 2\(^{\circ}\) |
Bases de datos | DAW | 1\(^{\circ}\) |
Despliegue de aplicaciones web | DAW | 2\(^{\circ}\) |
Gestión de bases de datos | ASIR | 1\(^{\circ}\) |
Administración de sistemas gestores de bases de datos | ASIR | 2\(^{\circ}\) |
Implantación de aplicaciones web | ASIR | 2\(^{\circ}\) |
Seguridad y alta disponibilidad | ASIR | 2\(^{\circ}\) |