首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PV和PVC的尺寸调整不适用于Pod。

PV和PVC的尺寸调整不适用于Pod。
EN

Stack Overflow用户
提问于 2020-12-13 17:26:06
回答 1查看 1.6K关注 0票数 3

我有一个AKS集群,我正在尝试调整使用的PVC的大小。实际上,PVC的容量是5Gi,我已经把它调整到25 5Gi了:

代码语言:javascript
复制
> 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>

但是,当我在mypod中调用"df -h“时,它仍然显示了5Gi (参见/dev/sdc):

代码语言:javascript
复制
/ # df -h
Filesystem                Size      Used Available Use% Mounted on
overlay                 123.9G     22.3G    101.6G  18% /
tmpfs                    64.0M         0     64.0M   0% /dev
tmpfs                     1.9G         0      1.9G   0% /sys/fs/cgroup
/dev/sdb1               123.9G     22.3G    101.6G  18% /dev/termination-log
shm                      64.0M         0     64.0M   0% /dev/shm
/dev/sdb1               123.9G     22.3G    101.6G  18% /etc/resolv.conf
/dev/sdb1               123.9G     22.3G    101.6G  18% /etc/hostname
/dev/sdb1               123.9G     22.3G    101.6G  18% /etc/hosts
/dev/sdc                  4.9G      4.4G    448.1M  91% /var/lib/mydb
tmpfs                     1.9G     12.0K      1.9G   0% /run/secrets/kubernetes.io/serviceaccount
tmpfs                     1.9G         0      1.9G   0% /proc/acpi
tmpfs                    64.0M         0     64.0M   0% /proc/kcore
tmpfs                    64.0M         0     64.0M   0% /proc/keys
tmpfs                    64.0M         0     64.0M   0% /proc/timer_list
tmpfs                    64.0M         0     64.0M   0% /proc/sched_debug
tmpfs                     1.9G         0      1.9G   0% /proc/scsi
tmpfs                     1.9G         0      1.9G   0% /sys/firmware

我已经摧毁了我的吊舱,甚至我的部署,但它仍然显示5Gi。你知道我怎么才能用我舱里的整个25G吗?

溶液

谢谢马里奥的长期回应。不幸的是,aks仪表板已经向我展示了磁盘有25 me。但是,调用以下命令返回5GB:

az disk show --ids /subscriptions/<doesn't matter :-)>/resourceGroups/<doesn't matter :-)>/providers/Microsoft.Compute/disks/kubernetes-dynamic-pvc-27ee71a5-<doesn't matter> --query "diskSizeGb"

所以我终于给az disk update --ids <disk-id> --size-gb 25打了电话。现在,上面的命令返回25,我再次启动我的吊舱。由于我的pod使用的是阿尔卑斯Linux,所以它不会自动调整磁盘大小,所以我必须手动调整磁盘大小:

代码语言:javascript
复制
/ # 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.

注意:在我的荚中,我暂时将特权模式设置为true:

代码语言:javascript
复制
...
spec:
  containers:
  - name: mypod
    image: the-image:version
    securityContext:
      privileged: true
    ports:
    ...

否则,resize2fs失败了,并说“没有这样的设备或类似的”(对不起,不知道确切的错误信息-忘记复制)。

EN

回答 1

Stack Overflow用户

发布于 2020-12-14 22:41:30

我认为 GitHub线程应该回答您的问题。

你可以在那里读到:

..。我尝试通过为存储类添加allowVolumeExpansion: true并将pvc编辑到所需的大小来调整持久卷的大小。

我假设您已经完成了上述步骤。

继续读下去,这个问题看上去和你的一模一样:

在重新启动豆荚后,pvc的尺寸已更改为所需的尺寸,即2Ti -> 3Ti。 库贝克尔获得pvc mongo-0装订pvc-xxxx 3tirwo管理-溢价1h 但是,当我登录到pod并执行df -h时,磁盘大小仍然保持在2Ti。 kubetl exec -it mongo-0 bash root@mongo-0:/# df -h文件系统大小使用的有效使用%安装在/dev/sdc 2.0T 372 2m T 1% /mongodb上

现在让我们来看看可能的解决办法

当我更新pvc时,我看不到门户中的任何变化。我必须首先更新门户中的磁盘大小--相应地编辑pvc,然后删除pod使其工作。谢谢

因此,请检查Azure门户中磁盘的大小,如果您看到它的大小不变,则可能是这样。

否则,请确保您遵循了这个评论中提到的步骤,但是,在描述像VolumeResizeFailed这样的PVC时,不会收到任何错误消息,所以我相信这不是您的情况,在正确调整大小之前,它是来自节点的detached。因此,首先,确保门户中的卷大小与您通过描述PVC可以看到的信息之间没有差异。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65278541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档