OpenStack es un conjunto de programas que forman un entorno en la nube. El término cloud computing, es decir, co­mpu­tación en la nube, se refiere al acceso de­s­ce­n­tra­li­za­do a programas y datos. En la nube, los datos se almacenan en realidad en di­fe­re­n­tes lugares, que pueden estar separados geo­grá­fi­ca­me­n­te. Este sistema requiere una in­frae­s­tru­c­tu­ra que permita acceder a ellos de forma de­s­ce­n­tra­li­za­da sin dejar de ga­ra­n­ti­zar la máxima seguridad. Al fin y al cabo, los datos sensibles no solo deberían gozar de alta di­s­po­ni­bi­li­dad, sino también estar pro­te­gi­dos frente al acceso por parte de terceros y frente a posibles pérdidas.

Compute Engine
La solución IaaS ideal para tus cargas de trabajo
  • vCPU económico con núcleos dedicados
  • Flexible y sin periodo mínimo co­n­tra­c­tual
  • Soporte experto 24/7

La nube como solución de al­ma­ce­na­mie­n­to segura y económica

Las so­lu­cio­nes en la nube ofrecen la ventaja in­su­pe­ra­ble de permitir a los di­s­po­si­ti­vos finales acceder a ellas sin necesidad de contar con hardware de alto re­n­di­mie­n­to. La potencia de pro­ce­sa­mie­n­to se da en la cloud, en la nube, y se puede escalar de forma flexible: el único requisito es una conexión a Internet rápida y estable. Esta ventaja permite crear una red compleja de forma más económica, ya que se eliminan los altos coses de hardware. Los costes derivados de operar en la nube suelen limitarse a los recursos que se utilicen. Es posible utilizar el entorno cloud desde se­r­vi­do­res virtuales al­qui­la­dos, un pla­n­tea­mie­n­to muy atractivo para pequeñas empresas y startups que aún no pueden pe­r­mi­ti­r­se gastar mucho en in­frae­s­tru­c­tu­ras in­fo­r­má­ti­cas.

OpenStack: lo que hay que saber

El paquete de software de OpenStack incluye todos los co­m­po­ne­n­tes ne­ce­sa­rios para crear un entorno cloud. Aunque se trata de un proyecto re­la­ti­va­me­n­te joven, ya se considera maduro en su evolución y seguro. OpenStack fue fundado en 2010 por la NASA, la agencia es­ta­dou­ni­de­n­se re­s­po­n­sa­ble de la in­ve­s­ti­ga­ción ae­ro­náu­ti­ca y ae­roe­s­pa­cial, junto con la empresa Rackspace. Por aquel entonces, la NASA deseaba contar con un software para sus proyectos que pe­r­mi­tie­ra crear redes co­mpu­tacio­na­les de forma flexible y, en parte, limitada en el tiempo. Para lograrlo, pre­s­ti­gio­sas empresas como AT&T, RedHat, Canonical (de­sa­rro­lla­do­ra de Ubuntu), Intel, IBM y Huawei se pusieron manos a la obra.

OpenStack solo funciona en sistemas Linux y se publicó bajo la licencia Apache. Su código fuente es, por lo tanto, de libre acceso y el programa puede usarse ili­mi­ta­da­me­n­te de forma gratuita. En octubre de 2019 se presentó la ya vigésima versión de OpenStack con el nombre de Train.

¿Qué co­m­po­ne­n­tes forman OpenStack?

La cloud de OpenStack está compuesta por di­fe­re­n­tes elementos, entre los cuales destacan los si­guie­n­tes:

  • Nova (compute service)
  • Keystone (identity service)
  • Glance (image service)
  • Neutron (ne­t­wo­r­ki­ng)
  • Cinder (block storage)
  • Swift (object storage)
  • Horizon (dashboard)

Nova

