diff --git a/aula-09/README.md b/aula-09/README.md index 31af73d..898d400 100644 --- a/aula-09/README.md +++ b/aula-09/README.md @@ -132,35 +132,66 @@ O CloudFlare cuida do TLS automaticamente! Acesse: https://n8n.kube.quest ``` -## Upgrade +## Gerenciamento com Helm -Para atualizar o n8n após modificar o values file (ex: nova versão da imagem): +### Comandos Básicos ```bash -# Garantir que o repo está configurado -helm repo add community-charts https://community-charts.github.io/helm-charts 2>/dev/null || true -helm repo update +# Listar releases instalados +helm list -n n8n -# Fazer upgrade +# Ver histórico de revisões +helm history n8n -n n8n + +# Ver valores atuais +helm get values n8n -n n8n + +# Ver status do release +helm status n8n -n n8n +``` + +### Rollback + +Rollback não precisa de variáveis - o Helm guarda o estado de cada revisão: + +```bash +# Ver histórico primeiro +helm history n8n -n n8n + +# Rollback para revisão anterior +helm rollback n8n -n n8n + +# Rollback para revisão específica +helm rollback n8n 2 -n n8n +``` + +### Upgrade + +O upgrade precisa das variáveis do `.env` porque o Helm constrói os `--set` dinamicamente: + +```bash +# Carregar variáveis +source .env + +# Construir comando de upgrade helm upgrade n8n community-charts/n8n \ -n n8n \ -f custom-values.yaml \ - --atomic \ + --set ingress.hosts[0].host=${N8N_HOST} \ + --set ingress.hosts[0].paths[0].path=/ \ + --set ingress.hosts[0].paths[0].pathType=Prefix \ + --set webhook.url=https://${N8N_HOST} \ + --wait \ --timeout 10m ``` -| Flag | Descrição | -|------|-----------| -| `--atomic` | Rollback automático se falhar | -| `--timeout 10m` | Tempo máximo (n8n demora para iniciar) | +> **Dica:** Para upgrades em produção, re-execute `./setup.sh` - ele detecta a instalação existente e faz upgrade com todos os parâmetros corretos (TLS, secure cookies, etc.). **Acompanhar o upgrade:** ```bash kubectl get pods -n n8n -w ``` -**Importante:** Não use `--reuse-values` sozinho - sempre passe o arquivo de values para garantir que o cluster reflita exatamente o que está no arquivo. - ## Componentes Instalados **Da aula-08 (infraestrutura):**