Tarefas Comuns¶
Referência rápida para operações frequentes do dia a dia.
Deploy de Nova Versão¶
HML (Automático)¶
O merge de PR na branch development atualiza automaticamente todos os tenants HML:
- PR mergeado → build + tag (
8.0.0-DEV) - Pipeline atualiza
image.tagem todos osvalues.yamldo HML - ArgoCD sincroniza automaticamente
NOX (Manual)¶
- Editar
values.yamldos tenants desejados noads-tenants-config:yaml image: tag: v8.0.0@sha256:abc123... - Commit e push para
main
Obter a tag + digest
A tag com digest está disponível no comentário do PR de merge no repositório da aplicação.
Rollback de Versão¶
Via ads-tenants-config¶
- Editar
values.yamlrevertendo para a tag anterior:yaml image: tag: v7.9.0@sha256:def456... - Commit e push → ArgoCD aplica automaticamente
Via ArgoCD UI¶
- Acesse o ArgoCD → selecione a Application
- Clique em History and Rollback
- Selecione a revisão desejada → Rollback
Rollback via ArgoCD é temporário
O auto-sync vai reverter para o estado do Git eventualmente. Para rollback permanente, altere o values.yaml.
Verificar Status de Aplicações¶
```bash
Todas as applications em erro¶
kubectl get applications -n argocd | grep -v Healthy
Status de um tenant específico¶
kubectl get applications -n argocd | grep {tenant}
Pods com problemas¶
kubectl get pods -n {namespace} --field-selector=status.phase!=Running,status.phase!=Succeeded
Logs de um pod¶
kubectl logs -n {namespace} deploy/{app-name} --tail=100
Eventos recentes¶
kubectl get events -n {namespace} --sort-by='.lastTimestamp' | tail -20 ```
Escalar Aplicação¶
Temporariamente (revertido pelo ArgoCD)¶
bash
kubectl scale deploy/{app-name} -n {namespace} --replicas=3
Permanentemente (via Helm values)¶
Editar values.yaml no ads-tenants-config:
yaml
replicaCount: 3
Ou configurar HPA no chart:
yaml
hpa:
enabled: true
minReplicas: 2
maxReplicas: 5
targetCPUUtilizationPercentage: 70
Reiniciar Aplicação¶
```bash
Restart via rollout¶
kubectl rollout restart deploy/{app-name} -n {namespace}
Verificar status¶
kubectl rollout status deploy/{app-name} -n {namespace} ```
O Reloader reinicia automaticamente quando ConfigMaps ou Secrets mudam.
Atualizar Secret no Vault¶
-
Acesse Vault UI ou CLI:
bash vault kv put secret/{ENV}/tenants/{namespace}/{app}/config \ DB_PASSWORD=nova_senha \ API_KEY=nova_chave -
O ESO detecta a mudança e atualiza o K8s Secret
- O Reloader reinicia o deployment automaticamente
Adicionar Novo Tenant¶
Use os workflows de dispatch manual:
- Banco compartilhado: Execute "01 Tenant → Criar Nova APP Config"
- Banco dedicado: Execute "00 Tenant → Criar Novo Dedicado" primeiro, depois o 01
Referência completa: Gerenciamento de Tenants
Verificar Drift de Infraestrutura¶
O drift detection roda diariamente às 4:00 UTC automaticamente.
Para verificar manualmente:
```bash
Via Makefile¶
make plan {env}
Stacks específicas¶
make plan {env}:{tag} ```
Se o plan mostrar alterações inesperadas, investigar antes de aplicar.
Atualizar Componente de Infraestrutura¶
-
Editar versão no config HCL:
config/{env}/oke-extras/config.hcl # cert-manager, ingress, etc. config/{env}/oke/cluster.hcl # Kubernetes config/tools/argocd/config.hcl # ArgoCD config/tools/vault/config.hcl # Vault -
Criar PR → preview automático
- Merge → deploy automático
Consultar Logs e Métricas¶
| Ferramenta | URL | Uso |
|---|---|---|
| SigNoz | (cluster TOOLS) | Traces, métricas, logs |
| Sentry | (cluster TOOLS) | Erros e exceptions |
| SonarQube | (cluster TOOLS) | Qualidade de código |
| ArgoCD | (cluster TOOLS) | Status de deploys |
| Kiali | (clusters HML/NOX) | Service mesh (Istio) |
Para troubleshooting do mesh, publicação DNS e autenticação do Kiali, use a seção Networking & Service Mesh.
Operações com Makefile (Infra)¶
```bash
Plan de todas as stacks do ambiente¶
make plan hml
Plan de stacks específicas¶
make plan tools:argo
Apply (com confirmação)¶
make apply hml
Verificar outputs¶
make output tools:vault
Listar recursos no state¶
make state list hml:oke ```