Nova es el co­m­po­ne­n­te de co­mpu­tación de la nube OpenStack y el primero con el que se inició el proyecto en 2010. Es, por así decirlo, la columna vertebral sobre la que recae la tarea más im­po­r­ta­n­te: la gestión de los or­de­na­do­res virtuales. Desde entonces, Nova se ha de­sa­rro­lla­do hasta el punto de poder gestionar grupos enteros de or­de­na­do­res virtuales, cada uno de los cuales se conecta con los demás de forma sináptica. En esta conexión puede haber cualquier número de puntos nodales (es decir, de sinapsis). Como base de las co­mpu­tado­ras virtuales, Nova utiliza pre­fe­re­n­te­me­n­te los hi­pe­r­vi­so­res libres de licencia del KVM (máquina virtual basada en el núcleo) de Linux, así como el monitor XEN, de­sa­rro­lla­do por la uni­ve­r­si­dad de Cambridge.

Keystone

Keystone es el re­s­po­n­sa­ble de conceder derechos y de la au­te­n­ti­ca­ción de los usuarios (identity). En cloud computing, esto no solo incluye or­de­na­do­res in­di­vi­dua­les, sino también redes enteras. Por ello, es muy im­po­r­ta­n­te asegurar una buena au­te­n­ti­ca­ción de los usuarios y aislar los elementos parciales. Keystone concede a cada usuario de la nube (a cada mandant) co­n­di­cio­nes de acceso in­di­vi­dua­les, que incluyen ex­plí­ci­ta­me­n­te qué derechos le co­rre­s­po­n­den.

Glance

Glance se encarga de ofrecer las imágenes, es decir, la re­pre­se­n­ta­ción de los soportes de datos de las máquinas virtuales. Puede, además, guardar y restaurar dichas imágenes, de forma que es posible crear bi­blio­te­cas con las pla­n­ti­llas de los sistemas re­que­ri­dos, para luego recrear las imágenes en la red tantas veces como se quiera. Glance también garantiza la di­s­po­ni­bi­li­dad pe­r­mi­tie­n­do que las máquinas en cuestión sean re­co­n­s­trui­das en cualquier momento.

Neutron

Neutron (an­te­rio­r­me­n­te llamado Quantum) se encarga de crear la in­frae­s­tru­c­tu­ra de red virtual de OpenStack: es el co­m­po­ne­n­te que hace posible la división de subredes, la gestión de las di­re­c­cio­nes IP y la creación de redes virtuales (VLAN). Neutron también funciona con VPN (Virtual Private Ne­t­wo­r­ki­ng). De esta forma, hace posible, en primer lugar, el in­te­r­ca­m­bio de datos entre los co­m­po­ne­n­tes de OpenStack como, por ejemplo, las máquinas virtuales in­di­vi­dua­les. Además, Neutron es el re­s­po­n­sa­ble de generar el co­r­ta­fue­gos o firewall de la red.

Cinder

Cinder se encarga de crear memorias pe­r­ma­ne­n­tes en formato de al­ma­ce­na­mie­n­to en bloque como, por ejemplo, discos duros. Lo hace mediante vi­r­tua­li­za­ción, lo cual permite adaptar el volumen como se desee (es­ca­la­bi­li­dad). La memoria en bloque de Cinder se comporta como un disco duro físico en el ordenador. La seguridad de los datos se consigue de forma sencilla, ya que el usuario accede a los discos a través de Cinder, mediante una interfaz que incluye una función de snapshot (copia in­s­ta­n­tá­nea de volumen).

Swift

Swift pro­po­r­cio­na al­ma­ce­na­mie­n­to de objetos: puede integrar diversos sistemas de al­ma­ce­na­mie­n­to di­s­tri­bui­do y permite así usar objetos de datos (que a primera vista parecen estar di­s­tri­bui­dos de forma aleatoria) en unidades de disco comunes. De esta forma, de ser necesario, puede crearse re­du­n­da­n­cia de forma tra­n­s­pa­re­n­te, puesto que los objetos pueden copiarse en di­fe­re­n­tes soportes físicos. Además, el espacio de al­ma­ce­na­mie­n­to que ofrece Swift también puede usarse con Cinder o Glance. También es posible utilizar como base de la es­tru­c­tu­ra el al­ma­ce­na­mie­n­to di­s­tri­bui­do de objetos creado con Ceph o GlusterFS.

