Inserta proxies de sidecar

Anthos Service Mesh usa proxies de sidecar para mejorar la seguridad, confiabilidad y observabilidad de la red. Con Anthos Service Mesh, estas funciones se abstraen del contenedor principal de la aplicación y se implementan en un proxy común fuera del proceso, que se entrega como un contenedor separado en el mismo pod. Para aprovechar al máximo las funciones de Anthos Service Mesh, cuando implementas o vuelves a implementar cargas de trabajo, debes insertar un proxy de sidecar al pod de la carga de trabajo. El proxy intercepta todo el tráfico de entrada y de salida de las cargas de trabajo y se comunica con Anthos Service Mesh.

Habilita la inserción automática de sidecar

Puedes insertar un proxy de sidecar de forma manual si actualizas la configuración de Kubernetes de tus pods, o puedes usar la inserción automática de sidecar basada en webhooks. De forma predeterminada, la inserción automática de sidecar está inhabilitada para todos los espacios de nombres. Para habilitarla, usa este comando:

kubectl label namespace NAMESPACE istio-injection=enabled --overwrite

En el ejemplo anterior, NAMESPACE es el nombre del espacio de nombres de los servicios de tu aplicación o es default si no creaste un espacio de nombres de forma explícita.

Debido a que los sidecars se insertan cuando se crean los pods, debes reiniciar cualquier pod en ejecución para que el cambio se efectúe.

Inserción manual de sidecar

Para insertar los sidecars de forma manual, consulta Instala el sidecar.

Actualiza los sidecars para pods existentes

Con la inserción automática de sidecar, puedes actualizar los sidecars para pods existentes con un reinicio de pods:

La forma en la que reinicias los pods dependerá de si se crearon como parte de un objeto Deployment.

  1. Si usaste un Deployment, debes reiniciarlo, de modo que se reinicien todos los pods con sidecars:

    kubectl rollout restart deployment
    

    Si no usaste un Deployment, borra los pods, y se volverán a crear de forma automática con sidecars:

    kubectl delete pod -n YOUR_NAMESPACE --all
  2. Verifica que todos los pods en el espacio de nombres tengan sidecars incorporados:

    kubectl get pod -n YOUR_NAMESPACE --all

    En el siguiente resultado de ejemplo del comando anterior, observa que la columna READY indica que hay dos contenedores para cada una de tus cargas de trabajo: el contenedor principal y el contenedor del proxy de sidecar.

    NAME                    READY   STATUS    RESTARTS   AGE
    YOUR_WORKLOAD           2/2     Running   0          20s
    ...
    

¿Qué sigue?

Conoce más sobre: