Aaqueles que escutam (listen) em alguma porta do protocolo TCP, em qualquer porta.
Baqueles que escutam (listen) na porta 80 do protocolo TCP.
Caqueles que possuem a labelspec.
Daqueles que possuem a label my-service.
Eaqueles que possuem a labelapp.kubernetes.io/ name: MyApp.
Revelar gabarito e comentário▾
GabaritoE — aqueles que possuem a label app.kubernetes.io/ name: MyApp.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Kubernetes: Seleção de Pods por Service (Label Selector)
Gabarito: letra E. O Service do Kubernetes seleciona os Pods que possuem a label app.kubernetes.io/name: MyApp, conforme o campo selector do manifesto YAML. O selector define o critério de associação entre o Service e os Pods, e é exatamente essa label que o Pod deve ter para ser incluído no serviço.
O Kubernetes é um orquestrador de contêineres que gerencia a implantação, o escalonamento e a operação de aplicações. No centro desse gerenciamento está o conceito de label (etiqueta): pares chave-valor que identificam e agrupam recursos, como Pods. O Service é um objeto que expõe um conjunto de Pods como um serviço de rede, e a forma de escolher quais Pods ele vai encaminhar tráfego é justamente o selector (seletor), que filtra os Pods por labels.
No manifesto fornecido, o campo selector contém app.kubernetes.io/name: MyApp. Isso significa que o Service vai incluir todos os Pods que possuam essa label com esse valor exato. A porta 80 e a targetPort: 9376 definem o mapeamento de portas (a porta do Service e a porta do contêiner), mas não são critérios de seleção. O protocolo TCP também não é critério de seleção — ele apenas especifica o protocolo de rede usado pelo Service.
A pegadinha da questão está em confundir os campos do manifesto: o selector é o que decide quais Pods entram no serviço, enquanto port, targetPort e protocol são configurações de rede. O candidato que não domina a estrutura do YAML pode achar que a porta 80 ou o protocolo TCP são critérios de seleção, mas não são. A seleção é exclusivamente por labels.
Na prática, para que um Pod seja incluído no Service, ele deve ter, em seu próprio manifesto, a label app.kubernetes.io/name: MyApp. Por exemplo, um Pod com labels: app.kubernetes.io/name: MyApp será selecionado; um Pod sem essa label, ou com valor diferente, ficará de fora, mesmo que escute na porta 9376.
Guarde a distinção: selector = critério de seleção por labels; portas e protocolo = configuração de rede do Service. É nessa fronteira que as alternativas se dividem.
Service Kubernetes
1selector
label app.kubernetes.io/name: MyApp
define quais Pods entram
2portas e protocolo
port: 80
targetPort: 9376
protocol: TCP
não são critérios de seleção
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que qualquer Pod que escute em qualquer porta TCP seria incluído. Isso ignora completamente o selector. O Service só seleciona Pods que tenham a label app.kubernetes.io/name: MyApp, independentemente da porta em que escutam. A porta é uma configuração de rede, não um critério de seleção.
Alternativa B — ❌ Incorreta
Afirma que os Pods que escutam na porta 80 seriam incluídos. A porta 80 é a port do Service (a porta pela qual o serviço é acessado), não um critério de seleção. O targetPort: 9376 é a porta do contêiner, mas também não é usado no selector. A seleção é por label, não por porta.
Alternativa C — ❌ Incorreta
Afirma que os Pods com a label spec seriam incluídos. spec é uma seção do manifesto YAML (a especificação do recurso), não uma label. Não existe label spec no contexto; o selector aponta para app.kubernetes.io/name: MyApp. Confunde a estrutura do YAML com labels de Pod.
Alternativa D — ❌ Incorreta
Afirma que os Pods com a label my-service seriam incluídos. my-service é o name do Service (no campo metadata), não uma label de seleção. O selector não referencia o nome do Service; ele referencia a label app.kubernetes.io/name: MyApp. Troca o nome do recurso pela label de seleção.
Alternativa E — ✅ Correta ⟵ GABARITO
O selector do Service é app.kubernetes.io/name: MyApp. Portanto, os Pods que possuem essa label com esse valor são exatamente os que serão incluídos no serviço. É o mecanismo padrão do Kubernetes: o Service usa o selector para encontrar os Pods que devem receber tráfego.
NÃO CAIA NESSA!
A banca explora a confusão entre os campos do manifesto. O candidato pode achar que a porta 80 ou o protocolo TCP são critérios de seleção, mas o selector é o único campo que define quais Pods entram no serviço. Lembre-se: selector = labels; portas = rede.