Por Dan Ciruli, gerente de Producto

Hoy, Google Cloud tiene el agrado de anunciar junto a sus colaboradores que el proyecto de código abierto de Istio llegó a la versión “milestone” 1.0. Este es un paso clave para la entrega de la plataforma Cloud Services, que vimos la semana pasada y te permite administrar tus servicios en un ámbito híbrido en el cual una parte de tu infraestructura se ejecuta en VM y otra en Kubernetes, y algunos servicios se ejecutan en la nube y otros en instalaciones.

Istio: una trama de servicios

Istio es, en esencia, una trama de servicio; un software que se superpone de modo transparente con una aplicación distribuida existente. Recopila registros, seguimientos y telemetría, y agrega seguridad y política sin incorporar bibliotecas de clientes. También es una plataforma completa con API que permiten la integración con sistemas para registro, telemetría y política.

Istio envía una vista basada en servicio de las interacciones de servicio en la trama. Mientras que la supervisión tradicional te brinda métricas de bajo nivel, como el consumo de CPU de nodos, Istio mide el tráfico real entre servicios: solicitudes por segundo, índices de error y latencia. También genera un gráfico de dependencias para que puedas ver cómo los servicios se afectan entre sí.

Con Istio, tu equipo DevOps accede a las herramientas que necesita para ejecutar apps distribuidas suavemente. Istio realiza implementaciones de canary, lo que te permite hacer una prueba de humo de una compilación nueva para asegurarte de que funcione bien antes de la expansión. También ofrece inserción de errores, lógica de reintento y cortocircuito de modo que los equipos DevOps puedan realizar más pruebas y cambiar el comportamiento de red en el tiempo de ejecución, para mantener las aplicaciones en funcionamiento.

Por último, Istio agrega seguridad. Se puede usar para superponer mTLS en cada llamada, con lo cual se agrega encriptación en vuelo y te permite autorizar cada una de las llamadas en tu clúster y en tu trama.

Istio en acción

Istio proporciona capacidades básicas para tu infraestructura, lo cual libera a los desarrolladores para que trabajen en el código esencial para tu negocio. Sin embargo, hay una sola forma de probar que Istio está listo para la empresa: ejecutar cargas de trabajo reales en la producción. Ya hay al menos una docena de empresas que utilizan Istio en producción, incluso muchas en GCP. Trabajamos con ellas para superar los primeros obstáculos, incorporamos sus comentarios y ya están aprovechando los beneficios de Istio. Un gran ejemplo es Auto Trader UK, que usó Istio para acelerar el movimiento a contenedores y a la nube pública.

Auto Trader UK no solo realiza migraciones de la nube privada a la pública, sino también de máquinas virtuales a Kubernetes. El nivel de control y visibilidad que Istio proporciona nos ha permitido minimizar el riesgo en este ambicioso trabajo de manera significativa y, en varios casos, ha revelado problemas que desconocíamos. Hemos podido acelerar la entrega de capacidades, como la TLS mutua, que previamente hubiese exigido un considerable esfuerzo de ingeniería, lo cual nos permite concentrarnos en las cualidades distintivas de nuestro mercado.
- Karl Stoney, líder de Infraestructura de entrega, Auto Trader UK

Un verdadero esfuerzo conjunto

Primero lanzamos Istio como código abierto el año pasado, y este año ha sido fabuloso. Desde esa primera versión 0.1, Istio ha mejorado y madurado de manera significativa, con ocho versiones, más de 200 colaboradores y más de 4000 registros que agregan un conjunto de funcionalidades en constante ampliación.

Llegar a la versión 1.0 fue realmente un esfuerzo impulsado por la comunidad. IBM fue un colaborador clave y cofundador, y el proxy de Envoy de Lyft es un componente clave del proyecto. Desde entonces, el número de empresas involucradas en Istio experimentaron un éxito arrollador, incluidas Cisco  Red Hat y VMware, lo que consolidó el apoyo del sector en la búsqueda del objetivo de acelerar la adopción y satisfacer las necesidades de la trama de servicio de sus clientes.

