Proteger y visualizar la aplicación

Agregar aplicaciones a una malla ambient es tan simple como etiquetarel namespace donde reside la aplicación. Al agregar las aplicaciones a la malla, proteges automáticamente la comunicación entre ellas e Istio comienza a recopilar telemetría TCP. Y no, ¡no necesitas reiniciar ni volver a desplegar las aplicaciones!

Agregar Bookinfo a la malla

Puedes habilitar que todos los pods en un namespaces determinado formen parte de una malla ambient simplemente etiquetandoel namespace:

$ kubectl label namespace default istio.io/data plane-mode=ambient
namespace/default labeled

¡Felicidades! Has agregado correctamente todos los pods enel namespace predeterminado a la malla ambient. 🎉

Si abres la aplicación Bookinfo en tu navegador, verás la página del producto, como antes. La diferencia esta vez es que la comunicación entre los pods de la aplicación Bookinfo está cifrada mediante mTLS. Además, Istio está recopilando telemetría TCP para todo el tráfico entre los pods.

Visualizar la aplicación y las métricas

Usando el panel de control de Istio, Kiali, y el motor de métricas de Prometheus, puedes visualizar la aplicación Bookinfo. Despliégalos ambos:

ZipZip
$ kubectl apply -f @samples/addons/prometheus.yaml@
$ kubectl apply -f @samples/addons/kiali.yaml@

Puedes acceder al panel de control de Kiali ejecutando el siguiente comando:

$ istioctl dashboard kiali

Enviemos algo de tráfico a la aplicación Bookinfo, para que Kiali genere el gráfico de tráfico:

$ for i in $(seq 1 100); do curl -sSI -o /dev/null http://localhost:8080/productpage; done

A continuación, haz clic en el Gráfico de tráfico y selecciona “Default” en el menú desplegable “Seleccionar namespaces”. Deberías ver la aplicación Bookinfo:

Panel de control de Kiali
Panel de control de Kiali

Si haces clic en la línea que conecta dos servicios en el panel de control, puedes ver las métricas de tráfico de entrada y salida recopiladas por Istio.

Tráfico L4
Tráfico L4

Además de las métricas de TCP, Istio ha creado una identidad sólida para cada servicio: un ID de SPIFFE. Esta identidad se puede utilizar para crear políticas de autorización.

Próximos pasos

Ahora que tienes identidades asignadas a los servicios, vamos a aplicar políticas de autorización para proteger el acceso a la aplicación.

¿Fue útil esta información?
¿Tienes alguna sugerencia para mejorar?

¡Gracias por tus comentarios!