对于不再使用或闲置的ECS实例,为避免产生不必要的费用,可通过控制台或API立即或定时释放实例。如需防止ECS实例被意外释放,可开启实例释放保护。
影响与风险
数据丢失:释放实例时,本地盘、系统盘、设置了随实例释放的数据盘会一起释放,此外,设置了随云盘释放的自动快照也会一起被删除。
IP丢失:实例的固定公网IP将被回收,无法找回。
规避方法:将固定公网IP转为弹性公网IP。
可能持续计费:未设置随实例释放的云盘、弹性公网IP(EIP)、云盘快照等独立云资源不会被删除,并会继续计费。
规避方法:释放实例后,通过账单辅助排查并手动释放其余资源。
释放按量付费实例
控制台
API
释放一台ECS实例:DeleteInstance - 删除实例。
释放一台或多台ECS实例:DeleteInstances - 批量删除实例。
释放包年包月实例
只能释放已过期或已退款停机的包年包月实例,未过期的包年包月实例释放前需先退订。
控制台
访问ECS控制台-实例,选择目标实例所在地域与资源组。
单击目标实例操作列下的
。在释放实例对话框中,选择释放设置为立即释放,单击下一步。
仔细阅读界面提示,并确认释放与保留的关联资源,确认无误后单击确认释放。
API
释放一台ECS实例:DeleteInstance - 删除实例。
释放一台或多台ECS实例:DeleteInstances - 批量删除实例。
释放已过期或已退款停机的包年包月实例时,需指定TerminateSubscription=true
。
实例释放保护
开启该功能后,任何通过控制台、API 或 CLI 的释放操作都将被拒绝。可防止由人为误操作或恶意行为导致核心实例被意外释放。
适用范围
此功能仅支持按量付费实例。
失效场景
此功能无法阻止系统自动执行的释放行为,包括但不限于:
账号欠费。
预设的自动释放时间到期。
实例因云平台安全规则(例如利用ECS经营非法网站)被释放。
弹性伸缩组自动缩容。
开启释放保护
控制台
访问ECS控制台-实例,选择目标实例所在地域与资源组。
单击目标实例操作列下的
在弹出的对话框中,单击开启保护。
API
调用ModifyInstanceAttribute,设置DeletionProtection=true
代表开启实例释放保护。
预期效果:释放实例报错InvalidOperation.DeletionProtection
。
关闭释放保护
控制台
访问ECS控制台-实例,选择目标实例所在地域与资源组。
单击目标实例操作列下的
在弹出的对话框中,单击关闭保护。
API
调用ModifyInstanceAttribute,设置DeletionProtection=false
。
查看释放保护状态
控制台
访问ECS控制台-实例,选择目标实例所在地域与资源组。
单击目标实例ID进入实例详情页,在其他信息区域查看释放保护状态。
API
调用DescribeInstances,查看Instances.Instance.DeletionProtection
,为true
则代表已开启实例释放保护。
应用与生产环境
在生产环境中,可遵循以下最佳实践,保证资源安全:
强制开启释放保护:为所有生产环境实例强制开启释放保护,防止因人为误操作或恶意行为导致核心资产被意外删除。
权限控制:仅为必要人员授予释放实例的权限 (
ecs:DeleteInstance
和ecs:DeleteInstances
)。同时,将修改实例属性(关闭释放保护)的权限 (ecs:ModifyInstanceAttribute
) 与删除实例的权限分离,交由不同角色管理。操作审计:启用操作审计服务,记录所有账号内的操作,为DeleteInstance和ModifyInstanceAttribute等高危事件配置告警规则,以便在发生此类操作时立即收到通知,从而进行追踪、审计和快速响应。
常见问题
为什么实例“释放”按钮是灰色,无法点击?
可能实例是未到期的包年包月实例,此实例释放前需先退订。
“停止”实例和“释放”实例有什么区别?
这是两个完全不同的概念。
停止:类似于关机,可以随时启动实例恢复运行。
释放:类似于删除和销毁。实例和其系统盘、本地盘、部分数据盘(开启了随实例释放)将被永久删除,数据无法恢复。操作后,该资源将从实例列表移除。
能恢复一台刚刚被误释放的实例吗?
不能。释放实例是永久性、不可撤销操作。系统不会保留已释放实例的任何数据或配置,也无法通过技术手段恢复。请严格遵守先备份、后释放的原则。
释放了实例,但为什么还在扣费?
释放实例不等于释放所有关联资源。可通过账单排查是否有关联的独立云盘、弹性公网IP(EIP)或快照等资源仍在计费。
如何批量释放实例?
释放实例时了定时释放,如何取消?
在ECS控制台-实例单击实例ID进入实例详情页,在 中,单击取消。