Quiz Módulo 3 - Pods e Deployments
Instruções
Este quiz contém 30 questões de múltipla escolha para validar seu entendimento do Módulo 3.
Dica: Responda cada questão antes de revelar a resposta. As respostas estão ocultas logo após cada pergunta.
Questão 1
O que é um Pod no Kubernetes?
Ver explicação
Resposta correta: A menor unidade implantável, contendo um ou mais containers que compartilham recursos
Explicação: Um Pod é um grupo de um ou mais containers que compartilham o mesmo endereço IP, o mesmo namespace de rede e os mesmos volumes. É a unidade atômica de deploy no Kubernetes.
Questão 2
Qual é o papel principal de um ReplicaSet?
Ver explicação
Resposta correta: Manter um número estável de réplicas de Pods idênticos
Explicação: Um ReplicaSet garante que um número especificado de Pods idênticos esteja sempre disponível. Se um Pod falhar, o ReplicaSet cria automaticamente um novo Pod.
Questão 3
Qual é a principal vantagem de um Deployment em relação a um ReplicaSet?
Ver explicação
Resposta correta: Ele oferece controle de versão, rolling updates e rollbacks
Explicação: Deployments gerenciam ReplicaSets e oferecem funcionalidades avançadas como rolling updates (atualizações sem interrupção), rollbacks e controle de versão.
Questão 4
Qual é o ciclo de vida de um Pod no Kubernetes?
Ver explicação
Resposta correta: Pending → Running → Succeeded/Failed/Unknown
Explicação: Um Pod passa por Pending (aguardando agendamento), depois Running (em execução), e pode terminar em Succeeded (sucesso), Failed (falha) ou Unknown (estado desconhecido).
Questão 5
O que é um Label no Kubernetes?
Ver explicação
Resposta correta: Um par chave-valor anexado a objetos para organizar e selecionar recursos
Explicação: Labels são metadados no formato de pares chave-valor que permitem organizar, agrupar e selecionar recursos do Kubernetes de forma flexível.
Questão 6
Qual é o papel de um Selector no Kubernetes?
Ver explicação
Resposta correta: Identificar um conjunto de recursos com base em seus Labels
Explicação: Selectors permitem selecionar recursos (Pods, Services, etc.) com base em seus Labels, permitindo que ReplicaSets, Deployments e Services direcionem os Pods corretos.
Questão 7
Qual é a principal diferença entre um ReplicaSet e um ReplicationController?
Ver explicação
Resposta correta: ReplicaSet suporta seletores baseados em expressões (matchExpressions), ReplicationController não suporta
Explicação: ReplicaSet é a versão moderna e aprimorada do ReplicationController, com suporte mais flexível a seletores via matchExpressions.
Questão 8
Qual estratégia de deploy é usada por padrão em um Deployment?
Ver explicação
Resposta correta: RollingUpdate
Explicação: RollingUpdate é a estratégia padrão que atualiza os Pods gradualmente, substituindo os antigos pelos novos um a um ou em pequenos grupos, garantindo a disponibilidade do serviço.
Questão 9
O que é um Liveness Probe?
Ver explicação
Resposta correta: Uma sonda que verifica se o container ainda está vivo e funcionando corretamente
Explicação: O Liveness Probe detecta se um container está travado ou morto. Se a sonda falhar, o Kubernetes reinicia o container.
Questão 10
O que é um Readiness Probe?
Ver explicação
Resposta correta: Uma sonda que verifica se o Pod está pronto para receber tráfego
Explicação: O Readiness Probe determina se um Pod está pronto para receber requisições. Se a sonda falhar, o Pod é removido dos endpoints do Service até que fique pronto novamente.
Questão 11
O que é um Startup Probe?
Ver explicação
Resposta correta: Uma sonda que verifica se a aplicação dentro do container foi iniciada
Explicação: O Startup Probe permite que containers com tempos de inicialização longos sinalizem que foram iniciados, antes que as outras sondas comecem.
Questão 12
Que tipo de probe pode ser usada para health checks?
Ver explicação
Resposta correta: HTTP, TCP ou Exec
Explicação: O Kubernetes suporta três tipos de probes: HTTP (verifica uma resposta HTTP), TCP (verifica se uma porta está aberta) e Exec (executa um comando dentro do container).
Questão 13
Qual comando kubectl permite ver o histórico dos deployments?
Ver explicação
Resposta correta: kubectl rollout history deployment/[name]
Explicação: Este comando exibe o histórico de revisões de um Deployment, permitindo ver as diferentes versões implantadas e realizar rollbacks se necessário.
Questão 14
Como fazer rollback de um Deployment para uma versão anterior?
Ver explicação
Resposta correta: kubectl rollout undo deployment/[name]
Explicação: Este comando desfaz o último deploy e restaura a versão anterior, permitindo um rollback rápido em caso de problemas.
Questão 15
O que é um Init Container?
Ver explicação
Resposta correta: Um container que executa antes dos containers principais e deve terminar com sucesso
Explicação: Init Containers executam sequencialmente antes dos containers principais e são úteis para configuração, espera de dependências ou preparação do ambiente.
Questão 16
Qual é a diferença entre maxSurge e maxUnavailable em uma estratégia RollingUpdate?
Ver explicação
Resposta correta: maxSurge define o número máximo de Pods adicionais, maxUnavailable define o número máximo de Pods indisponíveis
Explicação: maxSurge permite ter mais Pods do que o número desejado durante a atualização, enquanto maxUnavailable limita o número de Pods que podem ficar indisponíveis simultaneamente.
Questão 17
O que é um Pod Disruption Budget (PDB)?
Ver explicação
Resposta correta: Uma política que limita o número de Pods de uma aplicação que podem ser interrompidos simultaneamente
Explicação: Um PDB garante que um certo número de Pods de uma aplicação permaneçam disponíveis durante atualizações ou manutenções, assegurando alta disponibilidade.
Questão 18
Qual é a vantagem de usar um Deployment ao invés de um Pod diretamente?
Ver explicação
Resposta correta: Deployments oferecem controle de versão, rolling updates, rollbacks e replicação automática
Explicação: Deployments gerenciam automaticamente ReplicaSets, oferecem funcionalidades avançadas de deploy e rollback, o que não é possível com Pods diretos.
Questão 19
Qual é o comando para atualizar a imagem de um Deployment?
Ver explicação
Resposta correta: kubectl set image deployment/[name] [container]=[new-image]
Explicação: Este comando atualiza a imagem de um container em um Deployment, disparando automaticamente um rolling update.
Questão 20
O que um ReplicaSet faz se um Pod for removido manualmente?
Ver explicação
Resposta correta: Ele cria automaticamente um novo Pod para manter o número de réplicas desejado
Explicação: Um ReplicaSet monitora constantemente o número de Pods e cria novos Pods automaticamente se o número atual for menor que o desejado.
Questão 21
Qual é a diferença entre um Pod e um container?
Ver explicação
Resposta correta: Um Pod pode conter um ou mais containers que compartilham recursos de rede e armazenamento
Explicação: Um Pod é a unidade atômica de deploy no Kubernetes e pode conter vários containers que compartilham o mesmo IP, namespace de rede e volumes.
Questão 22
O que é um Static Pod?
Ver explicação
Resposta correta: Um Pod gerenciado diretamente pelo kubelet em um node específico, sem passar pelo API Server
Explicação: Static Pods são definidos em um arquivo no node e são gerenciados diretamente pelo kubelet, frequentemente usados para componentes do Control Plane.
Questão 23
Qual é a estratégia de deploy Recreate?
Ver explicação
Resposta correta: Todos os Pods antigos são terminados antes que os novos sejam criados
Explicação: A estratégia Recreate para todos os Pods existentes antes de criar os novos, causando uma interrupção no serviço, mas garantindo que apenas uma versão esteja em execução por vez.
Questão 24
O que é um DaemonSet?
Ver explicação
Resposta correta: Um workload que garante que um Pod execute em todos (ou alguns) nodes do cluster
Explicação: Um DaemonSet é usado para agentes de sistema como agentes de logging ou monitoramento que precisam rodar em cada node.
Questão 25
Qual é a frequência padrão de um Liveness Probe?
Ver explicação
Resposta correta: A cada 10 segundos
Explicação: Por padrão, as probes são executadas a cada 10 segundos, mas esse valor pode ser configurado via o parâmetro periodSeconds.
Questão 26
O que é um Pod Preset (obsoleto)?
Ver explicação
Resposta correta: Um recurso que injeta automaticamente informações (env vars, volumes) nos Pods que correspondem a certos seletores
Explicação: Pod Preset era uma funcionalidade (agora obsoleta) que permitia injetar automaticamente ConfigMaps, Secrets e volumes nos Pods. Alternativas modernas incluem Admission Controllers.
Questão 27
Qual comando permite ver o status de um rollout?
Ver explicação
Resposta correta: kubectl rollout status deployment/[name]
Explicação: Este comando monitora o status de um rollout em andamento e aguarda sua conclusão, útil para saber quando uma atualização terminou.
Questão 28
O que um ReplicaSet faz se o número de Pods ultrapassar o número desejado?
Ver explicação
Resposta correta: Ele remove os Pods em excesso para voltar ao número desejado
Explicação: Um ReplicaSet sempre mantém o número exato de réplicas desejado, removendo Pods em excesso se necessário.
Questão 29
Qual é a diferença entre um Deployment e um ReplicaSet?
Ver explicação
Resposta correta: Um Deployment gerencia ReplicaSets e oferece funcionalidades de deploy e rollback
Explicação: Um Deployment é uma abstração de nível mais alto que gerencia ReplicaSets e oferece funcionalidades avançadas como rolling updates e rollbacks.
Questão 30
O que um Pod pode compartilhar com outros containers no mesmo Pod?
Ver explicação
Resposta correta: O endereço IP, o namespace de rede e os volumes
Explicação: Os containers em um mesmo Pod compartilham o mesmo endereço IP, o mesmo namespace de rede (podem se comunicar via localhost) e os mesmos volumes montados.
Resultado do Quiz
Parabéns por ter completado o quiz do Módulo 3!
Pontuação:
- 25-30 respostas corretas: Excelente! Você domina Pods e Deployments.
- 20-24 respostas corretas: Muito bom! Reveja os conceitos onde teve dificuldades.
- 15-19 respostas corretas: Bom! Revise os capítulos sobre Pods e Deployments.
- Menos de 15: Recomendado revisar o módulo antes de continuar.
Próximos Passos
Agora que você validou seus conhecimentos:
Módulo 4: Services e Networking
Labs práticos: Coloque em prática Pods e Deployments
Quiz criado em: Dezembro 2024