Acerca de Cloud Service Mesh
Cloud Service Mesh es un paquete de herramientas que te ayuda a supervisar y administrar de la malla de servicios de forma local o en Google Cloud.
¿Qué es una malla de servicios?
Una malla de servicios es una arquitectura que permite una comunicación administrada, observable y segura en todos tus servicios, de modo que puedes crear aplicaciones empresariales sólidas y compuestas por muchos microservicios en la infraestructura seleccionada. Con las mallas de servicios, se dejan de lado todas las preocupaciones comunes de ejecutar un servicio, como la supervisión, las redes y la seguridad, por medio de herramientas potentes y coherentes, lo que facilita que los desarrolladores y operadores de servicios se concentren en crear y administrar aplicaciones excelentes para sus usuarios.
Cloud Service Mesh cuenta con la tecnología de Istio, una plataforma de malla de servicios de código abierto altamente configurable y potente, herramientas y funciones que implementan las prácticas recomendadas de la industria. Cloud Service Mesh se implementa como una capa uniforme en toda tu infraestructura. Los desarrolladores y operadores de servicios pueden usar sus amplios conjuntos de atributos sin hacer cambios en el código de la aplicación.
A nivel arquitectónico, una malla de servicios consta de uno o más planos de control y una en el plano de datos. La malla de servicios supervisa todo el tráfico a través de un proxy. En Kubernetes, el proxy se implementa mediante un patrón de sidecar en los microservicios de la malla. Este patrón separa la lógica empresarial o de la aplicación de las funciones de red y permite que los desarrolladores se enfoquen en las características que la empresa necesita. Las mallas de servicios también permiten que los equipos de operaciones y de desarrollo separen el trabajo entre sí.
¿Cómo puede ayudarme Cloud Service Mesh?
Con Cloud Service Mesh, obtienes una prueba y asistencia de GKE Enterprise de Istio, que te permite crear e implementar una malla de servicios GKE en Google Cloud y otras plataformas con la asistencia completa de Google.
Funciones
Cloud Service Mesh cuenta con un conjunto de funciones y herramientas que te ayudan a observar y administrar servicios seguros y confiables de manera unificada.
Administración del tráfico
Cloud Service Mesh controla el flujo de tráfico entre servicios, hacia la malla (entrada) y hacia servicios externos (salida). Tú configuras e implementas Recursos personalizados compatibles con Istio para administrar este tráfico en la capa de aplicación (L7). Por ejemplo, con los recursos personalizados, puedes hacer lo siguiente:
- Crea canary y azul-verde de Google Cloud.
- Proporciona un control detallado sobre las rutas específicas para los servicios
- Configura el balanceo de cargas entre servicios.
- Configura los disyuntores.
La malla de servicios de Cloud mantiene un registro de todos los servicios de la malla y por sus respectivos extremos. Mantiene el registro para administrar el flujo de tráfico (por ejemplo, las direcciones IP del Pod de Kubernetes). Cuando se usa este registro de servicio y se ejecutan los proxies junto con los servicios, la malla puede dirigir el tráfico al extremo adecuado.
Estadísticas de observabilidad
Las páginas de Cloud Service Mesh en la consola de Google Cloud proporcionan las siguientes estadísticas sobre tu malla de servicios:
Las métricas y los registros del tráfico HTTP del servicio dentro del clúster de GKE de tu malla se transfieren de forma automática a Google Cloud.
Los paneles de servicios preconfigurados te brindan la información que necesitas para comprender los servicios.
La telemetría profunda, con la tecnología de Cloud Monitoring, Cloud Logging y Cloud Trace, te permite analizar en profundidad los registros y métricas del servicio. Puedes filtrar y segmentar los datos en una amplia variedad de atributos.
La vista rápida de las relaciones de servicio a servicio te ayuda a estar al tanto de quién se conecta a cada servicio y de qué servicios depende cada servicio.
Puedes ver con rapidez el enfoque de seguridad de la comunicación de tu servicio y de sus relaciones con otros servicios.
Los objetivos de nivel de servicio (SLO) proporcionan información sobre el estado de tus servicios. Puedes definir con facilidad un SLO y alertas en función de tus propios estándares del estado del servicio.
Obtén más información sobre las funciones de observabilidad de Cloud Service Mesh en nuestra Guía de observabilidad.
Beneficios de seguridad
Se reduce el riesgo ataques de repetición o de robo de identidad con credenciales robadas. Cloud Service Mesh depende de certificados TLS mutuos (mTLS) para la autenticación intercambios de tráfico, en lugar de tokens del portador, como Tokens web JSON (JWT).
Se garantiza la encriptación en tránsito. El uso de mTLS para la autenticación también garantiza que todas las comunicaciones de TCP estén encriptadas en tránsito.
Asegura que solo los clientes autorizados pueden acceder a un servicio con datos sensibles, sin importar la ubicación de la red del cliente ni las credenciales a nivel de la aplicación.
Se reduce el riesgo de violación de la seguridad de los datos del usuario en tu red de producción. Puedes asegurarte de que los usuarios con información privilegiada solo puedan acceder a datos sensibles a través de clientes autorizados.
Se identifica qué clientes accedieron a un servicio con datos sensibles. El registro de acceso de la malla de servicios de Cloud captura la identidad de mTLS del cliente en además de la dirección IP.
Todos los proxies y componentes del plano de control en el clúster usan módulos de encriptación validados por FIPS 140-2.
Obtén más información sobre los beneficios y las funciones de seguridad de Cloud Service Mesh en nuestra guía de seguridad.
Opciones de implementación
Tienes las siguientes opciones de implementación en Cloud Service Mesh:
- Cloud Service Mesh administrada
- Plano de control en el clúster
Anthos Service Mesh administrado
La malla de servicios de Cloud administrada consta del plano de control administrado y los datos administrados en el plano de control. Con Cloud Service Mesh administrado, Google se encarga de las actualizaciones, el escalamiento y la seguridad para que puedas minimizar el mantenimiento manual de los usuarios. Con el plano de datos administrado habilitado, Google instala un controlador en el clúster que administra los proxies de sidecar por ti.
En el siguiente diagrama, se muestran los componentes y las funciones de Cloud Service Mesh de Cloud Service Mesh administrado:
Para obtener información sobre cómo configurar o migrar a una malla de servicios de Cloud administrada, consulta Aprovisiona la malla de servicios de Cloud administrados.
Plano de control en el clúster
En el siguiente diagrama, se muestran los componentes y las funciones de Cloud Service Mesh para el plano de control en el clúster y los proxies de sidecar.
Para obtener información sobre cómo instalar una malla de servicios de Cloud en el clúster, consulta Instala Cloud Service Mesh.