云服务器ECS创建云盘(系统盘和数据盘)后,云盘不支持缩容。如果您有云盘缩容的需求,可以通过SMC迁移或新购云盘的方式实现缩容。
在进行云盘缩容操作时需要考虑很多因素,比如数据的安全性、业务连续性以及成本等。本文为您提供一些通用的思路和步骤,帮助您更好地规划云盘缩容的过程,请您根据实际业务情况选择。
通过SMC迁移或新购云盘的方式实现缩容可能需要停机以完成数据迁移和配置调整,从而可能导致业务短暂中断,请您提前知悉风险并选择业务低峰期进行此类操作,尽量减少对业务的影响。
前提条件
迁移前,强烈建议您为云盘创建快照做好数据备份。具体操作,请参见创建快照。
使用快照会产生计费。更多信息,请参见快照计费。
通过SMC实现缩容
SMC的研发初衷是为了平衡阿里云用户的云上及线下业务负载,您也可以利用其工作原理,实现云服务器ECS的云盘缩容。SMC在跨账号或同账号迁移ECS实例时,可以将您的ECS实例重新迁移到一个云盘更小的自定义镜像或目标实例,来实现缩容。更多信息,请参见跨账号和同账号ECS实例间迁移。
该方式适用于系统盘和数据盘。
注意事项
操作步骤
Linux系统
请确保您已完成迁移前的准备工作。更多信息,请参见迁移前准备。
将待缩容的Linux实例作为迁移源导入SMC。
其中迁移源类型选择阿里云ECS云服务器。具体操作,请参见步骤一:导入迁移源。
创建并启动迁移任务。
创建迁移任务时您需要注意以下参数:
目标类型:选择云服务器镜像。
在调整磁盘分区结构参数处调整目标磁盘大小:目标磁盘分区结构默认与源磁盘一致,您可以按缩容需求调整目标磁盘。
关闭块复制。
Linux系统关闭块复制时,才可以修改分区大小。
修改磁盘大小和分区大小。磁盘大小不能小于源磁盘实际已使用的容量,且云盘容量大小需大于分区大小之和。
例如源磁盘容量是50 GiB,修改后的磁盘容量为40 GiB,此时需要同步修改分区大小。
其他更多参数,请参见步骤二:创建并启动迁移任务。
等待迁移成功后会生成阿里云自定义镜像,在迁移任务操作列单击创建实例,系统跳转到ECS控制台创建ECS页面,创建ECS实例。
系统已默认填充自定义镜像。
默认的系统盘类型和容量大小可能不是缩容云盘的类型及大小,请您根据实际需求调整。
其他参数配置,请参见使用自定义镜像创建实例。
Windows系统
将源磁盘的分区通过压缩卷功能压缩为缩容需求的容量大小。
由于Windows系统在SMC迁移过程中默认启用块复制,因此无法修改分区大小,无法修改磁盘大小,所以需要先压缩卷,然后再迁移。具体操作,请参见通过压缩卷对Windows磁盘重新分区的步骤1~步骤5。
例如源磁盘(C盘)只有1个分区,容量为40 GB,可以压缩为2个分区,已分配容量(20.47 GB)和未分配容量(19.53 GB)。
请确保您已完成迁移前的准备工作。更多信息,请参见迁移前准备。
将待缩容的Windows实例作为迁移源导入SMC。
其中迁移源类型选择阿里云ECS云服务器。具体操作,请参见步骤一:导入迁移源。
创建并启动迁移任务。
创建迁移任务时您需要注意以下参数:
目标类型:选择云服务器镜像。
在调整磁盘分区结构参数处调整目标磁盘大小:目标磁盘分区结构默认与源磁盘一致,您可以按缩容需求调整目标磁盘。
说明由于压缩卷已经将源磁盘的分区大小进行了压缩,鉴于云盘容量大小需大于分区大小之和的要求,此时可以调整目标磁盘容量大小。
例如源磁盘容量是40 GiB,修改后的磁盘容量为30 GiB。
其他更多参数,请参见步骤二:创建并启动迁移任务。
等待迁移成功后会生成阿里云自定义镜像,在迁移任务操作列单击创建实例,系统跳转到ECS控制台创建ECS页面,创建ECS实例。
系统已默认填充自定义镜像。
默认的系统盘类型和容量大小可能不是缩容云盘的类型及大小,请您根据实际需求调整。
其他参数配置,请参见使用自定义镜像创建实例。
通过新购云盘实现云盘缩容
该方式仅适用于数据盘。
系统盘:系统盘随实例创建,无法单独创建或释放,因此不支持通过新购系统盘实现缩容。
数据盘:您可以考虑通过新购数据盘(容量设置为缩容需求的容量大小)并挂载至原ECS实例、拷贝原数据盘数据到新数据盘的方式实现数据盘缩容。
重要如果数据盘和系统盘之间存在依赖关系,对数据盘进行缩容操作或更改相关配置文件可能会带来业务中断的风险,请您提前知悉风险并选择业务低峰期进行此类操作,尽量减少对业务的影响。
具体思路如下: