jueves, 23 de noviembre de 2017

Istio gestionando la red con microservicios



Istio: un enfoque moderno para desarrollar y gestionar microservicios


Google, IBM y Lyft anunciaron el lanzamiento alfa de Istio: un nuevo proyecto de open-source que proporciona una manera uniforme de ayudar a conectar, proteger, administrar y monitorear microservicios.

Istio encapsula muchas de las mejores prácticas que Google ha estado utilizando para ejecutar servicios de producción a gran escala durante años. Google se ha unido  a la comunidad como una solución abierta que funciona con Kubernetes; en las instalaciones o en cualquier nube, para ayudar a resolver los desafíos en el desarrollo de aplicaciones modernas.
Istio ofrece a los desarrolladores y devops una visibilidad detallada y control sobre el tráfico sin requerir ningún cambio en el código de la aplicación y proporciona a los CIO y las OSC las herramientas necesarias para ayudar a aplicar los requisitos de seguridad y cumplimiento en toda la empresa.


Pasar de aplicaciones monolíticas a microservicios

A medida que las aplicaciones monolíticas se descomponen en microservicios, los equipos deben preocuparse por los desafíos inherentes a la integración de servicios en sistemas distribuidos: deben tener en cuenta la detección de servicios, el equilibrio de carga, la tolerancia a fallos, la supervisión integral, el enrutamiento dinámico para la experimentación de características y quizás lo más importante de todo, cumplimiento y seguridad, lo que se denomina el traficoa Ingress.


Cómo ayuda Istio

Istio es una capa de infraestructura entre un servicio y la red que brinda a los operadores los controles que necesitan y libera a los desarrolladores de tener que resolver problemas del sistema distribuido en su código. Esta capa uniforme de infraestructura combinada con implementaciones de servicio se conoce comúnmente como malla de servicio. Istio está diseñado para ejecutarse en cualquier entorno en cualquier nube, pero en Google se implienta como opensource en Kubernetes. Solo se necesita un solo comando para instalar Istio en cualquier clúster de Kubernetes, lo que crea una malla de servicio que permite:

  • Equilibrio de carga automático para tráfico HTTP, gRPC y TCP
  • Control detallado del comportamiento del tráfico con reglas de enrutamiento enriquecidas
  • Cifrado de tráfico, autenticación de servicio a servicio y fuertes afirmaciones de identidad
  • Aplicación de políticas en toda la flota
  • Intensidad de telemetría e informes


La malla de servicio faculta a los operadores con el control de políticas y los desacopla del proceso de desarrollo y lanzamiento de características, proporcionando una gestión centralizada independientemente de la escala y la velocidad de las aplicaciones. Google se ha dado cuenta de los beneficios de una malla de servicios durante más de una década, para ofrecer servicios confiables a escala mundial como los que usa en sus serivicios YouTube y Gmail, Cloud PubSub y Cloud BigTable.


Open community

Para obtener más información sobre Istio y los problemas que aborda, visite la publicación de blog de lanzamiento de Istio. Istio se está desarrollando abiertamente en GitHub, e invitamos a la comunidad a unirse a nosotros en la configuración del proyecto mientras trabajamos para lograr un lanzamiento de 1.0 a finales de este año. Esperamos trabajar con la comunidad para preparar la producción de Istio y trabajar en todas partes.

Google Cloud está comprometido con el código abierto, ya sea que traiga nuevas tecnologías al aire libre como Kubernetes o gRPC; contribuyendo a proyectos como Envoy; o admitir herramientas de código abierto en Google Cloud Platform. Istio es la última instancia de la contribución continua de Google al código abierto como parte de un esfuerzo de colaboración de la comunidad.


Más allá de Istio

Istio es solo una solución para ayudar a que los microservicios sean más fáciles de construir, implementar, consumir y administrar. En grandes empresas con entornos diversos y uso generalizado de software de terceros, los desarrolladores también desean descubrir, crear instancias y consumir servicios de una manera independiente de la plataforma. Los desarrolladores que prestan servicios necesitan un tiempo de comercialización más rápido, un mayor alcance y una forma simple de rastrear el uso y los costos. Con este fin, se ha  estado trabajando con la comunidad de open source para contribuir con Open Service Broker, una API unificada que simplifica la entrega y el consumo de servicios. A través del modelo de Open Service Broker, los CIO pueden definir un catálogo de servicios que se pueden usar dentro de sus empresas y herramientas de auditoría para aplicar el cumplimiento. Todos los servicios impulsados ​​por Istio podrán participar sin problemas en el ecosistema de Service Broker.


Mirando hacia el futuro

Hoy, puede instalar y usar Istio manualmente en Google Container Engine; en el futuro, en Google indica que tienen la intención de proporcionar una experiencia más automatizada e integrada.

También tienen la intención de brindar capacidades de Istio a Cloud Endpoints y a la gama de productos Apigee. Esto proporcionará visibilidad y administración comunes tanto para API como para microservicios para organizaciones de cualquier tamaño. A medida que se trabaja con la comunidad para endurecer Istio para la preparación de la producción, planeamos proporcionar una integración más profunda con el resto de Google Cloud.


Empiece hoy

Puede comenzar con Istio . En caso de problemas, puede comunicarse a través de la lista de correo istio-users@googlegroups.com o presentar un problema en GitHub.