Arquitectura Lógica

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

Theme by: reveal.js

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
esquema IaaS

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.

Esquemas

Con alta disponibilidad

Fuente: OpenStack Operations Guide

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

Arquitectura lógica

OpenStack Operations 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

OpenStack User Survey

Referencias