La gran cuestión: OpenShift vs. Kubernetes
Hace ya tiempo que la gestión de contenedores forma parte del día a día del desarrollo de software y de otros muchos ámbitos informáticos, por lo que no es de extrañar que hayan salido al mercado muchas herramientas de gestión distintas. Dos de las plataformas más populares son Kubernetes y OpenShift, ambas con funciones de lo más variadas, pero que presentan algunas diferencias. Por eso, en el desarrollo de aplicaciones, vale la pena considerar qué herramienta se ajusta mejor a cada proyecto.
Kubernetes: el proyecto de código abierto
Kubernetes (también llamado K8s) es probablemente el gestor de contenedores más conocido actualmente, entre otras razones, porque ha recibido un gran apoyo por parte de ciertos trabajadores de Google. Además, Kubernetes ofrece funciones muy variadas y puede adaptarse a prácticamente cualquier proyecto, ya que se trata de software de código libre y, por lo tanto, se pueden encontrar diferentes distribuciones del programa en Internet. Por si eso fuera poco, la comunidad de usuarios de Kubernetes es muy competente: si surgen problemas o dudas, no es difícil encontrar a alguien que sepa cómo ayudar.
Sin embargo, la flexibilidad de Kubernetes es también la causante de que no haya soluciones predefinidas, sino que, en muchos casos, hay que tantear primero la configuración para que la gestión de contenedores funcione. Eso mismo, por otro lado, es lo que hace que Kubernetes sea compatible con cualquier sistema operativo.
OpenShift: la solución para la empresa
Hemos dicho que no existe una única e inalterable versión de Kubernetes y, de hecho, lo mismo ocurre con OpenShift. Red Hat, la compañía a la que pertenece OpenShift, ofrece diferentes productos. Esa es la principal diferencia frente a Kubernetes; OpenShift es un servicio de pago y ello le permite ofrecer asistencia profesional al usuario. Mientras que con Kubernetes hay que recurrir a la ayuda voluntaria de los expertos de la comunidad, Red Hat garantiza ayuda profesional.
Poder adquirir un producto ya acabado no solo es práctico, sino también muy seguro. Puesto que se trata de un sistema cerrado y configurado por expertos de Red Hat, los estándares de seguridad son altos. Con Kubernetes, en cambio, el usuario pasa a ser el responsable de los mecanismos de seguridad al ser él o ella quien configura el programa.
Existe, sin embargo, OpenShift Origin, una solución gratuita de código abierto de Red Hat. Las demás ofertas se ofrecen en forma de plataforma como servicio o Platform as a Service. Los paquetes que ofrece Red Hat se diferencian en algunos detalles, pero en principio se trata de versiones alojadas (hosted) en las que el proveedor define la configuración necesaria de hardware y software. Luego, el usuario puede acceder a la tecnología de contenedores por Internet, un entorno de prueba seguro, sin necesidad de disponer de un servidor propio.
Todos los productos tienen en común que toman Kubernetes como base. OpenShift es, por lo tanto, una distribución de Kubernetes con servicios adicionales. En lugar de tener que configurar K8s tú mismo, con OpenShift alquilas un entorno ya configurado y listo para desarrollar, testar e implementar aplicaciones.
OpenShift vs. Kubernetes: comparación de las plataformas de contenedores
Puesto que OpenShift se basa en Kubernetes, ambas herramientas tienen puntos en común, pero también algunas diferencias.
OpenShift | Kubernetes | |
---|---|---|
Sistema operativo | Linux, Fedora, CentOS | Cualquier sistema operativo |
Seguridad | Altos estándares de seguridad | La seguridad está en manos del usuario |
Ciclo de lanzamiento | Unas tres veces al año | Cuatro veces al año |
CI/CD | Parte integral del software | Posible usando Jenkins |
Facilidad de uso | Pensado para ser fácil de usar | Uso algo más complejo |
Interfaz de usuario | Interfaz de usuario sencilla | Puede instalarse un cuadro de mando adicional |
Escalabilidad | En principio para el nivel empresarial, pero puede escalarse | Puede usarse en proyectos de cualquier magnitud |
Plantillas | Menos intuitivas | El uso de Helm permite una gran flexibilidad |
Networking | Open vSwitch ofrece posibilidades de networking | El networking es posible mediante plug-ins de terceros |
Resumen: ¿Qué herramienta deberías escoger?
En el aspecto técnico, ninguna herramienta tiene nada que envidiar a la otra. Algunas cuestiones sí se gestionan de forma diferente, pero en este sentido no hay diferencias decisivas. La pregunta más importante debería ser si se está dispuesto a pagar por la comodidad de OpenShift o si se prefiere la gran flexibilidad de Kubernetes, conseguida a cambio de invertir tiempo en la configuración del software.
Especialmente si se requiere mucha ayuda, vale la pena decantarse por OpenShift. Con esta herramienta no solo está todo configurado correctamente de antemano, sino que también se puede recurrir a la asistencia profesional de Red Hat. Tampoco hay que menospreciar, sin embargo, a la comunidad de usuarios de Kubernetes, de la que también forman parte expertos en las cuestiones más diversas.