🌐 Detecting your location…
📢 Advertisement — Configure AdSense in Appearance → Customize → AdSense Settings

Kubernetes para iniciantes 2026: implante seu primeiro aplicativo em K8s

⏱️2 min read  ·  425 words
Kubernetes for Beginners 2026: Deploy Your First App on K8s

Kubernetes (K8s)é a plataforma padrão para execução de aplicativos em contêineres em escala em 2026. Todos os principais provedores de nuvem oferecem Kubernetes gerenciados: EKS (AWS), GKE (Google), AKS (Azure). Este guia para iniciantes explica os principais conceitos e faz com que seu primeiro aplicativo seja executado em um cluster.

Conceitos Básicos

  • Vagem:Unidade implantável mais pequena — um ou mais contentores que partilham rede/armazenamento
  • Implantação:Gerencia múltiplas réplicas de pod, lida com atualizações contínuas
  • Serviço:Endpoint de rede estável para um conjunto de pods
  • Espaço para nome:Cluster virtual para isolamento de recursos
  • ConfigMap/Segredo:Configuração e injeção de dados sensíveis

Instale kubectl e Minikube (teste local)

# Install kubectl
curl -LO https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x kubectl && sudo mv kubectl /usr/local/bin/

# Install Minikube (local cluster)
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

# Start cluster
minikube start --cpus 2 --memory 4096
kubectl cluster-info

Implante seu primeiro aplicativo

# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp
  namespace: default
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
      - name: myapp
        image: myapp:1.0
        ports:
        - containerPort: 8000
        resources:
          requests:
            cpu: 100m
            memory: 128Mi
          limits:
            cpu: 500m
            memory: 512Mi

# service.yaml
apiVersion: v1
kind: Service
metadata:
  name: myapp-service
spec:
  selector:
    app: myapp
  ports:
  - port: 80
    targetPort: 8000
  type: LoadBalancer

kubectl apply -f deployment.yaml
kubectl apply -f service.yaml

# Check status
kubectl get pods
kubectl get services
kubectl describe pod <pod-name>

Comandos essenciais do kubectl

# Get resources
kubectl get pods -n default
kubectl get deployments
kubectl get services

# View logs
kubectl logs <pod-name>
kubectl logs -f <pod-name>  # follow

# Exec into pod
kubectl exec -it <pod-name> -- /bin/bash

# Scale deployment
kubectl scale deployment myapp --replicas=5

# Rolling update (zero downtime)
kubectl set image deployment/myapp myapp=myapp:2.0

# Rollback
kubectl rollout undo deployment/myapp

ConfigMaps e segredos

# configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: myapp-config
data:
  DATABASE_HOST: postgres-service
  APP_ENV: production

---
# secret.yaml
apiVersion: v1
kind: Secret
metadata:
  name: myapp-secret
type: Opaque
stringData:
  DATABASE_PASSWORD: supersecret

Conclusão

Kubernetes é complexo, mas os conceitos básicos são simples. Domine pods, implantações e serviços e adicione Ingress para roteamento e HorizontalPodAutoscaler para escalonamento automático. Para produção, use um serviço gerenciado (EKS/GKE/AKS) em vez de auto-hospedar o plano de controle.

✍️ Leave a Comment

Your email address will not be published. Required fields are marked *

🌐 Read in:🇩🇪 Deutsch🇧🇷 Português🇸🇦 العربية🇮🇳 हिन्दी