Orquestração de Contêineres Question #019e3a4f
O que é uma probe no Kubernetes?
Um mecanismo de monitoramento da API do Kubernetes.
Um escopo pré-operacional emitido pelo agente kubectl.
Um diagnóstico realizado periodicamente pelo kubelet em um container.
Um mecanismo de logging da API do Kubernetes.
Official Explanation / Community Explanations
Uma probe no Kubernetes é um diagnóstico realizado periodicamente pelo kubelet em um container para determinar sua saúde e prontidão. O kubelet usa probes para decidir quando reiniciar um container (liveness probe), quando enviar tráfego para um pod (readiness probe) e quando um container foi iniciado com sucesso (startup probe). As probes podem ser executadas via requisições HTTP, verificações de socket TCP ou execução de comandos dentro do container.
Como Funciona
O kubelet, o agente primário do nó que executa em cada nó do Kubernetes, é responsável por executar as probes. Para cada container em um pod, o kubelet executa a probe configurada em intervalos regulares (por exemplo, a cada 10 segundos). Se uma liveness probe falhar, o kubelet mata o container e o reinicia com base na política de reinicialização do pod. Se uma readiness probe falhar, o kubelet remove o endereço IP do pod dos endpoints do service, interrompendo o roteamento de tráfego para aquele pod. As startup probes são usadas para atrasar as verificações de liveness e readiness até que o container tenha sido totalmente iniciado.
Por que o Valor Correto está Certo
A definição correta afirma que uma probe é "um diagnóstico realizado periodicamente pelo kubelet em um container". Isso descreve com precisão a função central das probes no Kubernetes. O kubelet é o componente que executa em cada nó e gerencia containers, e realiza essas verificações para garantir que o container esteja saudável e pronto para servir tráfego.
Por que os Valores Incorretos estão Errados
- "Um mecanismo de monitoramento da API do Kubernetes" está incorreto porque as probes não fazem parte da API do Kubernetes em si; são ações executadas pelo kubelet no nó. Embora a API defina configurações de probe, a execução real é feita pelo kubelet.
- "Um escopo pré-operacional emitido pelo agente kubectl" está incorreto porque kubectl é uma ferramenta de linha de comando para interagir com a API do Kubernetes, não um agente que emite escopos. Não existe o conceito de "escopo pré-operacional" no Kubernetes.
- "Um mecanismo de logging da API do Kubernetes" está incorreto porque probes não estão relacionadas a logging. O logging no Kubernetes é geralmente tratado por logs de containers e ferramentas como Fluentd ou Elasticsearch, não por probes.