Orquestração de Contêineres
medium
Orquestração de Contêineres Question #019e3a4f
Question Statement
Orquestração de Contêineres
#kubernetes
#scheduling
#nodeselector
Medium
O que o "nodeSelector" dentro de um PodSpec usa para colocar Pods nos nós de destino?
A
Anotações
B
Endereços IP
C
Nomes de host
D
Labels
Correct
Official Explanation / Community Explanations
O campo nodeSelector em um PodSpec é usado para restringir em quais nós um Pod pode ser agendado, com base nos labels do nó. Labels são pares chave-valor anexados a objetos Kubernetes, como nós, para identificar atributos. Quando um Pod especifica um nodeSelector, o scheduler considera apenas nós que possuem todos os labels especificados. Esta é uma restrição de agendamento simples e estática.
Como Funciona
- Os nós são rotulados durante a criação ou via
kubectl label nodes <node-name> <label-key>=<label-value>. - O
nodeSelectorde um Pod é um mapa de chaves de label para valores. Por exemplo:nodeSelector: { disktype: ssd }. - O scheduler compara o
nodeSelectordo Pod com os labels dos nós; apenas nós com labels correspondentes são elegíveis.
Por que Labels estão Corretos
Labels são o mecanismo usado pelo nodeSelector para selecionar nós. Eles são projetados para identificar e agrupar recursos.
Por que as Outras Opções estão Incorretas
- Anotações: Anotações são metadados não identificadores usados para ferramentas ou sistemas externos, não para decisões de agendamento.
- Endereços IP: Endereços IP não são usados pelo
nodeSelector. A seleção de nós por IP é possível via camponodeName, mas isso ignora o agendamento. - Nomes de host: Nomes de host não são usados pelo
nodeSelector. Embora o nome de host de um nó seja frequentemente um label (kubernetes.io/hostname), onodeSelectorcorresponde a labels arbitrários, não especificamente a nomes de host.