Hablando concretamente de los Contenedores, en 2016, vimos que los contenedores entraron en el ámbito de las Tecnologías de la Información de muchas empresas, sumergiendo los dedos de los pies en el prometedor mar de contenedores.
En 2017, vimos incluso más ejemplos de organizaciones que lograron resultados reales con proyectos piloto. Tenemos referencia de varias organizaciones líderes en la industria, que se esfuerzan por resolver problemas y mejorar la eficiencia mediante el uso de contenedores. Aquí veremos el caso de tres compañías líderes y cómo los contenedores les ayudan a mantenerse en la cima.
1. ADP (Automatic Data Processing)
ADP es un gigante cuando se trata de soluciones de gestión de capital humano basadas en la nube, con más de 630,000 clientes, 35 millones de usuarios y 5 millones de inicios de sesión al día en todo el mundo. Brindan una gama de servicios desde el "outsourcing" hasta la jubilación. Solo en el último año han movido aproximadamente $ 1.8 trillones de dólares estadounidenses a través de sus sistemas y administran, en más de 80 millones de registros de Seguridad Social. No es de extrañar que el gobierno de los EE. UU. Considere al ADP como una infraestructura crítica.
Ahora que entendemos el tamaño, la influencia y las apremiantes inquietudes de seguridad de ADP, ¿por qué una empresa así adoptaría tecnología tan nueva como los Contenedores? Bueno, en pocas palabras, es debido a los diversos desafíos que enfrentan:
Impulso para el desarrollador
Al igual que la mayoría de los líderes de la industria, uno de los desafíos a los que ADP se enfrenta es cómo obtener más código en producción, más rápido. Una de las desventajas de intentar ciclos de vida de desarrollo más rápidos, es que se hace más difícil dar seguimiento a los problemas. El beneficio de trabajar con Contenedores es que permite a los desarrolladores, tener una retroalimentación y trazabilidad mucho más rápida, lo que permite encontrar errores de manera más expedita.
Esto ayuda a corregir el código que está más fresco en las mentes de los desarrolladores, en lugar de descubrirlo semanas o meses después, lo que resulta en una búsqueda de brujas intensiva en recursos sobre qué cambio lo causó y cuándo. También ayuda a los desarrolladores a enfocarse en el problema en lugar de utilizar diferentes funciones de programador, administrador de sistemas y solución de problemas, intercambiandolos entre ellos para llegar al meollo del problema.
Mantenerse por encima y por delante de la competencia
Una de las ventajas de los contenedores que ADP aprovechó, es la compatibilidad relativa y los buenos estándares que permiten. Si Docker Swarm no era su "taza de té", siempre pueden cambiar de carril y usar los mismos contenedores en Mesosphere, Kubernetes o Triton, siendo Kubernetes el favorito del público hoy en día. Tampoco los encierra en el uso de una plataforma específica, pudiendo elegir aquella que funcione para sus necesidades.
Otro desafío al que ADP se enfrenta, es que el mundo está cada vez más centrado en dispositivos móviles y tienen numerosas aplicaciones en varios clientes, por lo que necesitan tener estándares que permitan un breve tiempo de desarrollo, desde el diseño hasta la implementación para ser relevantes y mantenerse a la cabeza de la competencia. Como se discutió anteriormente, el flujo de trabajo del Contenedor permite una retroalimentación más rápida, pero también permite microservicios ágiles.
En su mayoría, éstos se ejecutan en la parte posterior de las API y permiten que un servicio sea más relevante durante más tiempo, ya que el reempaquetado de la interfaz y la adición de más API para lograr nuevas características y funcionalidad, es mucho más rápido que lanzar una nueva versión de una aplicación.
A partir de abril de 2017, ADP tenía 469 motores Docker y 3771 contenedores en Máquinas Virtuales, Mainframes, Bare Metal Cloud Servers y Amazon Web Services. En su repertorio también han construido más de 9,000 imágenes únicas.
2. PayPal
Al ser un líder global en soluciones de pago en línea, PayPal tiene más de 210 millones de usuarios activos, 200 mercados internacionales, más de $ 100 mil millones de dólares americanos en transacciones de pago por trimestre, operando con 24 monedas en todo el mundo. Este gran éxito, sin embargo, viene con sus propios desafíos.
Veamos cómo PayPal realizó una modernización exitosa y muy necesaria del centro de datos con Docker, y cómo ellos integraron Docker en su ciclo de vida de desarrollo de software. Esta revisión fue necesaria para que PayPal logre nuevas eficiencias operativas y aumente la disponibilidad de las aplicaciones. La disponibilidad de aplicaciones es particularmente crucial para PayPal, ya que algunos de sus clientes utilizan PayPal como La Solución exclusiva de procesamiento de pagos.
Como premisa principal, PayPal quería mantener su agilidad y concentrarse en ofrecer sistemas financieros en tiempo real, de alto rendimiento. Veamos lo que hicieron para asegurar una transición exitosa:
Aplicaciones en contenedores
PayPal lanzó su primer Contenedor en Aseguramiento de la Calidad (QA por sus siglas en inglés) y producción en abril de 2016, imitándolo a solo un equipo central dedicado para conducir esta transición a los contenedores Docker, con el objetivo de evitar la interrupción de su ecosistema actual.
En el transcurso de unos meses, comenzaron a experimentar las ventajas del enfoque de Contenedor, siendo una de las más importantes aquella en la quelas aplicaciones se estaban desacoplando del Sistema Operativo, pudiendo con esto modernizar su infraestructura sin necesidad de actualizar la aplicación. Además de que, dado un Sistema Operativo y kernel modernos podrían utilizarse fácilmente sin impacto para la aplicación, PayPal notó que algunas de sus aplicaciones recibieron un aumento de eficiencia de entre un 10% al 20%, sin experimentar o realizar cambios en el código. ¡Una consecuencia bienvenida!
Empoderamiento del desarrollador
Las herramientas de productividad para que los desarrolladores aprovechen los contenedores comenzaron a implementarse a principios de 2017.
Una estrategia que utilizó PayPal fue que habilitó las computadoras portátiles de sus desarrolladores con un conjunto completo de herramientas que les permite construir, implementar y depurar localmente, para posteriormente fomentar la adopción masiva.
Esto también provocó un aumento del 50% en la construcción por parte de los desarrolladores para implementar ciclos de vida, al desarrollar y probar localmente. Una de las recompensas de las que se dieron cuenta, fue que los sistemas de implementación patentados podrían descartarse, ya que Docker permite desasociar la implementación de las pilas de marcos de trabajo, simplificando así el desarrollo.
Contenedores como un Servicio (CaaS)
A finales de 2017, las primeras aplicaciones se lanzaron en una plataforma de Contenedor como un Servicio (CaaS por sus siglas en inglés) y esto trajo consigo una notable caída del 50% en el uso de vCPU en QA, así como un claro descenso del uso de vCPU del 25% en producción.
La escalabilidad de sus aplicaciones se mejoró al eliminar la sobrecarga de las Máquinas Virtuales. Ahora es un hecho universalmente reconocido, que los contenedores son más rápidos y livianos que las máquinas virtuales y esto trae consigo muchas ventajas.
El principal cambio del uso de CaaS fue que una plataforma se podía usar en todos los entornos con monitoreo y alertas consistentes, evitando la necesidad de construir nueva infraestructura cada vez que se necesita una nueva experiencia.
PayPal ahora tiene más de 700 aplicaciones que se han migrado a Docker y actualmente tiene en producción 45,000 hosts de Máquinas Virtuales con contenedores, así como más de 150,000 contenedores. PayPal garantiza que cualquier aplicación nueva, será ejecutada dentro de un contenedor, sin excepciones.
3. Metlife
Metlife está utilizando contenedores para transformar y mejorar sus ofertas de productos y gestión de la información a sus clientes. MetLife, al ser una empresa tan antigua, tiene muchos sistemas heredados. Tanto es así que todavía tienen un código que fue escrito en 1982 y todavía en producción.
Estas aplicaciones heredadas son difíciles de mantener, difíciles de integrar y una molestia para brindar soporte. Entonces emplearon un enfoque de tres pasos usando contenedores para revisar completamente sus aplicaciones antiguas:
Microservicios
Uno de los primeros pasos que dieron fue envolver sus aplicaciones heredadas en microservicios, es decir, modernizar los sistemas heredados con una capa de microservicios. El enfoque consistió en dividir varias piezas de la lógica comercial en partes modulares que se pueden escalar de forma diferente y administrar con facilidad. Utilizaron Docker Datacenter para resolver los diversos microservicios que derivaban en severas complejidades.
Convertirse en un agnóstico de datos
La mayoría de estos sistemas usan sistemas arcaicos de almacenamiento y son de difícil acceso. MetLife tuvo que reemplazarlos con varias tecnologías modernas como API, herramientas de Big Data y NoSQL para proporcionar acceso a esta información en múltiples aplicaciones. Esto permitió a los desarrolladores tener sus aplicaciones accediendo a los datos de una manera moderna y segura, sin preocuparse si está alojado en un mainframe arcaico o una versión obsoleta de una tecnología de base de datos en particular.
Retirar aplicaciones heredadas
Una vez que los microservicios y los datos están conectados, partes completas de estas aplicaciones heredadas pueden desactivarse. Estos microservicios ahora alojados en contenedores ágiles permiten el uso de interfaces de usuario modernas y ofrece a los clientes aplicaciones modernas en línea en línea con ofertas más actuales.
Usando este enfoque, MetLife ha logrado una consolidación de casi el 70 por ciento en su infraestructura de Máquinas Virtuales, así como también ha permitido la escalabilidad de estas aplicaciones usando Docker a través de la nube Azure.
Lo que es más sorprendente es que esta compañía tradicional de Fortune 40, ha implementado de manera impresionante este entorno Docker con aplicaciones para clientes en tan solo cinco meses.
2018: cargamentos de contenedores
No tenemos dudas de que habrá mucho más por venir en términos de características, seguridad y variedad de soluciones de contenedores este año. Los contenedores definitivamente han llegado para quedarse y nos complace ver su adopción en 2017 por parte de las grandes compañías, hasta llegar a nuevas empresas emergentes.
Great tips, many thanks for sharing. I have printed and will stick on the wall! I like this blog. Docker Avanzado
ResponderEliminar