O que são orquestradores?
O design dissociado de microsserviços combinado com a atomicidade de contêineres torna possível dimensionar aplicativos, responder ao aumento da demanda implantando mais instâncias de contêiner e reduzir se a demanda estiver diminuindo. Em soluções complexas, o processo de implantação, atualização, monitoramento e remoção de contêineres apresenta desafios.
Gestão de contentores
A gestão de contentores consiste no processo de organizar, adicionar, remover ou atualizar um número significativo de contentores.
O site da empresa de equipamentos externos da Contoso consiste em vários microsserviços responsáveis por tarefas como cache, processamento de dados e um carrinho de compras. Cada um desses serviços é alojado num contentor e pode ser implementado, atualizado e dimensionado de forma independente.
Se você aumentar o número de instâncias de contêiner de carrinho de compras e precisar implantar uma nova versão, terá que atualizar cada instância desse contêiner.
O gerenciamento de contêineres ajuda nessas tarefas.
Orquestração de contentores
Um orquestrador de contentores é um sistema que implementa e gere automaticamente aplicações em contentores. Por exemplo, o orquestrador também responde dinamicamente a alterações no ambiente para aumentar ou diminuir as instâncias implementadas da aplicação gerida. Ele também pode garantir que todas as instâncias de contêiner implantadas sejam atualizadas se uma nova versão de um serviço for lançada.
Kubernetes
O Kubernetes é uma plataforma open source extensível e portátil para gerir e orquestrar cargas de trabalho em contentores. O Kubernetes simplifica a gestão de contentores complexos e proporciona uma configuração declarativa para orquestrar contentores em ambientes de computação diferentes. Essa plataforma de orquestração oferece a mesma facilidade de uso e flexibilidade que você já pode conhecer das ofertas de plataforma como serviço (PaaS) ou infraestrutura como serviço (IaaS).
Benefícios
As vantagens da utilização do Kubernetes baseiam-se na abstração de tarefas.
Estas tarefas incluem:
- Autorrecuperação de recipientes; por exemplo, reiniciar contêineres que falham ou substituir contêineres.
- Dimensionamento da contagem de contentores de forma dinâmica com base na procura.
- Automatização de atualizações contínuas e reversões de contêineres.
- Gerenciamento de armazenamento.
- Gestão do tráfego de rede.
- Armazenamento e gerenciamento de informações confidenciais, como nomes de usuário e senhas.
Como o Kubernetes é uma ferramenta para orquestrar cargas de trabalho em contêineres e você pode implantar microsserviços .NET em contêineres, você pode usar o Kubernetes para orquestrar seus microsserviços .NET. É isso que o resto deste módulo lhe vai ensinar.