Qué es OpenShift
¿Quieres saber qué es OpenShift? Te contamos todo lo que necesitas saber de esta potente plataforma de desarrollo, desde sus características hasta...
¿Quieres aclarar conceptos sobre Cloud Computing y sobre las tecnologías que se utilizan? Aquí te contamos los aspectos más importantes sobre contenedores y las tecnologías Docker, Kubernetes y OpenShift.
Tabla de contenidos
Los contenedores es un término que está muy de moda en los últimos tiempos, y lo que nos permiten es tener una partición aislada dentro de un sistema operativo. Es algo parecido a una máquina virtual, pero mucho más liviano, porque un contenedor suele partir el núcleo del sistema operativo con los demás contenedores.
El uso de contenedores tiene una serie de ventajas que queremos destacar:
Docker es una tecnología que nos permite trabajar con contenedores, más en concreto con un tipo de contenedores llamados contenedores de aplicación, que están especializados en implantación de aplicaciones web.
Es una virtualización ligera, como comentamos anteriormente, con la que se aprovecha mejor el hardware, y el contenedor finalmente es un sistema de archivos mínimo para que la aplicación funcione.
De forma muy básica podemos diferenciar varios componentes en Docker:
Docker nos permite la ejecución de contenedores y trabaja en un servidor, por lo que nos lo interesante sería tener un clúster de servidores donde los contenedores se fueran ejecutando en distintos servidores, y que además hubiera un control de esos contenedores. Aquí es donde aparece Kubernetes.
Podemos definir Kubernetes como un orquestador de contenedores, ya que es el responsable de que los contenedores que vamos a tener estén conectados pero se ejecuten en distintos en distintos nodos.
Está escrito en Go y originalmente fue un proyecto de Google, pero que rápidamente pues se alió con la Linux Foundation para crear una nueva fundación llamada Cloud Native Computing Foundation (CNCF), donde ahora mismo se desarrolla el proyecto.
Es un proyecto muy reciente, ya que comenzó en 2015, pero está en pleno auge y cada vez se utiliza más.
Las principales ventajas que ofrece Kubernetes son:
Kubernetes es un proyecto que se puede utilizar por sí mismo, y están surgiendo muchos productos que se basan en él, siendo OpenShift uno de ellos.
OpenShift es un producto que internamente utiliza Kubernetes, que lo que hace es mejorar la funcionalidad del mismo introduciendo nuevas características.
Es la plataforma de desarrollo, con características de Cloud Computing en la capa de Plataforma como Servicio (PaaS), de Red Hat.
La Plataforma como Servicio de Cloud Computing ofrece la posibilidad a un desarrollador de tener una infraestructura donde colocar su aplicación con características de Cloud Computing, como la escalabilidad o el pago por uso, es decir, se usan más o menos recursos en función de las necesidades, y se paga según se consuman más o menos recursos.
OpenShift permite que el desarrollador se centre en el desarrollo de aplicaciones y que no tenga que saber cómo funciona internamente Docker y Kubernetes, ya que le permite desplegar aplicaciones de una manera muy sencilla con la funcionalidad y las ventajas de tener un sistema como Kubernetes, que internamente facilita esta implantación.
Se puede utilizar en la integración continua del desarrollo de una aplicación, para terminar implantando la aplicación en OpenShift.
Podemos trabajar con OpenShift con una aplicación web o con cliente de línea de comandos.
La novedad más importante que diferencia a OpenShift de Kubernetes es que las imágenes Docker que se utilizan en Kubernetes las tenemos que generar nosotros, mientras que OpenShift tiene la característica de source2image, que a partir de un repositorio con nuestro código, es capaz de crear una nueva imagen Docker de forma automática y es la que va a utilizar internamente.
Por lo tanto el desarrollador se centra en su desarrollo, tiene el mismo en un repositorio GitHub e internamente OpenShift es capaz de, a partir de una imagen base de un lenguaje de programación, extraer el contenido de este repositorio y crear una nueva imagen.
OpenShift tiene las mismas ventajas que el uso de Kubernetes que vimos anteriormente, pero además ofrece algunas ventajas adicionales:
Tras todo lo visto anteriormente ya te puedes hacer una idea de cómo funciona el ecosistema del trabajo con contenedores:
También te puede interesar
¿Quieres saber qué es OpenShift? Te contamos todo lo que necesitas saber de esta potente plataforma de desarrollo, desde sus características hasta...