本章节介绍伸缩组内ECS实例的生命周期管理方式,并列出可能的服务状态。弹性伸缩管理ECS实例的生命周期时,会检查ECS实例是否健康,并及时移出甚至释放不健康的ECS实例。
伸缩组内ECS实例的生命周期管理方式
ECS实例类型 | 加入方式 | 生命周期管理方式 |
---|---|---|
自动创建的ECS实例 | 根据伸缩组的实例配置信息来源自动创建的ECS实例。 | 弹性伸缩管理ECS实例的全生命周期,弹性扩张时负责创建ECS实例,弹性收缩时负责停止和释放ECS实例。 |
手动创建的ECS实例 | 由您手动创建,然后手动添加至伸缩组的ECS实例。 | 由是否将ECS实例的生命周期托管给伸缩组决定:
说明 支持将包年包月实例添加至伸缩组,但不支持托管包年包月实例。
|
伸缩组内ECS实例的服务状态
服务状态 | 对应的操作 | 说明 |
---|---|---|
加入中(Pending) | ECS实例正在加入伸缩组,包括加入负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 | |
加入挂起中(Pending:Wait) | 创建生命周期挂钩。 | 如果伸缩组内创建了适用于弹性扩张活动的生命周期挂钩,ECS实例在加入伸缩组时被挂起并等待挂钩超时时间结束。
您可以在挂起期间对ECS实例进行自定义操作,例如绑定辅助弹性网卡、添加Redis实例白名单等。 |
服务中(InService) | 无 | ECS实例已成功加入伸缩组并正常提供服务。 |
备用中(Standby) | 实例转为备用状态。 | ECS实例不提供服务,负载均衡权重被置为零,负载均衡实例停止向ECS实例转发流量,且弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。
在备用状态下,您可以进行排查ECS实例异常、更新ECS实例镜像等操作,然后再将ECS实例投入使用。 |
保护中(Protected) | 实例转为保护状态。 | ECS实例正常提供服务,但弹性伸缩不管理ECS实例的生命周期,而是由您手动管理。 |
停用中(Stopped) | 实例转为停用状态。 | ECS实例已进入停用状态,不提供服务。ECS实例处于停用状态时,vCPU、内存和固定公网IP被回收,因此vCPU、内存和固定公网带宽不再收费,但是云盘、弹性公网IP等资源仍然保留并收费。发生弹性扩张活动时,会优先启用伸缩组中处于停用状态的ECS实例。
说明 如果您需要将ECS实例转为停用状态,请确保在创建伸缩组时将实例回收模式设置为停机回收模式。
|
移出中(Removing) | ECS实例正在移出伸缩组,包括移出负载均衡实例的后端服务器、RDS实例的访问白名单等过程。 | |
移出挂起中(Removing:Wait) | 创建生命周期挂钩。 | 如果伸缩组内创建了适用于弹性收缩活动的生命周期挂钩,ECS实例在移出伸缩组时被挂起并等待挂钩超时时间结束。
您可以在挂起期间对ECS实例进行自定义操作,例如拷贝日志、清理数据等。 |
伸缩组内ECS实例的健康检查
您可以在创建伸缩组时开启或关闭健康检查,也可以为已创建的伸缩组开启或关闭健康检查,具体操作请参见创建伸缩组和修改伸缩组。
- 如果ECS实例由弹性伸缩自动创建,或者由您手动添加至伸缩组但生命周期已托管给伸缩组,弹性伸缩会移出并释放ECS实例。
- 如果ECS实例由您手动添加至伸缩组且生命周期未托管给伸缩组,弹性伸缩会从伸缩组移出ECS实例,但不会释放该ECS实例。