Problemas de armazenamento/PVC

Quais são os problemas de armazenamento/PVC?

Problemas de armazenamento ou de Persistent Volume Claim (PVC) ocorrem quando um Pod não consegue anexar ou montar o volume de armazenamento necessário. Como resultado, o Pod permanece no estado ContainerCreating ou exibe erros AttachVolume ou MountVolume.

Dica: Se o PVC estiver pendente ou não estiver vinculado, o Pod não poderá montar o volume e não iniciará.

Sintomas
  • O pod ficou preso no processo de criação do contêiner.
  • Erros de AttachVolume ou MountVolume.
  • O volume persistente não pode ser anexado ou montado.
  • O aplicativo não inicia devido à falta de espaço de armazenamento.
Causas comuns
Causa Descrição
Classe de armazenamento ausente ou incorreta Nenhuma classe de armazenamento válida está disponível para provisionamento dinâmico.
Falha no driver CSI O driver de armazenamento está indisponível ou não está funcionando corretamente.
Volume persistente (PV) não vinculado O PVC não está vinculado a um PV.
Problema de permissão de volume Permissões de sistema de arquivos ou de acesso impedem a montagem.
Armazenamento insuficiente Não há armazenamento disponível para atender à solicitação do PVC.
Problema de disco do nó O nó de trabalho não pode anexar ou montar o volume.
Como diagnosticar
  1. Verificar o estado do PVC e do PV
BASH
kubectl get pvc,pv -n <namespace> 

Saída esperada:

BASH
NAME        STATUS   VOLUME
data-pvc    Bound    pvc-12345

Se o status do PVC não for Bound, o Pod permanecerá em Criação de Contêiner.

  1. Descreva o PVC
BASH
kubectl describe pvc <nome-do-pvc> -n <namespace>​​

Verifique eventos como:

  • O provisionamento falhou
  • Aguardando o primeiro consumidor
  • Não há volumes persistentes disponíveis.
  • Falha ao vincular o volume
  1. Verifique a classe de armazenamento (StorageClass).
BASH
kubectl get storageclass

Certifique-se de que o PVC faça referência a uma StorageClass válida.

  1. Verifique o driver CSI
BASH
kubectl get pods -n <csi-namespace>

Verifique se os Pods do driver CSI estão em execução.

  1. Verificar eventos de disco e volume do nó
BASH
kubectl describe node <nome-do-nó>

Analise os eventos do nó em busca de erros de conexão de disco, montagem ou volume.

Como consertar
  • Corrija a configuração da StorageClass ou do Provisioner.
  • Certifique-se de que o Volume Persistente (PV) exista e esteja vinculado (bound).
  • Verifique se os Pods do driver CSI estão íntegros.
  • Resolva problemas de permissão de disco ou arquivo do nó.
  • Recrie o PVC se ele estiver corrompido (após fazer um backup).
  • Verifique se há capacidade de armazenamento suficiente disponível.
Comandos importantes
BASH
kubectl get pvc -n <namespace>
kubectl get pv
kubectl describe pvc <nome-do-pvc> 
kubectl get storageclass 
kubectl get pods -n kube-system
kubectl describe node <nome-do-nó>
Pontos-chave

PVC = Pending → O armazenamento ainda não está disponível.
PVC = Bound, mas o Pod está preso em ContainerCreating → Verifique o driver CSI, o disco do nó ou erros de montagem de volume.
Erros de AttachVolume/MountVolume → Geralmente indicam problemas com o driver CSI, StorageClass, permissões ou armazenamento do nó.
Sempre revise a seção Eventos do kubectl describe pvc e kubectl describe pod para identificar a causa raiz exata.

Próximo Artigo Artigo anterior