当需要在机器上运行的容器或者镜像数量不断增加时,磁盘的大小可能不再满足需求,您需要通过增加数据盘的方式对Docker的数据目录进行扩容。

前提条件

如需挂载数据盘,请确保您的集群是1.10.4以后版本。

挂载数据盘

您通常可以选择以下两种方案对集群已有节点进行数据盘扩容:
  • 如果已有节点之前没有挂载盘,请参见为容器服务的Docker增加数据盘
  • 如果已有节点购买了数据盘,但是未能成功挂载,一般可以通过以下步骤进行挂载。
说明
  • 为降低操作过程的风险,建议操作前可以对节点做快照或者进行数据备份。
  • 需要评估集群的应用是否支持被调度到其他节点。
  • 请选择在业务低峰期间操作。
  • 节点排水会导致节点上的Pod被调度到其他节点,请确保集群有多余节点资源。如果资源不足,请考虑提前临时扩容。
在执行操作之前,您可以在worker节点上执行df命令,通过查看命令执行结果中/var/lib/docker是否成功挂载到/dev/vdb1来判断数据盘是否成功挂载。若挂载成功,则无需处理。若未成功挂载,您需要按照以下步骤完成挂载。挂载数据盘
  1. 设置节点为不可调度。
    详细操作请参见Mark node as unschedulable
  2. 节点排水。
    详细操作请参见Safely-Drain-Node
  3. 移除该节点。
    本文中仅就容器服务控制台中的操作进行说明。
    1. 登录容器服务管理控制台
    2. 在控制台左侧导航栏中,单击集群
    3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的应用管理
    4. 在集群管理页左侧导航栏中,单击节点管理
    5. 选择要移除的节点,单击批量移除或者选择更多 > 移除
    6. 在弹出的移除节点对话框中,单击确定
  4. 重新添加刚才移除的节点。
    1. 在集群管理页左侧导航栏中,单击节点管理
    2. 在节点列表页面,单击添加已有节点
    3. 选择自动添加手动添加节点。本文中以自动添加为例。
    4. 选择已有云服务器并单击下一步
    5. 按照界面提示完成其余操作,然后单击下一步
    6. 添加已有实例到集群对话框中单击确定

成功添加节点后,您可以登录该节点并执行df命令查看数据盘的挂载情况。

如果数据盘挂载成功,如下图所示。挂载成功

通过以上两种方案,您可以为已有节点添加或者重新挂载数据盘。