Configura los sondeos de preparación de Kubernetes (opcional)
En esta página, se describe cómo usar Cloud Service Mesh con la infraestructura de verificación de estado de Google Cloud para configurar las sondas y las puertas de preparación de Kubernetes.
Requisitos previos
Como punto de partida, en esta guía se supone que ya hiciste lo siguiente:
- Creaste un clúster de GKE y lo registraste en una flota.
- Se instalaron las definiciones de recursos personalizadas.
Verificaciones de estado transparentes con CSM
La API de Cloud Service Mesh Gateway ahora ofrece verificaciones de estado transparentes, es decir, Universal HealthChecks integrados en los datos de estado de preparación de Kubernetes para permitir el flujo de tráfico a los Pods marcados como listos. Esta función está disponible para los servicios HTTP y gRPC.
Cloud Service Mesh expone el estado de tus Pods de Kubernetes directamente a la infraestructura de verificación de estado de Google, por lo que la misma configuración que uses para los ReadinessProbes se pasará de forma transparente a la infraestructura de verificación de estado del balanceo de cargas de Google y el estado de la verificación de estado se alineará con el estado del sondeo de preparación. Para ello, se usa un componente llamado Verificador de estado transparente, que se ejecuta en todos los nodos que entregarán el estado del Pod.
Cloud Service Mesh configura el tráfico de verificación de estado enviado desde los rangos de origen de la infraestructura de verificación de estado para que se envíe a un puerto reservado (7877). Este tráfico se redirecciona al servidor de verificación de estado transparente de forma local en el nodo. El servidor responde con un estado de preparación que coincide con el estado actual de la preparación del pod de Kubernetes. El flujo de tráfico a los Pods de Kubernetes se controla según el estado Listo establecido en cada Pod. De manera opcional, puedes controlar el estado con los valores del sondeo de preparación y las puertas de preparación. La verificación de estado transparente informará el estado en función de un operador lógico Y de todas las condiciones de Kubernetes.
Puedes configurar sondeos de Kubernetes, puertas de preparación y otras verificaciones que influyen en el estado de preparación del pod de Kubernetes.
Configurar sondeos de preparación para un servicio HTTP (opcional)
De forma opcional, puedes agregar esta sección a la Deployment para el servicio de whereami en Configuración del servicio HTTP.
...
spec:
containers:
- name: whereami
image: gcr.io/google-samples/whereami:v1.2.20
ports:
- containerPort: 8080
readinessProbe:
initialDelaySeconds: 1
periodSeconds: 2
timeoutSeconds: 1
successThreshold: 1
failureThreshold: 1
httpGet:
host:
scheme: HTTP
path: /
port: 8080
initialDelaySeconds: 5
periodSeconds: 5
Configura sondeos de preparación para un servicio de gRPC (opcional)
De forma opcional, puedes agregar esta sección a la Deployment para psm-grpc-server configuración del servicio de gRPC.
...
spec:
containers:
- name: psm-grpc-server
image: ${IMAGE_NAME}
imagePullPolicy: Always
args:
${ARGS}
ports:
- containerPort: 50051
readinessProbe:
initialDelaySeconds: 1
periodSeconds: 2
timeoutSeconds: 1
successThreshold: 1
failureThreshold: 1
grpc:
port: 50051