Ao trabalhar com desenvolvimento em Kubernetes localmente, a maioria das pessoas começa com o Minikube — e é um ótimo ponto de partida. Mas, às vezes, você quer algo ainda mais leve, rápido e que consuma menos recursos do sistema.

É aí que entra o K3s.

Neste guia, vamos configurar um cluster K3s local dentro de uma máquina virtual (VM), passo a passo. Você obterá um ambiente Kubernetes limpo e minimalista, perfeito para desenvolvimento e testes.


Por que K3s?

O K3s é uma distribuição Kubernetes leve e certificada que simplifica a instalação e operação de clusters Kubernetes. Ele é:

  • ✅ Fácil de instalar (binário único)
  • ⚡ Rápido e leve
  • 🖥️ Perfeito para desenvolvimento, CI ou dispositivos de borda

Ao contrário do Minikube, o K3s também suporta configurações multi-node nativamente (embora, para desenvolvimento local, um único nó geralmente seja suficiente).

Pré-requisitos

Antes de começarmos, vamos garantir que tanto a sua máquina host quanto a sua VM atendam aos requisitos necessários.

💻 Requisitos da Máquina Host

Sua máquina host deve ter poder suficiente para executar a VM e suas ferramentas de desenvolvimento confortavelmente.

Recomendado:

  • Mínimo de 8 GB de RAM (16 GB ou mais é ideal)
  • 4 núcleos de CPU ou mais
  • 20 GB+ de espaço livre em disco
  • Software de virtualização (por exemplo, VirtualBox, VMware, Hyper-V)
  • Acesso à internet

💡 Se você também estiver executando Docker, VSCode e algumas abas do Chrome, considere especificações mais altas.

🐧 Requisitos da Máquina Virtual

A VM que hospedará o K3s deve atender a estes requisitos:

Mínimo (para testes):

  • 4 GB de RAM
  • 1 núcleo de CPU

Recomendado (para uma experiência de desenvolvimento mais suave):

  • 8 GB de RAM
  • 2 núcleos de CPU

Além disso, instale um sistema operacional Linux minimalista, como:

  • Ubuntu Server (22.04 LTS é uma ótima escolha)
  • Fedora Server
  • RHEL/CentOS

Passo a Passo: Configurando o K3s Localmente

Vamos colocar seu cluster K3s local em funcionamento!

1. Criar e Iniciar uma Máquina Virtual

Usando seu hipervisor preferido (VirtualBox, VMware, etc.):

  • Crie uma VM com pelo menos 4 GB de RAM, 2 núcleos de CPU
  • Instale uma distribuição Linux minimalista (por exemplo, Ubuntu Server)

Acesse a VM via SSH a partir do seu host:

ssh seu-usuario@ip-da-sua-vm

2. Atualizar e Preparar a VM

Dentro da VM:

sudo apt update && sudo apt upgrade -y
sudo apt install curl ssh -y

Habilite o SSH:

sudo systemctl enable ssh
sudo systemctl start ssh

Verifique o IP da VM:

ip a

3. Instalar o K3s

Execute o comando abaixo na VM:

curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644

Verifique o status:

sudo systemctl status k3s

4. Copiar o kubeconfig para Sua Máquina Local

Na máquina host:

mkdir -p ~/.k3s
scp seu-usuario@ip-da-sua-vm:/etc/rancher/k3s/k3s.yaml ~/.k3s/config

5. Corrigir o Endereço IP no kubeconfig

Substitua 127.0.0.1 pelo IP real da VM:

sed -i 's/127.0.0.1//' ~/.k3s/config

6. Configurar o kubectl para Usar o K3s

export KUBECONFIG=~/.k3s/config

Troque isso permamente:

echo 'export KUBECONFIG=~/.k3s/config' >> ~/.bashrc
source ~/.bashrc

7. Testar Seu Cluster K3s

kubectl get nodes

Você deve ver algo como:

NAME   STATUS   ROLES                  AGE     VERSION
k3s    Ready    control-plane,master   7m56s   v1.27.4+k3s1

Dicas, Truques & Cuidados

Acessando Serviços a Partir do Seu Host

Exponha um deployment com NodePort:

kubectl expose deployment meu-app --type=NodePort --port=80

Confira a porta com:

kubectl get svc

Acesse via:

http://:

Resetando ou Reinstalando o K3s

sudo /usr/local/bin/k3s-uninstall.sh

Mantenha Suas Configurações Organizadas

Evite hardcoding de IPs e nunca comite o kubeconfig (k3s.yaml) no Git!

Conclusão

Com K3s e uma VM simples, você agora tem um cluster Kubernetes local rápido e eficiente que simula muito bem ambientes de produção.

Ideal para:

  • Desenvolvimento com microserviços
  • Testes com Helm e YAML
  • Automatizações em CI/CD
  • Estudos e prática com Kubernetes

💬 E aí? Ajudou? Ficou alguma dúvida? Algo mais que você queira saber? Deixe seu comentário.