En Junio del 2015 se anunció la Open Container Initiative bajo la que los principales promotores de la industria IT se unieron para definir el estándar de formatos en integración
de contenedores.
Red Hat, líder en la integración de SO Linux a nivel empresarial, es miembro fundador de la Open Container Initiative y, por ello, uno de los principales colaboradores de proyectos OpenSource orientados hacia contenedores. Por ello, y bajo la necesidad de fomentar los estándares de gestión de contenedores, Red Hat desarrolla su entorno de Platform as a Service (PaaS), Red Hat OpenShift Container Platform.

Utilizando el sistema de orquestación de contenedores del proyecto Kubernetes, Red Hat OCP ofrece un conjunto de funcionalidades adicionales que le convierten en la plataforma para la integración de entornos DevOps idónea, como la construcción de aplicaciones tanto tradicionales como orientadas a la cloud; conversión del código fuente a través de sus herramientas en una aplicación en ejecución gracias al proceso source-to-image; la integración de de plataformas middleware para el desarrollo y el despliege de aplicaciones; y el ciclo de vida de desarrollo, contrucción y despliegue de aplicaciones basadas en contenedores.

OpenShift nació con el propósito de tender puentes entre los equipos de desarrollo y los de operaciones, reduciendo los tiempos de espera desde que nace la idea de una aplicación hasta que se ve puesta en producción. Al tratarse de una herramienta DevOps ofrece a las organizaciones mecanismos para mejorar la comunicación entre desarrollo y operaciones, así como eliminar las barreras de integración entre ambos departamentos.

FUNCIONES DESTACADAS

  • AUTO-APROVISIONAMIENTO

    El principal problema que encuentra desarrollo es el tiempo de espera desde que el arquitecto de aplicaciones ha desarrollado el diagrama, hasta que el desarrollador puede empezar a “picar” código. En este proceso, normalmente, nos encontramos en la necesidad de aprovisionar hardware, software o bien configurar las redes. Todo este proceso podría llevar desde días, hasta semanas. OpenShift os permitirá reducir todo este proceso a escasos minutos, ya que con un simple comando por parte del desarrollador, si su rol se lo permite, podréis aprovisionar el hardware (recursos del sistema tales como RAM, CPU y Storage), el software (los contenedores a ser usados incluyen el SO, librerías y plataformas necesarias), así como la red (OpenShift, a través de Open vSwitch, se encargará de configurar la red, firewalls, así como la posibilidad de incluirlo en loadbalancers).
    La gran ventaja en cuanto al aprovisionamiento software, es que no existirá conflicto en las librerías a usar, ya que el contenedor estará estandarizado para la plataforma que se vaya a desarrollar.
  • MULTI-LENGUAJE

    Desarrollar una aplicación en una tecnología es bueno, poder desarrollarla en otras, es mejor. Por ello OpenShift no limitará a vuestros usuarios a desarrollar en una plataforma única, sino que os da el poder para elegir el lenguaje que prefiráis. OpenShift viene integrado con contenedores que permiten la compilación y el empaquetado de aplicaciones desarrolladas en los lenguajes de programación más extendidos, incluyendo .NET.
  • AUTOMATIZACIÓN

    Tenéis vuestro IDE, podéis compilar, pero… tomáis conciencia de que no disponéis de las herramientas, o no están documentados los comandos para empaquetar de manera adecuada, lo que supone un importante reto a superar. OpenShift os ofrece sistemas automatizados para gestionar el ciclo de vida de las aplicaciones de la manera más efectiva. El desarrollador podrá centrarse en su trabajo, desarrollar. Cuando el desarrollador publica su código en un Software Configuration Management, como por ejemplo GIT, a través de webhooks configurados, el SCM envía una solicitud a OpenShift para que coja el código fuente, lo compile, realice las baterías de tests necesarias, lo empaquete, lo guarde en un contenedor, lo publique en el repositorio adecuado y, por último, lo despliegue en el entorno solicitado.
  • COLABORACIÓN

    OpenShift permite la gestión de roles que habilitarán un conjunto de operaciones u otras, a distintos usuarios, dentro de un mismo proyecto. Como ejemplo simple, podréis permitir que un usuario del equipo de QA/Testing pueda monitorizar el estado de un proyecto de Desarrollo, y cuando la aplicación se encuentre en ejecución en dicho entorno, promocionarla al entorno de QA o incluso… a Producción.
  • PROMOCIÓN ENTRE ENTORNOS

    La consolidación de entornos en una de las “utopías” del mundo IT. La leyenda cuenta que lo que funciona en Desarrollo, debe funcionar en QA y, a su vez, en Producción.
    La realidad es… que con OpenShift se puede lograr. Debido a que todo lo que se desarrolla en contenedores está bajo los estándares de la Open Container Initiative, la promoción de una aplicación entre los diferentes entornos será “painless”. Se acabó el escuchar “en local me funciona”. Además, gracias a los procesos de automatización de OpenShift, la promoción entre entornos puede delegarse a los responsables de los equipos DEV y QA.

