Como limpar (eliminar) PVCs desmontados e PVs?

votos
1

Nós não queremos excluir PV e PVC como vagens reutilizá-los na maioria das vezes. No entanto, a longo prazo, vamos acabar com muitas PVs' e PVCs' que não são usados. Como limpar com segurança?

Publicado 08/11/2018 em 06:50
fonte usuário
Em outras línguas...                            


3 respostas

votos
1

Se você quiser remover todos os PVs Unbound e PVCs, você pode fazer isso:

Primeiro exclua os PVCs:

$ kubectl -n <namespace> get pvc | tail -n +2 | grep -v Bound | \
  awk '{print $1}' | xargs -I{} kubectl -n namespace delete pvc {}

Em seguida, basta apagar os PVs:

$ kubectl -n <namespace> get pv | tail -n +2 | grep -v Bound | \
  awk '{print $1}' | xargs -I{} kubectl -n namespace delete pv {}
Respondeu 08/11/2018 em 19:32
fonte usuário

votos
1

Até que você mantenha pvc seu pv estará em estado ligado. Então você pode simplesmente ir e excluir pvc não utilizada com: kubectl -n namespace get pvc -o name | grep myname | xargs kubectl -n namespace delete

Respondeu 08/11/2018 em 08:02
fonte usuário

votos
0

Sim, primeiro você precisa eliminar PVC não utilizado. Com kubectl get pvc --all-namespacesvocê pode listar todos eles em todos os namespaces, juntamente com os PVs correspondentes. A fim de eliminar PVs não utilizados que você precisa para mudar sua ReclaimPolicy porque se ele está configurado para reter os PVs não será excluído, mas vai pendurar em "Lançado" status. Portanto, a fim de fazer o que você precisa para corrigir PV (não é possível editá-lo manualmente com kubectl editpor alguma razão):

kubectl patch pv <your-pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Delete"}}'
Respondeu 14/11/2018 em 21:35
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more