Quiz Módulo 1 - Introdução ao Kubernetes
Instruções
Este quiz contém 30 questões de múltipla escolha para validar sua compreensão do Módulo 1.
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 é Kubernetes?
Ver explicação
Resposta correta: Uma plataforma de orquestração de containers que automatiza o deploy, o escalonamento e a gestão de aplicações conteinerizadas
Explicação: Kubernetes (K8s) é uma plataforma open-source que orquestra containers. Ele não substitui o sistema operacional, mas gerencia o deploy e a execução dos containers em múltiplas máquinas.
Questão 2
Por que Kubernetes é abreviado como "K8s"?
Ver explicação
Resposta correta: Porque há 8 letras entre o "K" e o "s" em "Kubernetes"
Explicação: Kubernetes = K + 8 letras (ubernete) + s = K8s. É uma abreviação comum em TI.
Questão 3
Qual é a principal vantagem do Kubernetes em relação à gestão manual de containers?
Ver explicação
Resposta correta: Ele automatiza a orquestração, o escalonamento, a auto-recuperação e o ciclo de vida das aplicações
Explicação: O Kubernetes automatiza várias tarefas que seriam trabalhosas manualmente: deploy, reinício em caso de falha, escalonamento conforme a carga, balanceamento de carga, etc.
Questão 4
Quais são os dois principais tipos de máquinas em um cluster Kubernetes?
Ver explicação
Resposta correta: Control Plane (Master) e Worker Nodes
Explicação: O Control Plane (anteriormente chamado de Master) gerencia o cluster e toma as decisões. Os Worker Nodes executam as aplicações (Pods).
Questão 5
Qual componente do Control Plane armazena o estado do cluster?
Ver explicação
Resposta correta: etcd
Explicação: etcd é o banco de dados distribuído que armazena toda a configuração e o estado do cluster Kubernetes. É a fonte única da verdade.
Questão 6
O que é um Pod no Kubernetes?
Ver explicação
Resposta correta: A menor unidade implantável no Kubernetes, 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, volumes e namespace de rede. É a unidade atômica de deploy.
Questão 7
Qual é o principal papel de um Deployment no Kubernetes?
Ver explicação
Resposta correta: Gerenciar o ciclo de vida dos Pods, incluindo réplicas, atualizações e rollbacks
Explicação: Um Deployment descreve o estado desejado da sua aplicação (número de réplicas, imagem Docker, etc.) e gerencia automaticamente os Pods para manter esse estado. Também permite rolling updates e rollbacks.
Questão 8
Que tipo de Service expõe uma aplicação em uma porta de cada node do cluster?
Ver explicação
Resposta correta: NodePort
Explicação: Um Service do tipo NodePort expõe a aplicação em uma porta específica (30000-32767) de cada node do cluster, permitindo acesso externo ao cluster.
Questão 9
Qual empresa criou o Kubernetes e em qual sistema interno ele foi baseado?
Ver explicação
Resposta correta: Google, baseado no Borg (sistema interno do Google)
Explicação: O Kubernetes foi criado pelo Google em 2014, inspirado no seu sistema interno Borg, que gerenciava milhões de containers desde 2003. O Kubernetes é a versão open-source dessa experiência.
Questão 10
Qual é a principal vantagem da portabilidade multi-cloud com Kubernetes?
Ver explicação
Resposta correta: Evitar vendor lock-in e poder migrar facilmente entre diferentes provedores de cloud
Explicação: O Kubernetes funciona da mesma forma na AWS, Azure, GCP, on-premise, etc. Isso permite que você não fique preso a um único provedor e migre suas aplicações facilmente.
Questão 11
Qual componente do Control Plane é o ponto de entrada para todas as interações com o cluster?
Ver explicação
Resposta correta: API Server
Explicação: O API Server é o único componente com o qual usuários e outros componentes do cluster interagem diretamente. Ele expõe a API REST do Kubernetes e valida todas as requisições.
Questão 12
O que é um Namespace no Kubernetes?
Ver explicação
Resposta correta: Um mecanismo de isolamento lógico que permite dividir um cluster em vários ambientes virtuais
Explicação: Namespaces permitem organizar os recursos em um cluster e criar ambientes separados (desenvolvimento, staging, produção) sem precisar de clusters separados.
Questão 13
Qual é o papel do Scheduler no Kubernetes?
Ver explicação
Resposta correta: Atribuir os Pods aos Worker Nodes de acordo com os recursos disponíveis
Explicação: O Scheduler monitora os novos Pods criados e os atribui aos nodes apropriados com base em restrições de recursos, afinidades e anti-afinidades definidas.
Questão 14
Qual é o nome da ferramenta oficial de linha de comando para interagir com o Kubernetes?
Ver explicação
Resposta correta: kubectl
Explicação: kubectl (pronuncia-se "kube-control") é a ferramenta oficial de linha de comando para interagir com um cluster Kubernetes. Permite criar, modificar, deletar e inspecionar recursos.
Questão 15
O que é auto-recuperação (self-healing) no Kubernetes?
Ver explicação
Resposta correta: A capacidade do Kubernetes de reiniciar automaticamente containers que travam ou substituir Pods com falha
Explicação: O Kubernetes monitora constantemente o estado dos Pods. Se um container travar ou um Pod não responder aos health checks, o Kubernetes o reinicia automaticamente ou cria um novo Pod para substituí-lo.
Questão 16
Qual tipo de Service é usado por padrão no Kubernetes e só é acessível de dentro do cluster?
Ver explicação
Resposta correta: ClusterIP
Explicação: ClusterIP é o tipo de Service padrão. Ele expõe o Service em um IP interno do cluster, acessível apenas de dentro do cluster. É ideal para comunicação entre serviços.
Questão 17
Qual componente roda em cada Worker Node e gerencia os Pods nesse node?
Ver explicação
Resposta correta: kubelet
Explicação: O kubelet é o agente que roda em cada Worker Node. Ele se comunica com o API Server e gerencia os Pods em seu node: inicialização, parada, health checks, etc.
Questão 18
O que é um Rolling Update no Kubernetes?
Ver explicação
Resposta correta: Uma estratégia de atualização que substitui gradualmente os Pods antigos por novos, sem interrupção do serviço
Explicação: Rolling Updates permitem atualizar uma aplicação sem downtime. O Kubernetes cria gradualmente novos Pods com a nova versão e remove os antigos, mantendo sempre um número mínimo de Pods disponíveis.
Questão 19
Qual organização atualmente gerencia o Kubernetes?
Ver explicação
Resposta correta: CNCF (Cloud Native Computing Foundation)
Explicação: O Google doou o Kubernetes para a CNCF em 2015 para garantir uma governança neutra e adoção por toda a indústria. A CNCF faz parte da Linux Foundation.
Questão 20
Qual é a principal vantagem do auto-scaling no Kubernetes?
Ver explicação
Resposta correta: Adaptação automática do número de Pods conforme a carga, otimizando recursos e garantindo performance
Explicação: O auto-scaling (Horizontal Pod Autoscaler) monitora métricas (CPU, memória, etc.) e ajusta automaticamente o número de réplicas para atender à demanda, evitando sobrecarga ou desperdício de recursos.
Questão 21
Qual é o papel do kube-proxy em um Worker Node?
Ver explicação
Resposta correta: Manter as regras de rede e gerenciar a comunicação de rede para os Services
Explicação: O kube-proxy roda em cada node e mantém as regras de rede que permitem a comunicação com os Services. Ele faz o load balancing e o roteamento do tráfego para os Pods backend.
Questão 22
Qual ferramenta permite criar um cluster Kubernetes local em uma máquina virtual?
Ver explicação
Resposta correta: minikube
Explicação: minikube cria um cluster Kubernetes de um único node em uma máquina virtual, ideal para desenvolvimento e aprendizado local. kind é uma alternativa que usa Docker ao invés de uma VM.
Questão 23
Qual comando kubectl permite criar recursos a partir de um arquivo YAML?
Ver explicação
Resposta correta: kubectl apply -f
Explicação: kubectl apply -f arquivo.yaml cria ou atualiza recursos a partir de um arquivo YAML. É o método recomendado pois é declarativo e idempotente.
Questão 24
Qual é a principal vantagem do Kubernetes para microservices?
Ver explicação
Resposta correta: Gestão automatizada do deploy, escalonamento e comunicação entre os diferentes serviços
Explicação: O Kubernetes é excelente na gestão de arquiteturas de microservices ao automatizar o deploy de cada serviço, seu escalonamento independente, descoberta de serviços e comunicação entre eles.
Questão 25
Qual componente do Control Plane toma decisões sobre o estado desejado do cluster?
Ver explicação
Resposta correta: Controller Manager
Explicação: O Controller Manager executa os controladores que monitoram o estado do cluster e tomam ações para alinhar o estado real ao estado desejado (por exemplo, manter o número de réplicas de um Deployment).
Questão 26
Qual é a vantagem da configuração declarativa no Kubernetes?
Ver explicação
Resposta correta: Você descreve o estado desejado e o Kubernetes garante que ele seja mantido, mesmo em caso de mudança ou falha
Explicação: A configuração declarativa (via YAML) permite descrever o que você quer, não como conseguir. O Kubernetes garante que o estado real sempre corresponda ao estado desejado, mesmo após falhas ou mudanças.
Questão 27
Qual é o nome do sistema interno do Google que inspirou o Kubernetes?
Ver explicação
Resposta correta: Borg
Explicação: Borg era o sistema interno do Google que gerenciava milhões de containers desde 2003. O Kubernetes foi criado em 2014 como uma versão open-source inspirada na experiência do Google com o Borg.
Questão 28
Qual é o comando kubectl para ver detalhes de um Pod?
Ver explicação
Resposta correta: kubectl describe pod
Explicação: kubectl describe pod <nome> exibe informações detalhadas sobre um Pod, incluindo seu estado, eventos, containers e recursos. É muito útil para depuração.
Questão 29
Qual é a principal vantagem dos Rolling Updates em relação às atualizações tradicionais?
Ver explicação
Resposta correta: Permitem atualizar uma aplicação sem interrupção do serviço (zero downtime)
Explicação: Os Rolling Updates sempre mantêm um número mínimo de Pods operacionais durante a atualização. Novos Pods são criados antes que os antigos sejam removidos, garantindo a continuidade do serviço.
Questão 30
Qual é a principal vantagem do Kubernetes para equipes DevOps?
Ver explicação
Resposta correta: Automação de várias tarefas operacionais, permitindo que as equipes foquem no desenvolvimento em vez da gestão da infraestrutura
Explicação: O Kubernetes automatiza o deploy, o escalonamento, a recuperação de falhas, o balanceamento de carga, etc. Isso libera as equipes DevOps de tarefas repetitivas e permite que se concentrem em agregar valor ao negócio.
Resultado do Quiz
Parabéns por completar o quiz do Módulo 1!
Pontuação:
- 25-30 respostas corretas: Excelente! Você domina perfeitamente os conceitos fundamentais.
- 20-24 respostas corretas: Muito bom! Você tem uma boa compreensão, revise as questões erradas.
- 15-19 respostas corretas: Bom! Revise os capítulos onde teve dificuldades.
- Menos de 15: Recomendado revisar o módulo antes de continuar.
Próximos Passos
Agora que você validou seus conhecimentos:
Módulo 2: Arquitetura detalhada e componentes do Kubernetes
Labs práticos: Coloque em prática o que você aprendeu
Quiz criado em: Dezembro 2024