Kubernetes 调整尺寸的PV&;PVC不适用于Pod

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

我有一个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
                   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