FORTALEZAS DEL PRODUCTO

  • Escalabilidad y planificación

    Ofrece un servidor HA-Proxy integrado que recibe las URL que registra dinámicamente en su ProxyPass.
    Cuenta, además, con soporte completo para la gestión de certificados. Cuando operaciones, o bien desarrollo, solicitan a la plataforma escalar horizontalmente una aplicación, la plataforma se encarga de desplegar en los nodos que haya disponibles el número de réplicas que se le haya indicado. Una vez modificado el número de réplicas, OpenShift actualiza los registros del HA-Proxy, habilitando así el balanceo de carga. Por otro lado, OpenShift cuenta con un Scheduler que planifica el despliegue de las aplicaciones entre los nodos disponibles, diferenciando zonas y regiones, para un despliegue adecuado de entornos. Además, podemos optar por desplegar una aplicación basándonos, además de la región y la zona, en la carga del nodo.
    ¿Quieres saber más?
  • Compatibilidad y flexibilidad

    Puedes desarrollar y dar soporte a OpenShift en cualquier lugar que Red Hat Enterprise Linux se implementa y admita.
    Esto incluye Amazon Web Services, Azure, Google Cloud Platform, VMware y más. Con OpenShift, usted puede proporcionar una plataforma única de aplicaciones de contenedor en todas estas nubes públicas y privadas.
    ¿Quieres saber más?
  • Equipos y roles

    Permite la gestión de roles que habilitarán un conjunto de operaciones u otras, a distintos usuarios, dentro de un mismo proyecto.
    Como ejemplo simple, podremos permitir que un usuario del equipo de QA/Testing pueda monitorizar el estado de un proyecto de Desarrollo, y cuando la aplicación se encuentre en ejecución en dicho entorno, promocionarla al entorno de QA o incluso... a Producción!! Por ello, operaciones, puede controlar quién puede hacer qué y en dónde. Además, gracias al uso de oAuth en OpenShift, podemos delegar en Github o Google como mecanismos de autenticación, aunque también podremos seguir usando los medios tradicionales con LDAP, Kerberos, SSO o HTTP, pues lo que prima es la seguridad ante todo.
    ¿Quieres saber más?

NUESTRA VISIÓN

"Lo más destacable desde mi punto de vista es que realmente con Openshift se consigue evitar las incoherencias entre los distintos entornos DEV/QA/PR y reducir los tiempos de desarrollo de las aplicaciones."

José David MartínIT Consultant & Red Hat Instructor

¿Te gustaría aprender sobre este producto?
¡Consulta los cursos relacionados!

¿Necesitas más información?
Déjanos tus datos y te contactaremos lo antes posible

TAMBIÉN TE PUEDE INTERESAR...