Acerca de las mallas de servicio
Una malla de servicio es un nivel de infraestructura de la aplicación que facilita la comunicación entre los servicios. Las mallas de servicios proporcionan a las cargas de trabajo funcionalidades de gestión del tráfico, resistencia, directivas, seguridad, identidad segura y observabilidad, entre otras. La aplicación se desacopla de estas funcionalidades operativas, mientras que la malla de servicio las retira del nivel de aplicación para pasarlas al nivel de infraestructura.
Escenarios
El uso de una malla de servicio permite escenarios como los siguientes:
Cifrar todo el tráfico del clúster: habilite TLS mutua entre los servicios especificados del clúster. Se puede ampliar para la entrada y salida en el perímetro de red, y ofrece una opción segura de manera predeterminada sin necesidad de realizar cambios en la infraestructura y el código de la aplicación.
Lanzamientos controlados y por fases: especifique las condiciones para que un subconjunto de tráfico se redirija a un conjunto de nuevos servicios del clúster. Si la prueba del lanzamiento controlado es satisfactoria, elimine el redireccionamiento condicional y transfiera gradualmente un porcentaje cada vez mayor del tráfico al nuevo servicio. Finalmente, todo el tráfico se dirigirá al nuevo servicio.
Administración y manipulación del tráfico: cree una directiva en un servicio que limite la frecuencia de todo el tráfico que se dirija a la versión de un servicio desde un origen específico, o una política que aplique una estrategia de reintento de clases de errores entre determinados servicios. Refleje el tráfico real en nuevas versiones de servicios durante una migración o para depurar problemas. Inserte errores entre los servicios en un entorno de prueba para probar la resistencia.
Observabilidad: obtenga información sobre cómo se conectan los servicios y el tráfico que fluye entre ellos. Obtenga métricas, registros y seguimientos de la totalidad del tráfico del clúster, incluidas la entrada y la salida. Agregue funcionalidades de seguimiento distribuido a las aplicaciones.
Criterios de selección
Antes de seleccionar una malla de servicio, asegúrese de que comprende los requisitos y las razones para instalarla. Pregunte lo siguiente:
¿Es suficiente un controlador de entrada para lo que necesito?: a veces es suficiente disponer de una funcionalidad, como las pruebas A/B o la división del tráfico en la entrada, para un escenario concreto. No agregue complejidad a su entorno si no supone una ventaja.
¿Podrán las cargas de trabajo y el entorno soportar las sobrecargas adicionales?: todos los componentes necesarios para admitir la malla de servicio precisan de recursos de CPU y memoria. Todos los servidores proxy y las correspondientes comprobaciones de directivas aumentan la latencia del tráfico. Si tiene cargas de trabajo muy sensibles a la latencia o no puede proporcionar recursos adicionales para cubrir los componentes de malla de servicio, debe reconsiderar el uso de una malla de servicio.
¿No supondrá un aumento innecesario de la complejidad?: si quiere instalar una malla de servicio para usar una funcionalidad no esencial para la empresa o los equipos operativos, analice si merece la pena hacer frente a la complejidad adicional que conllevan la instalación, el mantenimiento y la configuración.
¿Se puede adoptar una estrategia incremental?: algunas de las mallas de servicio que proporcionan una gran cantidad de funcionalidades se pueden adoptar de modo incremental. Instale solo los componentes que necesita para cubrir sus necesidades. Podrá examinar otras funcionalidades más adelante si con el tiempo se da cuenta de que necesita más. Resista la tentación de instalar todo desde el principio.
Pasos siguientes
Azure Kubernetes Service (AKS) ofrece complementos admitidos oficialmente para Istio y Open Service Mesh:
También hay mallas de servicio proporcionadas por proyectos de código abierto y terceros que se usan normalmente con AKS. Estas mallas de servicio no están cubiertas por la directiva de soporte técnico para AKS.
Para obtener más información sobre las mallas de servicio, consulte la página de Layer5 sobre el panorama de las mallas de servicio.
Para más información sobre las iniciativas de estandarización de las mallas de servicio, consulte
Azure Kubernetes Service