Distribuições Kubernetes Simples e Pequenas

Tradução e Resumo:

Distribuições Kubernetes Simples e Pequenas para o Edge

Neste artigo descrevo três distribuições Kubernetes compactas para operação em dispositivos de borda (edge) ou em pequenos escritórios. Clusters Kubernetes de produção utilizam vários servidores físicos, mas configurações de nó único também são viáveis, especialmente para desenvolvedores. Há um aumento no uso de dispositivos de borda com ambientes Kubernetes simples.

Essas distribuições permitem gerenciamento centralizado e simplificam o desenvolvimento e testes de aplicações em uma única plataforma: Kubernetes. Exemplos práticos incluem sistemas locais, escritórios isolados, etc.

Distribuições Kubernetes mais potentes como Rancher e OpenShift são difíceis de configurar em um único nó. Assim, fabricantes oferecem distribuições leves para operação em edge, como K3s (SUSE), MicroShift (Red Hat) e MicroK8s (Canonical).

K3s (SUSE):

  • K3s é a versão menor do Rancher Kubernetes Engine, operando com recursos mínimos (1 núcleo de CPU e 512MB de RAM).
  • Dispensa a base de dados etcd, usando SQLite, ideal para operação de nó único.
  • Suporta operação multinó.
  • Usa Traefik para roteamento IP e Flannel para redes virtuais de pods.
  • Armazenamento padrão é o Hostpath, mas pode usar outros provedores.
  • Fácil de instalar em várias distribuições Linux e CPUs ARM64 e x86_64.

MicroShift (Red Hat):

  • Versão leve do OpenShift, requer 1GB de RAM e um núcleo de CPU.
  • Utiliza etcd e outros componentes como OVN e TopoLVM.
  • Instalação depende de pacotes RPM e o gerenciador de pacotes DNF.
  • Integra com o image builder do OSTree, mas depende de produtos comerciais da Red Hat.
  • Ainda em fase de desenvolvimento e documentação desatualizada.

MicroK8s (Canonical):

  • Versão leve do Kubernetes da Canonical, requer 500MB de RAM.
  • Funções agrupadas como add-ons, sem incluir roteador de entrada ou driver de armazenamento por padrão.
  • Usa Dqlite em vez de etcd e containerd em vez de CRI-O.
  • Instalação via Snap, o que complica a depuração.
  • Não suporta SELinux, apenas AppArmor.
  • Ferramentas self-built da Canonical podem ser desvantajosas.

Conclusão:
Todas as três distribuições oferecem Kubernetes compacto para borda ou pequenos escritórios. MicroShift é bem integrado com OSTree mas ainda está ligado a produtos Red Hat. MicroK8s é fácil de começar mas carece de suporte SELinux e utiliza ferramentas internas da Canonical. K3s é flexível, fácil de configurar, suporta SELinux, e utiliza projetos padrão bem mantidos.

Leia também: