System Administration
medium

System Administration Question #019e3a4f

Question Statement
System Administration
#kubernetes
#garbage-collection
#cluster-management
Medium

Qual das seguintes opções inclui recursos limpos pelo mecanismo de coleta de lixo do Kubernetes?

A

CertificateSigningRequests (CSRs) desatualizados ou expirados e deployments antigos.

B

Nós excluídos por um cloud controller manager e logs obsoletos do kubelet.

C

Contêineres e imagens de contêiner não utilizados, e logs obsoletos do kubelet.

D

Pods terminados, jobs concluídos e objetos sem owner references.

Correct

Official Explanation / Community Explanations

O mecanismo de coleta de lixo do Kubernetes é responsável por limpar recursos que não são mais necessários, garantindo a saúde do cluster e prevenindo a exaustão de recursos. O conjunto correto de recursos limpos inclui pods terminados, jobs concluídos e objetos sem owner references.

Como Funciona

A coleta de lixo do Kubernetes é executada automaticamente em segundo plano. Ela remove:

  • Pods terminados: Pods que concluíram a execução (por exemplo, nos estados Succeeded ou Failed) são limpos após um tempo configurável (padrão é 5 minutos).
  • Jobs concluídos: Jobs que foram executados até o fim são removidos para liberar recursos.
  • Objetos sem owner references: Quando um objeto proprietário (por exemplo, um ReplicaSet) é excluído, seus objetos dependentes (por exemplo, pods) são coletados como lixo se tiverem um ownerReference apontando para o proprietário excluído. Objetos sem nenhuma owner reference também estão sujeitos à limpeza se não forem necessários de outra forma.

Por que o Valor Correto está Certo

A resposta correta lista exatamente essas três categorias: pods terminados, jobs concluídos e objetos sem owner references. Isso corresponde à documentação do Kubernetes sobre coleta de lixo, que afirma que o coletor de lixo exclui objetos que pertenciam a um proprietário excluído (via ownerReferences) e também limpa jobs concluídos e pods terminados.

Por que os Valores Incorretos estão Errados

  • CertificateSigningRequests (CSRs) desatualizados ou expirados e deployments antigos: Embora CSRs possam ser limpos por um controlador separado, eles não fazem parte do mecanismo central de coleta de lixo. Deployments antigos não são automaticamente coletados como lixo; eles permanecem até serem explicitamente excluídos.
  • Nós excluídos por um cloud controller manager e logs obsoletos do kubelet: A exclusão de nós é tratada pelo cloud controller manager, não pelo coletor de lixo. Os logs do kubelet são gerenciados por rotação de logs, não pela coleta de lixo.
  • Contêineres e imagens de contêiner não utilizados, e logs obsoletos do kubelet: Contêineres e imagens não utilizados são limpos pela coleta de lixo de imagens do kubelet, que é um mecanismo separado. Logs não fazem parte da coleta de lixo.

Portanto, apenas o conjunto contendo pods terminados, jobs concluídos e objetos sem owner references descreve com precisão os recursos limpos pela coleta de lixo do Kubernetes.