更新时间:2024-12-16 GMT+08:00

配置发布管理发布策略

新建发布管理自定义策略

发布管理环境预置了滚动升级模板、灰度升级模板和空白yaml模板,用户可以基于任一模板,添加原子插件,编辑发布策略。

  1. 进入发布管理环境列表页面。
  2. 单击环境名称,进入“环境信息”页面。
  3. 单击“发布策略”页签,切换至“发布策略”页面。
  4. 单击“自定义策略”旁的,弹出“新建策略”对话框,选择策略模板,单击“确定”。
  5. 在模板的基础上自定义编排插件,并配置相关信息。

    表1 新建策略

    参数项

    说明

    策略名称

    策略的名称。支持中文、英文字母、数字、“-”、“_”,不超过128个字符。

    策略描述

    长度不超过200个字符。

    编排插件

    选择策略模板后会自动生成相应的插件,可根据需要自定义编排并配置插件信息,插件参数配置请参考配置发布管理原子插件

    • 单击,可添加插件。
    • 单击,可复制当前插件。
    • 单击,可删除当前插件。

  6. 配置完成后,单击“保存”。
  7. 在左侧目录找到刚创建的策略,单击策略所在行,即可应用该策略,应用后策略会变为“使用中”的状态。

配置发布管理原子插件

发布管理提供滚动升级插件灰度起负载插件灰度引流插件灰度下线插件人工卡点插件五种插件,用于滚动升级和灰度升级,以下分别介绍各插件配置方法。

  • 滚动升级插件
    滚动升级包括两种部署方式:镜像创建和YAML创建。
    • 镜像创建:替换工作负载中容器的镜像。

      表2 参数说明

      参数项

      说明

      命名空间

      待升级的服务所在的命名空间。

      工作负载

      命名空间下的工作负载。

      容器

      工作负载中需要升级的容器。

    • YAML创建:使用yaml文件升级或上线工作负载。

      表3 参数说明

      参数项

      说明

      仓库类型

      代码仓库的类型,当前仅支持Repo。

      代码仓

      当前项目下的代码仓。

      分支

      代码仓库分支。

      工作负载YAML路径

      升级的工作负载YAML路径,填写YAML文件的相对路径。

      • 当前目录为代码分支的根目录。
      • 仅支持单个YAML文件。
      • YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。
  • 灰度起负载插件
    灰度起负载包括两种部署方式:镜像升级和YAML部署。
    • 镜像创建:替换工作负载中容器的镜像,创建与线上配置完全一致的工作负载,仅更新构建产物(镜像包)。

      表4 参数说明

      参数项

      说明

      命名空间

      待升级的服务所在的命名空间。

      服务

      集群命名空间下的Service,需要确保该Service有且仅有一个工作负载与其关联。

      自定义版本号

      开关关闭,系统将自动随机生成灰度版本号;开关开启,用户可以按需配置灰度版本号。

      灰度版本号

      灰度版本号将作为新旧负载的引流标识,用于区分正式版本和灰度版本,请按需配置,支持使用${ENV}引用环境变量。如:${TIMESTAMP},表示引用系统时间戳环境变量作为灰度版本号。

      支持大小写英文字母、数字、“-”、“_”、“.”,长度不超过62个字符。

    • YAML创建:使用yaml文件上线或升级工作负载。

      表5 参数说明

      参数项

      说明

      命名空间

      待升级的服务所在的命名空间。

      服务

      集群命名空间下的服务,需要确保该服务有且仅有一个工作负载与其关联。

      仓库类型

      代码仓库的类型,当前仅支持Repo。

      代码仓

      当前项目下的代码仓。

      分支

      代码仓库分支。

      工作负责YAML路径

      填写YAML文件的相对路径。

      • 当前目录为代码分支的根目录。
      • 仅支持单个YAML文件。
      • YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。
  • 灰度引流插件

    选择引流类型,包括:Service蓝绿引流和ASM灰度引流。

    • Service蓝绿引流:基于集群Service将所有流量切换至新负载(灰度负载)。
    • ASM灰度引流:基于ASM的VirtualService和DestinationRule配置来控制访问流量,可以基于流量比例、请求Header等进行灰度引流,要求集群内安装ASM(应用服务网格)。
  • 灰度下线插件

    灰度下线插件会自动下线服务关联的旧工作负载,无需配置。

  • 人工卡点插件

    可以在卡点确认时进行批准或驳回部署策略,运行至人工卡点时流水线将暂停,若审批通过则继续执行,若驳回则终止执行。

    表6 参数说明

    参数项

    说明

    超时处理

    超过等待审批时间后流水线的处理方案。

    • 卡点失败,发布流终止执行:运行至人工卡点时流水线将暂停,若超时不处理则终止执行流水线。
    • 忽略结果,发布流继续执行:运行至人工卡点时流水线将暂停,若超时不处理则继续执行流水线。

    卡点时长

    等待审批的时间,时间范围为1分钟至12小时。

    卡点说明

    卡点内容说明。长度不超过200个字符。