您可以通过扩容安全沙箱节点的DeviceMapper磁盘空间,从而解决磁盘空间不足的问题。本文介绍如何扩容安全沙箱节点中DeviceMapper磁盘空间。

背景信息

DeviceMapper主要用于安全沙箱容器RootFS存储。新建安全沙箱节点时经常会遇到这么一种情况,用户在配置Worker节点时由于对数据盘容量预估不准,到后期往往发现数据盘大小不足,从而影响在节点上创建更多的Pods。

由于目前安全沙箱容器RootFS存储用的是DeviceMapper,在服务部署的时候,DeviceMapper大小为数据盘总大小。因为DeviceMapper空间由LVM工具管理,所以您可以通过LVM命令完成DeviceMapper扩容。
注意 此文档内容仅适用于安全沙箱容器v1(1.x.x)版本,不适用于v2版本。

操作步骤

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,单击节点管理
  5. 节点管理页面,单击需要扩容的ECS实例ID,进入实例详情页面,然后在左侧导航栏中,单击本实例云盘
  6. 云盘页面选择目标云盘,在操作列中,单击更多 > 云盘扩容
  7. 磁盘扩容页面,设置扩容方式在线扩容,设置扩容后容量,然后勾选《云服务器ECS服务条款》并单击确认扩容
    本文举例将磁盘从200 GiB扩容至500 GiB。
  8. 登录已扩容的节点,并执行命令lsblk检查磁盘是否扩容成功。
    登录节点的具体步骤,请参见连接ECS方式
    如下图所示,云盘vdb已经由200 G扩容到了500 G,但LV(逻辑卷)仍然是191 G(其中有9 G空间用在两处:一部分空间预留给VG使用,另一部分空间用来存放LVM元数据。)result
  9. 扩容LV。
    执行以下命令,扩容PV(PV扩容后VG会同步扩容):
    pvresize ${云盘路径}
    返回结果如下:
    pvresize /dev/vdb
    执行以下命令,重新调整LV大小:
    lvextend
    返回结果如下:
    lvextend -l +100%FREE vg0/mythinpool
    最终数据盘扩容到了500 G。resize