Modelo de camadas — visão geral
Resumo do modelo de camadas. Detalhe completo: Arquitetura.
Pra entender como camadas se relacionam com as outras 4 dimensões da documentação (transversais, frentes estratégicas, operações, roadmap), ver Apresentação.
As 10 camadas verticais
10 │ Workloads — apps, GPU/HPC, datalake 9 │ Self-service / IDP (deferido) 8 │ Multi-cluster federation 7 │ GitOps & app lifecycle 6 │ Service mesh + observabilidade 5 │ Kubernetes networking & security (CNI) 4 │ Kubernetes runtime (K3s) 3 │ Ingress / exposição (Traefik + DNS + certs) 2 │ Edge networking (VyOS + UnespNet + WireGuard) 1 │ Backup e recuperação (PBS) 0 │ Storage distribuído (LINSTOR + DRBD)─── │ Virtualização (Proxmox + Pulumi/Ansible)Por que bottom-up
Cada camada só pode operar sobre a anterior estável. Essa ordem reflete dependência operacional real:
- Sem Proxmox funcionando, não tem onde rodar nada
- Sem storage confiável, dados se perdem no primeiro reboot
- Sem backup, perda lógica é irrecuperável
- Sem rede entre sites, integração SP-Franca não existe
- Sem ingress, serviços não são acessíveis externamente
- Sem K8s, não roda apps cloud-native
- Sem CNI, pods não falam entre si
- Sem service mesh, observabilidade L7 não existe
- Sem GitOps, deploys são manuais e frágeis
- Sem multi-cluster, integração SP-Franca é fragmentada
- Sem workloads, nada é entregado a usuário final
Navegar pelas camadas
| Camada | Componentes principais | Doc |
|---|---|---|
| 0 — Virtualização | Proxmox + Pulumi + Ansible | /camadas/0-virtualizacao/ |
| 1 — Storage | LINSTOR + DRBD | /camadas/1-storage/ |
| 2 — Backup | PBS | /camadas/2-backup/ |
| 3 — Edge networking | VyOS + UnespNet + WireGuard | /camadas/3-rede/ |
| 4 — Ingress | Traefik + cert-manager + Cloudflare DNS | /camadas/4-ingress/ |
| 5 — K8s runtime | K3s | /camadas/5-kubernetes/ |
| 6 — K8s networking | Cilium + Hubble | /camadas/6-k8s-networking/ |
| 7 — GitOps | ArgoCD | /camadas/7-gitops/ |
| 8 — Multi-cluster | ClusterMesh + ApplicationSet | /camadas/8-multi-cluster/ |
| 9 — Workloads | Tutor, Invenio, OJS, vLLM, MinIO, etc | /camadas/9-workloads/ |
Cada subseção tem:
- Conceitos específicos da tecnologia daquela camada
- Implementação no contexto CPPS
- Operações comuns (instalar, verificar, troubleshoot)
- Decisões tomadas (links pros ADRs relevantes)