
# 生命周期
伸缩组中的实例生命周期，从创建实例开始，到该实例从伸缩组中移除结束。
伸缩组中未添加生命周期挂钩时，实例生命周期内状态之间的过渡如[图1]所示。
图1实例生命周期内状态之间的过渡   
![](https://support.huaweicloud.com/productdesc-as/zh-cn_image_0200326047.png "点击放大")
触发条件**②** 和**④** 表示系统自发触发实例状态的改变。
表1实例的状态 
| 实例所处状态 | 子状态             | 实例状态含义                                | 触发条件                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| 初始状态   | -               | 即实例还没状态。                              | 触发条件**①** 包括有两种情况，只要其中一种情况就能够触发实例进入"正在加入"状态。 - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行扩容。  - 手动添加已有实例至伸缩组。                                                                                                                                                             |
| 正在加入   | 创建实例            | 在触发条件**①**的作用下，伸缩组开始扩容，创建实例。          | 触发条件**①** 包括有两种情况，只要其中一种情况就能够触发实例进入"正在加入"状态。 - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行扩容。  - 手动添加已有实例至伸缩组。                                                                                                                                                             |
| 正在加入   | 绑定负载均衡监听器（可选）   | 在触发条件**①**的作用下，创建实例完成后，实例绑定负载均衡监听器。   | 触发条件**①** 包括有两种情况，只要其中一种情况就能够触发实例进入"正在加入"状态。 - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行扩容。  - 手动添加已有实例至伸缩组。                                                                                                                                                             |
| 已启用    | -               | 实例进入伸缩组，开始接受处理业务流量。                   | 触发条件**③** 包括有三种情况，只要其中一种情况就能够触发实例从"已启用"状态到"正在移出"状态： - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行缩容。  - 实例进入启用状态后，开始健康检查，健康检查失败后，移出实例。  - 手动将实例移出伸缩组。   |
| 正在移出   | 解除绑定负载均衡监听器（可选） | 在触发条件**③**的作用下，伸缩组开始缩容，实例解除绑定负载均衡监听器。 | 触发条件**③** 包括有三种情况，只要其中一种情况就能够触发实例从"已启用"状态到"正在移出"状态： - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行缩容。  - 实例进入启用状态后，开始健康检查，健康检查失败后，移出实例。  - 手动将实例移出伸缩组。   |
| 正在移出   | 删除实例            | 实例解除绑定负载均衡监听器后，从伸缩组中移出。               | 触发条件**③** 包括有三种情况，只要其中一种情况就能够触发实例从"已启用"状态到"正在移出"状态： - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行缩容。  - 实例进入启用状态后，开始健康检查，健康检查失败后，移出实例。  - 手动将实例移出伸缩组。   |
| 已移除    | -               | 实例在伸缩组中的生命周期已结束，即实例没有状态。              | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   
通过手动添加实例和伸缩活动向伸缩组添加实例，实例经过正在加入、已启用和正在移出状态后，实例将移出伸缩组。
伸缩组中已添加生命周期挂钩后，实例生命周期内状态之间的过渡如[图2]所示。当伸缩组进行伸缩活动时，实例将被生命周期挂钩挂起并置于等待状态，实例将保持此状态直至超时时间结束或者用户手动回调。用户能够在实例保持等待状态的时间段内执行自定义操作，例如，用户可以在新移入的实例上安装或配置软件，也可以在实例终止前从实例中下载日志文件。
图2实例生命周期内状态之间的过渡   
![](https://support.huaweicloud.com/productdesc-as/zh-cn_image_0200327117.png "点击放大")
触发条件**②、④、⑥、⑧** 表示系统自发触发实例状态的改变。
表2实例状态 
| 实例所处状态                                                            | 子状态             | 实例状态含义                                 | 触发条件含义                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| 初始状态                                                              | -               | 即实例还没状态。                               | 触发条件**①** 包括有两种情况，只要其中一种情况就能够触发实例进入"正在加入"状态。 - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行扩容。  - 手动添加已有实例至伸缩组。                                                                                                                                                       |
| 正在加入                                                              | 创建实例            | 在触发条件**①**的作用下，伸缩组开始扩容，创建实例。           | 触发条件**①** 包括有两种情况，只要其中一种情况就能够触发实例进入"正在加入"状态。 - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行扩容。  - 手动添加已有实例至伸缩组。                                                                                                                                                       |
| 加入挂起                                                              | -               | 正在加入伸缩组的实例被生命周期挂钩挂起，将实例置于等待的状态。        | 触发条件**③** 包括有两种情况，只要其中一种情况就能够触发实例从"加入挂起"到"正在加入"状态。 - 默认回调操作  - 手动回调操作                                                                                                                                                                                     |
| 正在加入  | 绑定负载均衡监听器（可选）   | 在触发条件**③**的作用下，实例将继续正在加入伸缩组，绑定负载均衡监听器。 | 触发条件**③** 包括有两种情况，只要其中一种情况就能够触发实例从"加入挂起"到"正在加入"状态。 - 默认回调操作  - 手动回调操作                                                                                                                                                                                     |
| 已启用                                                               | -               | 实例进入伸缩组，开始接受处理业务流量。                    | 触发条件**⑤** 包括有三种情况，只要其中一种情况就能够触发实例从"已启用"状态到"正在移出"状态： - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行缩容。  - 实例进入启用状态后，开始健康检查，健康检查失败后，移出实例。  - 手动将实例移出伸缩组。   |
| 正在移出                                                              | 解除绑定负载均衡监听器（可选） | 在触发条件**⑤**的作用下，伸缩组开始缩容，实例解除绑定负载均衡监听器。  | 触发条件**⑤** 包括有三种情况，只要其中一种情况就能够触发实例从"已启用"状态到"正在移出"状态： - 手动修改期望实例数或满足伸缩策略的条件时，触发伸缩活动，进行缩容。  - 实例进入启用状态后，开始健康检查，健康检查失败后，移出实例。  - 手动将实例移出伸缩组。   |
| 移出挂起                                                              | -               | 正在移出伸缩组的实例被生命周期挂钩挂起，将实例置于等待的状态。        | 触发条件**⑦** 包括有两种情况，只要其中一种情况就能够触发实例从"移出挂起"到"正在移出"状态。 - 默认回调操作  - 手动回调操作                                                                                                                                                                               |
| 正在移出                                                              | 删除实例            | 在触发条件**⑦**的作用下，实例将继续正在移出伸缩组，删除实例。      | 触发条件**⑦** 包括有两种情况，只要其中一种情况就能够触发实例从"移出挂起"到"正在移出"状态。 - 默认回调操作  - 手动回调操作                                                                                                                                                                               |
| 已移除                                                               | -               | 实例在伸缩组中的生命周期已结束，即实例没有状态。               | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
通过手动添加实例和伸缩活动向伸缩组添加实例，实例经过正在加入、加入挂起、正在加入、已启用、正在移出、移出挂起和正在移出状态后，实例将移出伸缩组。
