Kubernetes Cluster Architecture Question #019e3a4f
Qual destes eventos fará com que o kube-scheduler atribua um Pod a um nó?
Quando o Pod falha devido a um erro.
Quando um novo nó é adicionado ao cluster Kubernetes.
Quando a carga de CPU no nó se torna muito alta.
Quando um novo Pod é criado e não tem nó atribuído.
Official Explanation / Community Explanations
O kube-scheduler é responsável por atribuir Pods recém-criados a nós que ainda não receberam um nó. Ele não reage diretamente a falhas de Pod, adição de nós ou mudanças na carga de CPU; esses eventos podem acionar outros componentes, mas não a lógica de atribuição do scheduler.
Como Funciona
O kube-scheduler observa o API server em busca de Pods com o campo nodeName vazio. Quando um novo Pod é criado sem atribuição de nó, o scheduler seleciona um nó adequado com base em requisitos de recursos, restrições e políticas. Em seguida, ele atualiza o nodeName do Pod para vincular o Pod àquele nó.
Por que a resposta correta está certa
"Quando um novo Pod é criado e não tem nó atribuído" é o gatilho exato para o scheduler. A função principal do scheduler é atribuir Pods não atribuídos a nós.
Por que as respostas incorretas estão erradas
- "Quando o Pod falha devido a um erro": Uma falha não aciona o agendamento; o scheduler apenas atribui Pods recém-criados e não atribuídos. Um Pod com falha pode ser reiniciado pelo kubelet no mesmo nó ou recriado por um controlador, mas o scheduler não está envolvido na recuperação de falhas.
- "Quando um novo nó é adicionado ao cluster Kubernetes": Adicionar um nó não faz com que o scheduler atribua Pods diretamente. O scheduler pode considerar o novo nó para decisões futuras de agendamento, mas não reatribui Pods existentes.
- "Quando a carga de CPU no nó se torna muito alta": Alta carga de CPU não aciona o agendamento. O scheduler não monitora a carga do nó; ele considera apenas solicitações e limites de recursos durante a colocação inicial. O balanceamento de carga é tratado por outros mecanismos, como autoscaling horizontal de Pods ou descheduler.