kalafoto - Fotolia

Lo básico Póngase al día con nuestro contenido introductorio.

¿Cuáles son las diferencias entre OpenShift y Kubernetes?

Red Hat OpenShift y Kubernetes comparten muchas similitudes, incluida la misma tecnología de orquestación de contenedores subyacente. Entonces, ¿en qué se diferencian exactamente?

Red Hat OpenShift y Kubernetes son dos plataformas populares e intrincadas para ejecutar aplicaciones en contenedores. OpenShift se basa estrechamente en Kubernetes y los dos comparten algunas similitudes amplias. Pero existen diferencias importantes entre OpenShift y Kubernetes cuando se trata de herramientas, configuraciones predeterminadas y soporte de proveedores.

¿Qué es OpenShift?

OpenShift es una plataforma de contenedorización de aplicaciones desarrollada por Red Hat, que ahora es propiedad de IBM.

OpenShift no es un solo producto, sino un portafolio de múltiples ofertas: estos incluyen servicios OpenShift alojados que se ejecutan en nubes públicas y Red Hat OpenShift Container Platform, que está diseñado para arquitecturas locales e híbridas. También hay una variante de OpenShift respaldada por la comunidad llamada OKD.

¿Qué es Kubernetes?

Kubernetes es una plataforma de orquestación de contenedores de código abierto disponible en una variedad de distribuciones, como Rancher, Amazon Elastic Kubernetes Service y Google Kubernetes Engine.

Similitudes entre OpenShift y Kubernetes

Kubernetes sirve como base de OpenShift. Sin embargo, OpenShift no es una distribución de Kubernetes debido a los complementos y extensiones que se explican a continuación. Es lo suficientemente diferente de otras distribuciones de Kubernetes que se clasifica como una plataforma separada.

Dado que OpenShift se basa en Kubernetes, ambas tecnologías comparten los mismos conceptos básicos. Los usuarios escriben archivos de configuración para definir cómo deben implementarse las aplicaciones en contenedores, y luego implementan y administran esas aplicaciones en grupos de servidores. Ambas plataformas también admiten los mismos lenguajes de configuración: YAML y JSON. Además, ambos proporcionan funcionalidad de enrutamiento y equilibrio de carga, y pueden ejecutarse en la nube pública o en las instalaciones.

OpenShift también es totalmente compatible con las API de Kubernetes, y cualquier aplicación que se pueda ejecutar en Kubernetes también se puede ejecutar en OpenShift.

Diferencias entre OpenShift y Kubernetes

Las diferencias entre OpenShift y Kubernetes radican principalmente en el soporte de OpenShift para herramientas y extensiones.

En la mayoría de las distribuciones de Kubernetes, kubectl es la principal herramienta de línea de comandos para la administración de clústeres. La línea de comando de OpenShift se llama oc. Es idéntico a kubectl en la mayoría de los aspectos, pero proporciona funciones adicionales que simplifican las tareas, como la implementación de imágenes de contenedores y el inicio de sesión en clústeres.

OpenShift también se basa en Fluentd, Elasticsearch y Kibana para la gestión de registros. Kubernetes es compatible con estas herramientas, así como con una variedad de otras herramientas de registro, por lo que, en el caso de Kubernetes, los usuarios deciden cómo administrar el registro. Además, OpenShift ofrece una consola de administración web incorporada; Kubernetes ofrece una interfaz similar como complemento opcional, pero no es una parte fundamental de Kubernetes.

Más allá de las diferencias en las herramientas, OpenShift también se diferencia de Kubernetes nativo en que, si bien una variedad de proveedores ofrecen distribuciones de Kubernetes, OpenShift es un producto de Red Hat, disponible solo en Red Hat. Sin embargo, como se señaló anteriormente, Red Hat ofrece OpenShift como servicio en varias plataformas de nube pública.

Los nodos OpenShift también deben aprovisionarse con Red Hat Enterprise Linux CoreOS, mientras que los nodos de Kubernetes pueden ejecutar cualquier sistema operativo basado en Linux, así como Windows, en el caso de los nodos trabajadores.

Investigue más sobre Desarrollo de aplicaciones

Close