当集群中的节点系统盘或数据盘空间不足,或因节点规格偏小等原因影响节点稳定运行时,您可以参见本文扩容节点系统盘或数据盘,以更好地满足数据存储需求。建议您选择在线扩容,即扩容后无需重启实例即可生效,不影响集群业务的正常运行。
阅读前提示
扩容系统盘或数据盘前,建议您参见云盘扩容指引了解以下信息:
系统盘或数据盘的扩容流程,包括扩容容量、扩容分区和文件系统。
扩容上限及扩容过程中产生的费用。
如果您的操作系统为ContainerOS,请参见在线扩容ContainerOS系统盘完成系统盘的扩容。
扩容系统盘
步骤一:确定当前磁盘大小和分区
执行系统盘扩容前,请登录节点,查看节点系统盘的磁盘大小和所在分区。
登录节点宿主机。具体操作,请参见使用Workbench工具以SSH协议登录Linux实例。
执行以下命令,查看节点当前容器进程挂载空间大小。
df -hl
执行以下命令,查看节点当前的分区。
sudo fdisk -lu
预期输出:
Disk /dev/vda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: FD47CD2F-8911-47B3-94A7-76CAE693CF78 Device Start End Sectors Size Type /dev/vda1 2048 6143 4096 2M BIOS boot /dev/vda2 6144 415743 409600 200M EFI System /dev/vda3 415744 41940991 41525248 19.8G Linux filesystem
由预期输出可知,当前节点系统盘分区为
/dev/vda3
。
步骤二:扩容节点系统盘容量
您可以参见扩容云盘容量,了解扩容注意事项并登录ECS管理控制台配置扩容后的系统盘容量(例如200 GiB)。推荐您在选择在线扩容的方式,扩容后无需重启实例即可生效。
步骤三:扩容系统盘并验证
本小节以步骤一中查询的云盘分区名称/dev/vda3
为例进行分区和文件系统的扩容。相关注意事项和具体步骤,请参见扩容分区和文件系统(Linux)。
在节点中执行以下命令,扩容分区。
sudo LC_ALL=en_US.UTF-8 growpart /dev/vda 3
在节点中执行以下命令,扩容文件系统。
sudo resize2fs /dev/vda3
执行以下命令,验证节点系统盘是否扩容成功。
df -hl
预期输出:
Filesystem Size Used Avail Use% Mounted on devtmpfs 3.7G 0 3.7G 0% /dev tmpfs 3.7G 0 3.7G 0% /dev/shm tmpfs 3.7G 20M 3.7G 1% /run tmpfs 3.7G 0 3.7G 0% /sys/fs/cgroup /dev/vda3 197G 4.5G 184G 3% / ...
预期输出表明,磁盘分区
/dev/vda3
文件系统容量和扩容后容量(例如200 GiB)基本一致,表示节点系统盘扩容成功。执行以下命令,重启kubelet节点。
systemctl restart kubelet
kubelet重启可能会对节点运行和工作负载运行产生一定影响。请在业务低峰期操作。
执行以下命令,查看节点的临时存储容量,即
ephemeral-storage
的值是否符合预期。替换
cn-qingdao.192.XX.XX.88
为实际节点名称。kubectl get node cn-qingdao.192.XX.XX.88 -o yaml |grep ephemeral-storage
在预期输出中,查看
ephemeral-storage
的值是否与扩容后的容量(例如200 GiB)基本一致。
扩容数据盘
步骤一:确定当前磁盘大小和分区
执行数据盘扩容前,请登录节点,查看节点数据盘磁盘大小和所在分区。
登录节点宿主机。
具体操作,请参见使用Workbench工具以SSH协议登录Linux实例。
执行以下命令,查看节点当前的分区。
sudo fdisk -lu
预期输出:
Disk /dev/vda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: FD47CD2F-8911-47B3-94A7-76CAE693CF78 Device Start End Sectors Size Type /dev/vda1 2048 6143 4096 2M BIOS boot /dev/vda2 6144 415743 409600 200M EFI System /dev/vda3 415744 41940991 41525248 19.8G Linux filesystem Disk /dev/vdb: 45 GiB, 48318382080 bytes, 94371840 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
由预期输出可知,当前节点数据盘为
/dev/vdb
。
步骤二:扩容节点数据盘容量
您可以参见步骤一:扩容云盘容量,了解扩容注意事项并登录ECS管理控制台配置扩容后的数据盘容量(例如50 GiB)。推荐您在选择在线扩容的方式,扩容后无需重启实例即可生效。
步骤三:扩容数据盘并验证
在节点中执行以下命令,扩容文件系统。
sudo resize2fs /dev/vdb
执行以下命令,重启kubelet节点。
systemctl restart kubelet
kubelet重启可能会对节点运行和工作负载运行产生一定影响。请在业务低峰期操作。
执行以下命令,验证节点数据盘是否扩容成功。
df -hl
预期输出:
Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 3.7G 0 3.7G 0% /dev tmpfs tmpfs 3.7G 0 3.7G 0% /dev/shm tmpfs tmpfs 3.7G 20M 3.7G 1% /run tmpfs tmpfs 3.7G 0 3.7G 0% /sys/fs/cgroup /dev/vda3 ext4 197G 4.5G 184G 3% / /dev/vda2 vfat 200M 5.8M 195M 3% /boot/efi /dev/vdb ext4 49G 2.7G 44G 6% /var/lib/container ...
预期输出表明,磁盘
vdb
文件系统容量和扩容后容量(例如50 GiB)基本一致,表示节点数据盘扩容成功。
- 本页导读 (1)
- 阅读前提示
- 扩容系统盘
- 步骤一:确定当前磁盘大小和分区
- 步骤二:扩容节点系统盘容量
- 步骤三:扩容系统盘并验证
- 扩容数据盘
- 步骤一:确定当前磁盘大小和分区
- 步骤二:扩容节点数据盘容量
- 步骤三:扩容数据盘并验证