文档首页 > > API参考> API> 执行堆栈生命周期

执行堆栈生命周期

分享
更新时间: 2019/08/26 GMT+08:00

功能介绍

执行特定的堆栈生命周期操作。

URI

PUT /v2/stacks/{stack_id}/actions

表1 参数说明

参数

是否必选

描述

stack_id

堆栈id,长度[1, 64]。

请求消息

  • 请求参数

    只有创建生命周期支持Rollback的失败策略。

    表2 请求参数

    参数

    是否必选

    参数类型

    描述

    failure_strategy

    String

    失败策略,默认DoNothing。取值范围为DoNothing/Rollback。

    nodes

    Array of objects

    堆栈元素生命周期参数,详情请参见表3

    timeout

    int

    生命周期超时时间,单位为分钟,默认60分钟。取值范围为[0, 1440] (最多一天,24*60)。

    lifecycle

    String

    生命周期名称。

    create 创建 / start 启动 / stop 停止 / delete 删除 / scale 伸缩 / upgrade 升级 / rollback 回滚 / retry 重试

    inputs

    String

    升级/启动时重新指定堆栈配置参数,每个key-value代表一项输入,对应模板里面的inputs

    template_id

    String

    使用新的模板执行生命周期

    说明:

    1. 升级时仅支持inputs的升级方式。

    2. failure_strategy仅在create的生命周期下支持Rollback。

    3. 元素agent、 job、 DynamicVolume、FlexVolume、DynamicNodePool、NodePool、AutoScaler不支持升级,也不支持安装失败再次安装的情况。

    表3 节点参数

    参数

    是否必选

    参数类型

    描述

    name

    String

    节点名称

    parameters

    Object

    节点生命周期参数,其中伸缩使用ScaleParams(详情请参见表4

    表4 伸缩参数

    参数

    是否必选

    参数类型

    描述

    instances

    Integer

    节点实例数目,取值范围为[0, 100]。

    说明:

    伸缩生命周期,仅支持无状态应用且实例数已经定义到inputs中的情况。如果该inputs存在多个应用共同使用,除非多个应用同时伸缩,否则伸缩动作将无法支持。

  • 创建请求示例
    {
        "lifecycle": "create",
        "timeout": 20,
        "failure_strategy": "Rollback"
    }
  • 伸缩请求示例
    {
        "lifecycle": "scale",
        "nodes": [
            {
                "name": "redis-app",
                "parameters": {
                    "instances": 1
                }
            }
        ]
    }
  • 回滚请求示例
    {
        "lifecycle": "rollback"
    }
  • 配置参数升级请求示例
    {
        "lifecycle": "upgrade",
        "inputs": {
            "param1": "value1"
        }
    }
  • 重试请求示例
    {
        "lifecycle": "retry",
        "timeout": 20
    }

响应消息

  • 响应参数
    表5 响应参数

    参数

    参数类型

    描述

    action_id

    String

    执行记录ID

    last_action_id

    String

    前一次执行记录ID

  • 响应示例
    {
        "action_id" : "string",
        "last_action_id" : "string",
    }

状态码

  • 正常
    表6 状态码

    状态码

    描述

    200

    执行堆栈生命周期成功

  • 异常
    表7 状态码

    状态码

    描述

    400

    请求参数有误

    404

    堆栈不存在或元素不存在

    500

    服务器遇到了一个未曾预料的状况,导致无法完成对请求的处理。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区