Armazenamento
O filesystem do container é efêmero. PersistentVolumeClaim (PVC) declara a necessidade
da aplicação; a StorageClass seleciona provisionador e política; o volume (PV) é o
recurso realmente associado. Não grave dados de negócio em camada de imagem ou emptyDir.
apiVersion: v1kind: PersistentVolumeClaimmetadata: { name: dados, namespace: app }spec: accessModes: [ReadWriteOnce] storageClassName: fast-ssd resources: { requests: { storage: 20Gi } }ReadWriteOnce normalmente permite montagem leitura/escrita em um nó por vez; não é
sinônimo de “um Pod”. ReadWriteMany depende do backend e tem custo/semântica próprios.
Verifique expansão, criptografia, zona, reclaimPolicy e backup antes de escolher a
classe. Um PVC Pending pede kubectl describe pvc: pode ser StorageClass inexistente,
topologia incompatível ou provisionador sem permissão.
Snapshot é ponto no tempo do volume, não prova de restore nem necessariamente backup consistente de banco. Para dados transacionais, combine quiesce ou backup lógico com snapshot e restaure periodicamente em ambiente isolado. Teste RPO, RTO, permissões e o procedimento de apontar a aplicação para dados recuperados.
StatefulSet ajuda com identidade e volume por réplica, mas não transforma banco em serviço gerenciado. Opere banco no cluster apenas quando o time pode manter upgrades, replicação, backup, restore e capacidade; caso contrário, um serviço gerenciado reduz carga operacional.
Próximo passo: defina acesso mínimo em Segurança do cluster e investigue falhas de PVC no Diagnóstico.