有奖捉虫:行业应用 & 管理与支持文档专题 HOT

使用场景

该实践主要应用在使用 Turbo 文件系统下,当需要动态的调整计算实例时,为避免不当的操作方式引发的锁冲突,提供的一种更佳的实例销毁方式。 通常用户在销毁 CVM 机器时,会直接调用 TerminateInstances 接口进行销毁,而这个接口实际会对服务器进行强制关机(类似切断电源)并退还。此方案的优点是销毁快,但对于 CFS Turbo 这种强一致的分布式文件系统,客户端强行失联会使服务端锁召回异常,进而导致 IO Hang。为避免影响客户业务的正常使用,推荐使用本文建议的方式进行销毁,可达到对业务无影响的效果。

操作步骤

对云服务器执行关机操作

调用 StopInstances 接口进行关机,Stoptype 选择 SOFT_FIRST,此方案会优先进行正常关机,当5分钟内未正常关机后,再执行强制关机。此方案能在保证 Turbo 正常使用的情况下,兼顾关机的时效性。
说明:
1. 关机时请勿将 stoptype 选择 hard 模式,此模式为强制关机。
2. 控制台上关机,请勿选择强制关机。选择关机即可,此选项为 SOFT_FIRST。
3. 正常的关机启动,会有序终止进程,并执行 sync 操作,可有效降低拉闸式关机对 Turbo 分布式锁的影响。

销毁实例

调用 DescribeInstancesStatus 查询实例状态。当状态为 STOPPED 时,再执行 TerminateInstances 接口进行销毁。