Horizon

Horizon es el dashboard, es decir, el cuadro de mando o interfaz gráfica desde la que se pueden gestionar los co­m­po­ne­n­tes del conjunto OpenStack. Desde Horizon también se lleva a cabo la ad­mi­ni­s­tra­ción de usuario. Su diseño y fu­n­cio­na­li­dad son pe­r­so­na­li­za­bles.

In­ter­ac­ción de los co­m­po­ne­n­tes

La cloud de OpenStack es una réplica en software de una in­frae­s­tru­c­tu­ra in­fo­r­má­ti­ca que admite prá­c­ti­ca­me­n­te todos los niveles de co­m­ple­ji­dad. Los módulos, que, por lo general, deben estar di­s­po­ni­bles en formato físico, son generados vi­r­tua­l­me­n­te, según su función, por alguno de los co­m­po­ne­n­tes descritos an­te­rio­r­me­n­te. El espacio de al­ma­ce­na­mie­n­to necesario es creado por Swift y, según convenga, pre­se­n­ta­do al usuario gracias a Cinder como espacio de al­ma­ce­na­mie­n­to en bloque. La fu­n­cio­na­li­dad de cada uno de los se­r­vi­do­res y or­de­na­do­res de la red es posible gracias a Nova, que se encarga de ge­s­tio­nar­la. Al conjunto o pool de máquinas virtuales di­s­po­ni­bles se accede mediante Glance.

Neutron, por su parte, es el co­m­po­ne­n­te encargado de las in­te­r­co­ne­xio­nes. Garantiza la seguridad mediante un firewall y, si es necesario, también realiza acciones de monitoreo. Keystone regula la au­te­n­ti­ca­ción y los derechos de los usuarios. Gracias a Horizon, el sistema puede ad­mi­ni­s­trar­se de forma cómoda desde el inicio. Si, de forma ine­s­pe­ra­da, se necesita más espacio de al­ma­ce­na­mie­n­to o un mayor re­n­di­mie­n­to, se pueden realizar las mo­di­fi­ca­cio­nes que co­rre­s­po­n­dan.

¿Qué ventajas e in­co­n­ve­nie­n­tes tiene OpenStack?

La OpenStack cloud ofrece las si­guie­n­tes ventajas:

  • Pocos re­qui­si­tos para su uso: los servicios en la nube por lo general pueden usarse desde cualquier di­s­po­si­ti­vo final con conexión a Internet.
  • Alto nivel de seguridad de los datos, frente a terceros y en caso de avería
  • Espacio de al­ma­ce­na­mie­n­to y capacidad de re­n­di­mie­n­to es­ca­la­bles
  • Servicio en la nube que hace posible el trabajo co­la­bo­ra­ti­vo
  • Acceso desde cualquier lugar
  • Buena ace­p­ta­ción y po­pu­la­ri­dad
  • Es­tá­n­da­res uni­fi­ca­dos

Des­afo­r­tu­na­da­me­n­te, el uso de OpenStack también va ligado a algunas de­s­ve­n­ta­jas:

  • Rápido de­sa­rro­llo de nuevas funciones: OpenStack es una solución de cloud computing abierta y, por lo tanto, muy dinámica. Co­n­s­ta­n­te­me­n­te surgen nuevas funciones y se eliminan otras.
  • Los proyectos open source no suelen ofrecer soporte técnico oficial y or­ga­ni­za­do. Si bien se pueden encontrar muchos manuales y artículos de ayuda en Internet, la búsqueda del contenido adecuado puede ser larga y tediosa, ya que, al contrario de lo que ocurre con los sistemas co­me­r­cia­les, no hay un fa­bri­ca­n­te concreto a quien dirigirse.
  • Los hi­pe­r­vi­so­res más co­m­pa­ti­bles son KVM y XEN, lo cual puede causar problemas si se integran otras so­lu­cio­nes de vi­r­tua­li­za­ción, como podría ser VMWare. Algunos usuarios afirman haber tenido problemas de red al utilizar VMWare con OpenStack.

