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.
- Instalaste las definiciones de recursos personalizados.
Verificaciones de estado transparentes con CSM
La API de Cloud Service Mesh Gateway ahora ofrece verificaciones de estado transparentes, es decir, verificaciones de estado universales integradas con datos de estado de preparación de Kubernetes para permitir el flujo de tráfico a los pods que están 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 usas para los sondeos de preparación de pods se pasará de forma transparente a la infraestructura de verificación de estado del balanceador de cargas de Google, y el estado de la verificación de estado se alineará con el estado del sondeo de preparación. Esto se hace con un componente, llamado Transparent Health Checker, que se ejecuta en cada nodo que entregará el estado del Pod.
Cloud Service Mesh configura el tráfico de verificación de estado que se envía 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 en función del estado Listo establecido en cada Pod. De manera opcional, puedes controlar el estado "Listo" con los valores de sondeo de preparación y de 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.
Configura pruebas de disponibilidad para un servicio HTTP (opcional)
De forma opcional, puedes agregar esta sección a la Deployment del servicio whereami Configuración del servicio HTTP.
...
spec:
containers:
- name: whereami
image: us-docker.pkg.dev/google-samples/containers/gke/whereami:v1
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 manera opcional, puedes agregar esta sección a la configuración del servicio de gRPC de la Deployment de psm-grpc-server.
...
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