Configurar sondagens de prontidão do Kubernetes (opcional)
Esta página descreve como usar a Cloud Service Mesh com a infraestrutura de verificação de integridade do Google Cloud para configurar verificações do Kubernetes e portões de prontidão.
Pré-requisitos
Como ponto de partida, este guia pressupõe que você já:
- Criou um cluster do GKE e o registrou em uma frota.
- Instalou as definições de recursos personalizados.
Verificações de integridade transparentes com CSM
A API Gateway do Cloud Service Mesh agora oferece verificações de integridade transparentes, ou seja, verificações de integridade universais integradas aos dados de status de prontidão do Kubernetes para permitir o fluxo de tráfego para os pods marcados como prontos. Esse recurso está disponível para serviços HTTP e gRPC.
A Cloud Service Mesh expõe o status dos pods do Kubernetes diretamente à infraestrutura de verificação de integridade do Google. Assim, a mesma configuração usada para as sondagens de prontidão do pod será transmitida de forma transparente à infraestrutura de verificação de integridade do balanceamento de carga do Google, e o estado da verificação de integridade será alinhado ao estado da sondagem de prontidão. Isso é feito usando um componente chamado Transparent Health Checker, que é executado em todos os nós que vão exibir o status de integridade do pod.
A Cloud Service Mesh configura o tráfego de verificação de integridade enviado dos intervalos de origem da infraestrutura de verificação de integridade para ser enviado a uma porta reservada (7877). Esse tráfego é redirecionado para o servidor de verificação de integridade transparente localmente no nó. O servidor responde com um status de integridade correspondente ao estado atual da prontidão do pod do Kubernetes. O fluxo de tráfego para os pods do Kubernetes é controlado com base no status "Pronto" definido em cada pod. Você pode controlar o status "Pronto" com a sondagem de prontidão e os valores de limites de prontidão. A verificação de integridade transparente vai informar o status com base em um operador lógico E de todas as condições do Kubernetes.
É possível configurar sondagens do Kubernetes, portas de prontidão e outras verificações que influenciam o status de prontidão do pod do Kubernetes.
Configurar sondagens de preparo para um serviço HTTP (opcional)
Você pode adicionar esta seção à implantação do serviço whereami Configuração do serviço 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
Configurar sondagens de prontidão para um serviço gRPC (opcional)
Você pode adicionar esta seção à implantação da configuração do serviço gRPC do 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