Olá Carlos,
Pelo que pude entender e pelo que você descreveu, parece que você está enfrentando um comportamento esperado quando se utiliza o modo WaitForFirstConsumer
em PersistentVolumeClaims (PVCs) no Kubernetes. Esse modo faz com que a alocação do volume físico (PersistentVolume, ou PV) seja adiada até que um Pod requisite esse PVC, o que pode ser útil para evitar a provisão de volumes em zonas onde eles não serão utilizados.
No entanto, você mencionou que esperava que o comportamento padrão fosse Immediate
, onde o volume é provisionado assim que o PVC é criado, independentemente de haver um Pod consumidor ou não. A escolha entre esses dois modos pode ser determinada pela configuração da StorageClass usada para criar o PVC.
Para resolver o problema, você pode verificar a StorageClass que está sendo usada para criar seus PVCs e ajustar a política de volumeBindingMode
para Immediate
, se necessário. Você pode fazer isso com o seguinte comando:
kubectl get storageclass <nome-da-storageclass> -o yaml
Se você quiser alterar a política de vinculação de volume para Immediate
, você terá que editar a StorageClass (isso pode afetar outros PVCs que usam essa StorageClass):
kubectl edit storageclass <nome-da-storageclass>
E então, na seção de parâmetros, altere ou adicione a linha:
volumeBindingMode: Immediate
Lembre-se de que, se você alterar a StorageClass que já está em uso, isso não afetará os PVCs já provisionados, mas afetará os novos PVCs que forem criados.
Se você não quiser ou não puder alterar a StorageClass existente, você pode criar uma nova StorageClass com o modo de vinculação de volume Immediate
e usar essa nova classe ao criar seus PVCs.
Por fim, é importante notar que a mudança para o modo Immediate
pode ter implicações em termos de disponibilidade e afetar onde seus volumes são provisionados, então avalie se essa mudança faz sentido para o seu caso de uso específico.
Espero ter entendido e conseguido ajudar. Qualquer coisa manda aqui. Bons estudos!