Aviso
- A continuación se presenta un ejemplo muy simplificado de implantación
de OpenStack
- El objetivo es tener un OpenStack para pruebas disponible
- Una implantación real conlleva un estudio mucho más exhaustivo del
problema a solucionar y de todos los elementos implicados, tanto de hardware
como de software
Componentes de OpenStack necesarios
- Keystone
- Glance
- Nova
- Cinder
- Horizon
- Neutron
Componentes de OpenStack opcionales
- Swift
- Ceilometer y Heat
- Trove
- Sahara
- Magnum
- Designate
- ...
- En general no repercuten en la arquitectura, salvo swift
Otros componentes necesarios
- Servidor AMQP: RabbitMQ o QPID
- BBDD:
- MySQL o "derivadas":
- MySQL o MySQL cluster (HA)
- Galera
- MariaDB
- PostgreSQL
- SQlite (Sólo pruebas)
- Cualquira soportada por SQLAlchemy
Tecnologías subyacentes
- Hipervisor: KVM
- Almacenamiento: LVM + iSCSI
- Switch virtual: Open vSwitch
Tipos de nodos
Los roles típicos dentro de OpenStack son:
- Nodo controlador: Equipo que gestiona el
cloud, ofrece las APIs a los clientes, contiene las bases
de datos, el servidor AMQP, los planificadores y los componentes
"centrales" de cada componente de OpenStack.
- Nodo de red: Con neutron es recomendable
utilizar un equipo específico para todo el tráfico de red
- Nodo de computación Equipo en el que se
ejecutan las instancias
- Nodo de almacenamiento Múltiples
opciones. Almacenamiento de volúmenes y/o objetos.
Características físicas de los nodos
- Nodo controlador:Servidor convencional sin grandes
requisitos. Podría reutilizarse un equipo que ya se tuviera.
- Nodo de red:Servidor de características
similares al nodo controlador. Mínimo con 2 interfaces de
red Gigabit Ethernet.
- Nodo de almacenamiento: Dependiendo de la
opción de almacenamiento así serán los discos adicionales
- Nodo de computación:Equipo de altas
prestaciones con procesadores potentes y bastante RAM. Los discos a
utilizar depende de si las instancias utilizan o no disco
local.
Sin alta disponibilidad
Sobre la Alta disponibilidad
- Un despliegue de OpenStack sin SPOF es bastante complejo
- Se puede conseguir algunos servicios en HA de forma sencilla:
- MySQL con Galera
- AMQP
- APIs balanceadas con HA-proxy
- Swift o Ceph
- Los nodos de computación no se montan en HA
OpenStack High Availability Guide
Allocation ratios
- Designar más vCPU, RAM o disco del disponible
- Útil sobre todo para entornos de pruebas
- Utilizar con precaución en producción
-
- CPU allocation ratio: 16 por defecto
- RAM allocation ratio: 1.5 por defecto
- Disk allocation ratio: 1 por defecto