Docker - Arquitetura Kubernetes

Kubernetes é uma estrutura de orquestração para contêineres do Docker que ajuda a expor contêineres como serviços para o mundo externo. Por exemplo, você pode ter dois serviços - um serviço conterianginx e mongoDB, e outro serviço conteria nginx e redis. Cada serviço pode ter um IP ou ponto de serviço que pode ser conectado por outros aplicativos. O Kubernetes é então usado para gerenciar esses serviços.

O diagrama a seguir mostra em um formato simplista como o Kubernetes funciona do ponto de vista da arquitetura.

o minioné o nó no qual todos os serviços são executados. Você pode ter muitos lacaios em execução em um determinado momento. Cada lacaio hospedará um ou mais POD. CadaPODé como hospedar um serviço. Cada POD contém os contêineres do Docker. Cada POD pode hospedar um conjunto diferente de contêineres Docker. O proxy é então usado para controlar a exposição desses serviços ao mundo externo.

O Kubernetes tem vários componentes em sua arquitetura. A função de cada componente é explicada abaixo & mius;

  • etcd - Este componente é altamente disponível key-value loja que é usada para armazenar shared configuration e service discovery. Aqui, os vários aplicativos serão capazes de se conectar aos serviços através dodiscovery service.

  • Flannel - Esta é uma rede de back-end necessária para os contêineres.

  • kube-apiserver - Esta é uma API que pode ser usada para orquestrar os contêineres do Docker.

  • kube-controller-manager - Isso é usado para controlar o Kubernetes services.

  • kube-scheduler - Isso é usado para agendar os contêineres nos hosts.

  • Kubelet - É usado para controlar o lançamento de contêineres via manifest files.

  • kube-proxy - Isso é usado para fornecer serviços de proxy de rede para o mundo externo.