¿En qué casos suele uti­li­zar­se OpenStack?

Puesto que se trata de un proyecto libre de licencia, el uso de OpenStack apenas conlleva costes. Una vez se ha instalado el sistema, se puede operar con él de forma muy sencilla. Si se utilizan los se­r­vi­do­res virtuales del servicio de hosting co­rre­s­po­n­die­n­te, se puede disfrutar de una solución modesta de co­mpu­tación en la nube por precios que rondan los 10 o 20 euros al mes. Así, se puede im­ple­me­n­tar OpenStack como pla­ta­fo­r­ma para servicios privados en cloud: para crear una wiki, por ejemplo. También los proyectos pe­r­so­na­les o las ideas de empresa, como podría ser la de una tienda online, pueden llevarse a cabo usando este servicio.

Open Stack para pymes y grandes empresas

Para las pymes, OpenStack es una opción ideal para dar el salto a la co­mpu­tación en la nube y poder almacenar sus datos y apli­ca­cio­nes. Una opción muy co­n­ve­nie­n­te es, por ejemplo, la creación de una public cloud, es decir, una nube pública. La gestión de derechos de acceso a la cloud de OpenStack ofrece muchas po­si­bi­li­da­des para trabajar de forma co­la­bo­ra­ti­va, con di­fe­re­n­tes cuentas de usuario.

Las empresas grandes, por su parte, pueden usar OpenStack para ubicar en la nube parte de su in­frae­s­tru­c­tu­ra de red, como podrían ser los datos o programas más sensibles. OpenStack también puede usarse en el marco de un sistema mu­l­ti­cloud o como parte de una nube híbrida o hybrid cloud. De este modo, se reduce el riesgo de que se averíen los se­r­vi­do­res de apli­ca­cio­nes, ya que se pueden replicar tantas veces como se quiera. Los datos se guardan en el sistema siempre de forma re­du­n­da­n­te, para poder descartar cualquier pérdida en caso de que el hardware falle.

Al­te­r­na­ti­vas a OpenStack

Si no quieres recurrir a OpenStack, puedes recrear tú mismo los servicios que necesites usando, por ejemplo, se­r­vi­do­res virtuales y memorias en línea. También podrías incluso im­ple­me­n­tar so­lu­cio­nes como Owncloud o Nextcloud.

Otros proyectos que ofrecen servicios similares son:

  • Ope­n­Ne­bu­la (gratuito)
  • VMWare (de pago)
  • Microsoft Azu­re­S­ta­ck (de pago)
  • Google Anthos (de pago)

Además, cada vez más empresas utilizan la cómoda opción de dejar la in­s­ta­la­ción y gestión de su cloud en manos de empresas pro­fe­sio­na­les (managed cloud).

Co­n­clu­sión

Sea cual sea la opción que elijas a la hora de usar servicios de cloud computing, siempre habrá buenas razones que la respalden. En lo que a los costes y a la fle­xi­bi­li­dad se refiere, los servicios en la nube son in­me­jo­ra­bles. Se trata, además, de una opción más so­s­te­ni­ble en el sentido me­dioa­m­bie­n­tal, ya que evita el uso de hardware adicional que, quizá, se im­ple­me­n­ta­ría de forma in­e­fi­cie­n­te.

En cualquier caso, el factor más im­po­r­ta­n­te es sin duda la seguridad de los datos. La confianza ha de ser total cuando se toma la decisión de dejar los propios datos o los de los clientes en manos de servicios externos. En este aspecto, por lo tanto, vale la pena invertir esfuerzos en crear tu propia cloud con OpenStack, un proyecto co­n­so­li­da­do y de renombre.

Ir al menú principal