DEV Community

Cover image for Rode um Cluster Kubernetes Local Leve com K3s
Ricardo Lüders
Ricardo Lüders

Posted on

Rode um Cluster Kubernetes Local Leve com K3s

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
Enter fullscreen mode Exit fullscreen mode

2. Atualizar e Preparar a VM

Dentro da VM:

sudo apt update && sudo apt upgrade -y
sudo apt install curl ssh -y
Enter fullscreen mode Exit fullscreen mode

Habilite o SSH:

sudo systemctl enable ssh
sudo systemctl start ssh
Enter fullscreen mode Exit fullscreen mode

Verifique o IP da VM:

ip a
Enter fullscreen mode Exit fullscreen mode

3. Instalar o K3s

Execute o comando abaixo na VM:

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

Verifique o status:

sudo systemctl status k3s
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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/<ip-da-sua-vm>/' ~/.k3s/config
Enter fullscreen mode Exit fullscreen mode

6. Configurar o kubectl para Usar o K3s

export KUBECONFIG=~/.k3s/config
Enter fullscreen mode Exit fullscreen mode

Troque isso permamente:

echo 'export KUBECONFIG=~/.k3s/config' >> ~/.bashrc
source ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

7. Testar Seu Cluster K3s

kubectl get nodes
Enter fullscreen mode Exit fullscreen mode

Você deve ver algo como:

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

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
Enter fullscreen mode Exit fullscreen mode

Confira a porta com:

kubectl get svc
Enter fullscreen mode Exit fullscreen mode

Acesse via:

http://<ip-da-vm>:<porta-node>
Enter fullscreen mode Exit fullscreen mode

Resetando ou Reinstalando o K3s

sudo /usr/local/bin/k3s-uninstall.sh
Enter fullscreen mode Exit fullscreen mode

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.

Top comments (0)