Pular para o conteúdo principal

Questão de Sistemas Operacionais — Contêineres (Docker, Kubernetes, etc.) — VUNESP 2023

Sistemas OperacionaisContêineres (Docker, Kubernetes, etc.)
Código
vu197350
Banca
VUNESP
Órgão
TJ RS
Ano
2023
Cargo
ATI ( )
O seguinte comando do Kubernetes   kubectl create ns conf   tem por objetivo
  1. Aaplicar no cluster as configurações contidas no arquivo conf, após sua atualização.
  2. Bcriar um job chamado conf com base na imagem ns.
  3. Ccriar um cronjob chamado conf com base na imagem ns.
  4. Dcriar um namespace chamado conf.
  5. Ecriar uma priority class chamada conf com a descrição ns.
Revelar gabarito e comentário

GabaritoD — criar um namespace chamado conf.

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: kubectl create ns

Gabarito: letra D. O comando kubectl create ns conf cria um namespace chamado conf no cluster Kubernetes — ns é a abreviação de namespace e conf é o nome do recurso a ser criado. A alternativa D é a única que descreve corretamente a função do comando.

O Kubernetes é um sistema de orquestração de contêineres que organiza os recursos do cluster em namespaces — espaços lógicos que isolam e agrupam objetos como pods, serviços e deployments. O comando kubectl create é usado para criar novos recursos, e o subcomando ns (abreviação de namespace) especifica o tipo de recurso. Portanto, kubectl create ns conf cria um namespace chamado conf, que servirá como um ambiente isolado para outros recursos do cluster.

A sintaxe geral do kubectl create é kubectl create <tipo-de-recurso> <nome>. No comando em questão, <tipo-de-recurso> é ns (namespace) e <nome> é conf. Não há relação com arquivos de configuração, jobs, cronjobs ou priority classes — esses são outros tipos de recursos do Kubernetes, criados com subcomandos diferentes.

É importante distinguir o kubectl create do kubectl apply. Enquanto o create é usado para criar um recurso novo (e falha se ele já existir), o apply é usado para aplicar configurações declarativas, geralmente a partir de um arquivo YAML, e pode atualizar recursos existentes. Essa distinção é essencial para entender por que a alternativa A está incorreta.

A pegadinha desta questão está em associar conf a um arquivo de configuração ou a uma imagem, quando na verdade é apenas o nome do namespace. A banca explora a ambiguidade do termo conf, que pode lembrar "configuração", mas no contexto do comando é simplesmente o nome do recurso.

1ns = namespace (tipo de recurso)
2conf = nome do recurso
3Efeito
Cria namespace "conf"
Falha se já existir
4Distinção
create: cria recurso novo
apply: aplica arquivo YAML (pode atualizar)
kubectl create ns conf
LEVELsoulevel.com.br
kubectl create ns conf: ns = namespace (tipo de recurso); conf = nome do recurso; Efeito (Cria namespace "conf", Falha se já existir); Distinção (create: cria recurso novo, apply: aplica arquivo YAML (pode atualizar))

Alternativa A — ❌ Incorreta

A alternativa A afirma que o comando aplica configurações de um arquivo conf. Isso descreve o comportamento do kubectl apply -f conf, que aplica as configurações de um arquivo YAML. O comando kubectl create ns conf não lê nenhum arquivo; ele cria diretamente um namespace com o nome conf. A confusão está entre create (criar recurso) e apply (aplicar configurações de arquivo).

Alternativa B — ❌ Incorreta

A alternativa B afirma que o comando cria um job chamado conf com base na imagem ns. Isso está errado por dois motivos: primeiro, ns não é uma imagem, é a abreviação de namespace; segundo, para criar um job, o subcomando seria kubectl create job, não ns. A sintaxe correta para criar um job seria algo como kubectl create job conf --image=ns, mas isso não é o que o comando faz.

Alternativa C — ❌ Incorreta

A alternativa C afirma que o comando cria um cronjob chamado conf com base na imagem ns. Assim como na alternativa B, ns não é uma imagem e o subcomando para criar cronjobs é kubectl create cronjob, não ns. O comando kubectl create ns conf não tem relação com cronjobs.

Alternativa D — ✅ Correta ⟵ GABARITO

A alternativa D afirma que o comando cria um namespace chamado conf. Isso está correto: kubectl create ns conf é a forma abreviada de kubectl create namespace conf, que cria um namespace com o nome conf no cluster. Namespaces são usados para organizar e isolar recursos dentro do cluster, e este comando é uma operação comum na administração do Kubernetes.

Alternativa E — ❌ Incorreta

A alternativa E afirma que o comando cria uma priority class chamada conf com a descrição ns. Priority classes são criadas com o subcomando kubectl create priorityclass, não com ns. Além disso, ns não é uma descrição, é a abreviação de namespace. O comando kubectl create ns conf não tem relação com priority classes.

Gabarito: letra D — o comando kubectl create ns conf cria um namespace chamado conf.

Link permanente: /questoes/vu197350