Kubernetes 调整尺寸的PV&;PVC不适用于Pod
我有一个AKS集群,我正在尝试调整所用PVC的大小。实际上PVC的容量为5Gi,我已经将其调整为25Gi:Kubernetes 调整尺寸的PV&;PVC不适用于Pod,kubernetes,containers,kubernetes-pvc,Kubernetes,Containers,Kubernetes Pvc,我有一个AKS集群,我正在尝试调整所用PVC的大小。实际上PVC的容量为5Gi,我已经将其调整为25Gi: > kubectl describe pv Name: mypv Labels: failure-domain.beta.kubernetes.io/region=northeurope Annotations: pv.kubernetes.io/bound-by-controller: yes
> kubectl describe pv
Name: mypv
Labels: failure-domain.beta.kubernetes.io/region=northeurope
Annotations: pv.kubernetes.io/bound-by-controller: yes
pv.kubernetes.io/provisioned-by: kubernetes.io/azure-disk
volumehelper.VolumeDynamicallyCreatedByKey: azure-disk-dynamic-provisioner
Finalizers: [kubernetes.io/pv-protection]
StorageClass: default
Status: Bound
Claim: default/test-pvc
Reclaim Policy: Delete
Access Modes: RWO
VolumeMode: Filesystem
Capacity: 25Gi
...
> kubectl describe pvc
Name: test-pvc
Namespace: default
StorageClass: default
Status: Bound
Volume: mypv
Labels: <none>
Annotations: pv.kubernetes.io/bind-completed: yes
pv.kubernetes.io/bound-by-controller: yes
volume.beta.kubernetes.io/storage-provisioner: kubernetes.io/azure-disk
Finalizers: [kubernetes.io/pvc-protection]
Capacity: 25Gi
Access Modes: RWO
VolumeMode: Filesystem
Mounted By: mypod
Events: <none>
我已经摧毁了我的吊舱,甚至我的部署,但它仍然显示5Gi。知道我怎么用我的吊舱里的整个25Gi吗
解决方案
谢谢mario的长时间回复。不幸的是,aks dasboard已经告诉我磁盘有25GB。但调用以下命令返回5GB:
az disk show--ids/subscriptions//providers/Microsoft.Compute/disks/kubernetes-dynamic-pvc-27ee71a5-我认为GitHub线程应该回答您的问题
正如你在那里看到的:
。。。我尝试通过为存储类添加allowVolumeExpansion:true并编辑pvc来调整持久卷的大小
到所需的大小
我假设您已经完成了上述步骤
读下去,这个问题和你的一模一样:
重启pod后,pvc的尺寸已更改为
所需尺寸,即从2Ti->3Ti
kubectl get pvc
mongo-0 Bound pvc-xxxx 3Ti RWO managed-premium 1h
但当我登录到pod并执行df-h时,磁盘大小仍然保持不变
2点
现在让我们来看看:
更新pvc时,我在门户中看不到任何更改。我有
要首先更新门户中的磁盘大小,请相应地编辑pvc并
然后删除pod使其工作。谢谢
因此,请检查Azure portal中磁盘的大小,如果您看到它的大小没有改变,可能就是这样
否则,请确保您遵循了本文中提到的步骤,但是在描述您的PVC
如VolumeResizeFailed
时,您不会收到任何错误消息,因此我认为这不是您的情况,在调整大小之前,它已正确地从节点分离。因此,首先确保门户中的卷大小与通过描述您的PVC
可以看到的信息之间没有差异,非常感谢您,mario。最后,我让它工作了。aks仪表板已经显示25GB,但“az磁盘显示”仅返回5GB。因此,我使用“az磁盘更新”将磁盘更新为25GB。不幸的是,在重启“df-h”之后,仍然提到5GB。这是因为我使用的是Apline Linux。因此,我最终使用了“resize2fs”,现在应用了25GB:-)
/ # apk add e2fsprogs-extra
(1/6) Installing libblkid (2.34-r1)
(2/6) Installing libcom_err (1.45.5-r0)
(3/6) Installing e2fsprogs-libs (1.45.5-r0)
(4/6) Installing libuuid (2.34-r1)
(5/6) Installing e2fsprogs (1.45.5-r0)
(6/6) Installing e2fsprogs-extra (1.45.5-r0)
Executing busybox-1.31.1-r9.trigger
OK: 48 MiB in 31 packages
/ # resize2fs /dev/sdc
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/sdc is mounted on /var/lib/<something :-)>; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 4
The filesystem on /dev/sdc is now 6553600 (4k) blocks long.
...
spec:
containers:
- name: mypod
image: the-image:version
securityContext:
privileged: true
ports:
...
kubectl get pvc
mongo-0 Bound pvc-xxxx 3Ti RWO managed-premium 1h
kubetl exec -it mongo-0 bash
root@mongo-0:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdc 2.0T 372M 2.0T 1% /mongodb