Redimensionar um PVC
No produto de Kubernetes da Magalu Cloud é possível realizar o redimensionamento do tamanho de um volume utilizado por um PersistentVolumeClaim (PVC).
Somente é possível redimensionar um PVC para um tamanho maior. Não é possível diminuir o tamanho do volume.
Com acesso ao Cluster, utilize o comando abaixo para criar um PersistentVolumeClaim (PVC).
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: meu-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
storageClassName: mgc-csi-magalu-sc
EOF
Com o comando abaixo, crie um Pod que utilizará o PVC criado acima:
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
name: pod-com-pvc
spec:
volumes:
- name: meu-pvc
persistentVolumeClaim:
claimName: meu-pvc
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
volumeMounts:
- mountPath: /usr/share/nginx/html
name: meu-pvc
EOF
Verifique o tamanho do volume montado no Pod:
kubectl exec -ti pod-com-pvc -- df -h | grep nginx
/dev/vdb 20G 2.1M 20G 1% /usr/share/nginx/html
Para redimensioná-lo para 40GB, atualize o o campo spec.resources.requests.storage para 40Gi:
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: meu-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 40Gi
storageClassName: mgc-csi-magalu-sc
EOF
O volume no serviço de Block Storage da Magalu Cloud será redimensionado e o novo tamanho estará automaticamente disponível ao Pod. Essa operação pode demorar alguns minutos.
Verifique o novo tamanho do PVC (campo CAPACITY):
kubectl get pvc -w
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE
meu-pvc Bound pvc-d7029358-ffe9-4d12-b90a-d75fa218af15 40Gi RWO mgc-csi-magalu-sc <unset> 3m28s
E, no Pod, verifique o novo tamanho do volume montado:
kubectl exec -ti pod-com-pvc -- df -h | grep nginx
/dev/vdb 40G 2.1M 40G 1% /usr/share/nginx/html