Introdução

Concluído

Para facilitar o processo de gerenciamento, é comum usar uma plataforma de gerenciamento de contêineres como o Kubernetes. Suponha que você trabalhe em uma empresa de gerenciamento de drones. Sua empresa fornece uma solução de acompanhamento de drones para clientes em todo o mundo.

Diagrama da arquitetura de alto nível que descreve a solução de acompanhamento de drones.

A solução é criada e implantada como microsserviços e inclui vários aplicativos principais:

  • Front-end da Web: mostra mapas e informações sobre os drones rastreados.
  • Serviço de cache: armazena as informações mostradas no site que são solicitadas com maior frequência.
  • API RESTful: usada pelos drones rastreados para enviar dados sobre o status deles, como uma localização no GPS e os níveis de carga da bateria.
  • Fila: contém os dados não processados coletados pela API RESTful.
  • Serviço de processamento de dados: busca e processa os dados da fila.
  • Banco de dados NoSQL: armazena os dados de acompanhamento processados e as informações de usuário capturadas do site e do serviço de processamento de dados.

Os contêineres são uma excelente opção ao desenvolver software baseado em arquiteturas de microsserviço. Eles fazem uso eficiente do hardware, fornecem recursos de segurança para executar várias instâncias simultaneamente no mesmo host sem afetar umas às outras e permitem que um serviço seja expandido com a implantação de mais instâncias.

Diagrama que mostra três benefícios do transporte em contêineres: eficiência, isolamento e escalabilidade.

O runtime de gerenciamento de contêiner padrão se concentra no gerenciamento de contêineres individuais. Se você quiser escalar um sistema complexo com vários contêineres trabalhando juntos, esse cenário se tornará um grande desafio. Considere os seguintes aspectos:

  • Configuração e manutenção do balanceamento de carga
  • Conectividade de rede
  • Orquestração do processo de implantação

Você usa instâncias conteinerizadas para implantar rapidamente em novas regiões do cliente e escalar os recursos conforme necessário a fim de atender às demandas do cliente. Para simplificar o desenvolvimento, a implantação e o gerenciamento desses aplicativos em contêineres complexos, você usa uma plataforma de orquestração de contêineres, como o Kubernetes.

Objetivos de aprendizagem

Neste módulo, você aprenderá:

  • Como o Kubernetes dá suporte à orquestração de contêineres.
  • As diferenças entre os painéis de controle e os nós.
  • Avaliar se o Kubernetes é uma plataforma de orquestração adequada para determinada carga de trabalho.

Pré-requisitos

  • Conceitos básicos das arquiteturas de microsserviço
  • Noções básicas sobre como os contêineres do Docker funcionam
  • Conhecimento básico sobre como instalar o software usando uma interface de linha de comando (CLI)