“El crecimiento de Istio desde su lanzamiento, el año pasado, ha sido impresionante y rápidamente se está consagrando como el modo estándar de manejar los microservicios en la nube”, afirmó Jason McGee, colega y vicepresidente de IBM, IBM Cloud. “Nuestra misión desde el lanzamiento de Istio ha sido lograr que todos tuvieran éxito con sus microservicios, en especial en la empresa. Por ello, nos hemos centrado los esfuerzos de la comunidad en mejorar la seguridad y la expansión, y apoyamos fuertemente nuestros aportes en lo que aprendimos de la compilación de arquitecturas ágiles en la nube para empresas de todas las magnitudes”.
- Jason McGee, colega y vicepresidente de IBM, IBM Cloud 
“Vemos el potencial de Istio para resolver alguno de los aspectos más complejos del desarrollo y la implementación de aplicaciones. Ofrece un plano de control para la trama de servicio, la organización de clústeres y el control de redes que brindará apoyo a los desarrolladores y les permitirá concentrarse en los aspectos más importantes del desarrollo de sus aplicaciones. Esperamos aprovechar Istio en Red Hat OpenShift para permitir que los desarrolladores implementen sus aplicaciones de una manera más segura y eficiente”. 
- Brian “Redbeard” Harrington, gerente de Producto, Istio, Red Hat
“VMware ha sido parte integral de la comunidad que desarrolla la trama de servicio de Istio. Vemos un gran potencial en el enfoque basado en servicio que Istio aplica a la conectividad, la seguridad y la observabilidad. Creemos que se convertirá en una piedra angular en términos de infraestructura, capaz de abarcar las plataformas vSphere y Kubernetes, además de varias nubes privadas y públicas, y ayudar a nuestros clientes de empresas a mejorar la eficiencia en el desarrollo y a cumplir con sus ANS y SLO de una manera segura. La capa de aplicación de Istio complementa la capa de virtualización de red y juntas permiten que las empresas desarrollen una defensa profunda, mejoren el rendimiento y la escalabilidad, y aceleren los tiempos para el valor de la aplicación”. 
- Pere Monclus, CTO de Redes y seguridad, VMware

Nos entusiasma el número de empresas que escriben adaptadores para Istio, desde un software de observabilidad de SolarWinds y Datadog, hasta herramientas de implementación de Weaveworks y CodeFresh, y ofrecimientos de políticas y seguridad de Aspenmesh y Octarine. Si bien Istio es transparente para los desarrolladores de aplicaciones, proporciona una interfaz de integración estándar para quienes escriban herramientas de observabilidad o motores de políticas.

Otro factor importante que nos permite tener éxito es el trabajo y la integración con otros proyectos de código abierto en la comunidad. Las integraciones con SPIFFE, Open Policy Agent y OpenTracing aportan mejoras para el estado del código abierto y la vida de los desarrolladores.

Istio en GCP

Si bien el proyecto de código abierto de Istio es un desafío importante, también nos proponemos facilitar en particular el uso en Google Cloud Platform. La semana pasada en Google Cloud Next anunciamos el lanzamiento alfa de Managed Istio: Istio de código abierto que se instala y se actualiza automáticamente en los clústeres de tu Kubernetes Engine como parte de la plataforma Cloud Services. Un Istio administrado ayudará a proporcionar la visibilidad, la seguridad y el control que necesitas para los servicios que se ejecutan en entornos híbridos, y se integra con otros productos de Google como Stackdriver y Apigee.

Alcanzar la 1.0 es solo el primer paso, para el proyecto y para nosotros en Google Cloud. Tenemos planes ambiciosos de agregar características y mejorar la usabilidad de Istio con el propósito final de entregar un conjunto completo de herramientas para administrar todos tus servicios, a fin de que te puedas concentrar en escribir software y dirigir tu empresa.

Para obtener más información sobre Istio y sobre cómo comenzar a usarlo en GCP, visita cloud.google.com/istio. Sharing settings