Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Configure port probing in Knative

Última atualização: Jun 27, 2026

O Knative usa sondagens mais frequentes e ativas que o Kubernetes padrão para reduzir o tempo de inicialização a frio dos pods e acelerar a transição do estado de inicialização para execução. Adicione liveness probes e readiness probes a um Knative Service para manter sua aplicação íntegra e pronta para receber tráfego.

Como funciona

As liveness probes monitoram a integridade do contêiner. Se um contêiner entrar no estado Failed ou se o serviço falhar ao iniciar, a liveness probe reinicia o contêiner.

As readiness probes gerenciam o dimensionamento automático ao garantir que apenas pods no estado Ready recebam tráfego, melhorando a estabilidade do serviço e a velocidade de resposta.

As sondagens no Knative seguem uma sequência de quatro etapas:

  1. Defina readiness probes ou liveness probes em um CustomResource (CR) do Knative Service.

  2. O kubelet envia liveness probes para os contêineres especificados.

  3. O Knative reescreve as readiness probes e as envia para o contêiner queue-proxy. A sondagem parte do componente Activator ou do próprio contêiner queue-proxy para verificar se todo o link de rede está configurado e pronto.

  4. O Knative define readiness probes para o contêiner queue-proxy. O queue-proxy agrega os resultados das readiness probes de todos os contêineres (o principal e quaisquer sidecars). Quando o queue-proxy retorna respostas bem-sucedidas e a camada de rede do Knative está configurada, o Knative considera os pods íntegros e prontos para aceitar tráfego.

image

Se nenhuma sonda for definida, o Knative cria readiness probes padrão para o contêiner principal. Essas sondagens verificam os sockets TCP nas portas dos Knative Services.

Pré-requisitos

Antes de começar, verifique se você tem:

Configure sondas

Adicione o campo readinessProbe ou livenessProbe a um Knative Service. A configuração segue o mesmo formato das sondas padrão do Kubernetes. Para a referência completa de parâmetros, consulte Configurar liveness, readiness e startup probes.

O exemplo a seguir configura dois contêineres, cada um com uma readiness probe HTTP GET e uma liveness probe de socket TCP:

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: runtime
  namespace: default
spec:
  template:
    spec:
      containers:
      - name: first-container
        image: <YOUR-IMAGE>      # Replace with the actual image name.
        ports:
          - containerPort: 8080
        readinessProbe:          # Checks when the container is ready to receive traffic.
          httpGet:
            port: 8080           # Can differ from containerPort.
            path: "/health"
        livenessProbe:           # Checks whether the container is alive.
          tcpSocket:
            port: 8080
      - name: second-container
        image: <YOUR-IMAGE>      # Replace with the actual image name.
        readinessProbe:
          httpGet:
            port: 8089
            path: "/health"
        livenessProbe:
          tcpSocket:
            port: 8089

Tipos de sonda compatíveis

Tipo de sonda

Descrição

httpGet

Envia uma requisição HTTP GET e verifica o código de status retornado.

tcpSocket

Tenta abrir uma conexão TCP na porta especificada.

exec

Executa um comando no contêiner e verifica o código de saída.

grpc

Chama um método definido pelo gRPC Health Checking Protocol.

Limitações

Não há suporte para sondas PreStop personalizadas. O Knative fornece um hook PreStop integrado para lidar com o encerramento graceful.

Próximos passos

Configure um certificado para acessar Services via HTTPS