Kubernetes Fundamentals Question #019e3a4f
Qual das seguintes afirmações é verdadeira sobre namespaces no Kubernetes?
Você pode criar um namespace dentro de outro namespace no Kubernetes.
Você pode criar dois recursos do mesmo tipo e nome em um namespace.
O namespace default existe quando um novo cluster é criado.
Todos os objetos no cluster são namespaced por padrão.
Official Explanation / Community Explanations
Resposta Correta: O namespace default existe quando um novo cluster é criado.
No Kubernetes, quando um novo cluster é inicializado, três namespaces são criados automaticamente: default, kube-system e kube-public. O namespace default é aquele usado para recursos que não especificam um namespace. Este é um aspecto fundamental do gerenciamento de namespaces no Kubernetes.
Como Funciona
Namespaces no Kubernetes fornecem um mecanismo para isolar grupos de recursos dentro de um único cluster. Eles são partições lógicas que ajudam a organizar e gerenciar objetos do cluster. O namespace default é criado pelo processo de inicialização do cluster (por exemplo, kubeadm init) e é o destino para qualquer comando de criação de recurso que não inclua uma flag --namespace ou um campo namespace no manifesto YAML.
Por que a Resposta Correta está Certa
A afirmação "O namespace default existe quando um novo cluster é criado" está correta porque o servidor de API do Kubernetes cria automaticamente o namespace default durante a inicialização do cluster. Isso é verificado executando kubectl get namespaces em um cluster novo, que lista default junto com outros namespaces do sistema.
Por que as Respostas Incorretas estão Erradas
- "Você pode criar um namespace dentro de outro namespace no Kubernetes." Isso é falso. Namespaces não podem ser aninhados. Os namespaces do Kubernetes são planos; você não pode criar um namespace dentro de outro namespace. Tentar fazer isso resulta em um erro.
- "Você pode criar dois recursos do mesmo tipo e nome em um namespace." Isso é falso. Dentro de um único namespace, os nomes dos recursos devem ser únicos por tipo. Por exemplo, você não pode ter dois Pods com o mesmo nome no mesmo namespace. Nomes duplicados causam falhas na criação.
- "Todos os objetos no cluster são namespaced por padrão." Isso é falso. Alguns objetos do Kubernetes têm escopo de cluster, ou seja, existem fora de qualquer namespace. Exemplos incluem Nodes, PersistentVolumes, ClusterRoles e os próprios Namespaces. Esses recursos não são namespaced e são visíveis em todo o cluster.