流水线 CODEARTS PIPELINE-配置发布管理发布策略:配置发布管理原子插件
配置发布管理原子插件
微服务发布提供滚动升级插件、灰度起负载插件、灰度引流插件、灰度下线插件和人工卡点插件五种插件,用于滚动升级和灰度升级,以下分别介绍各插件配置方法。
- 滚动升级插件
滚动升级包括两种部署方式:镜像创建和YAML创建。
- 镜像创建:替换工作负载中容器的镜像。
表2 参数说明 参数项
说明
命名空间
待升级的服务所在的命名空间。
工作负载
填写YAML文件的相对路径。
- 当前目录为代码分支的根目录。
- 仅支持单个YAML文件。
- YAML路径可以使用“${变量名}”引用环境变量,YAML文件中可以使用“{{变量名}}”引用环境变量。
容器
工作负载中需要升级的容器。
- 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个字符。
- 软件开发一键式部署平台_软件开发生产线_部署CodeArts Deploy-华为云
- 流水线部署_流水线服务CodeArts Pipeline_流水线-华为云
- 软件开发生产线CodeArts_软件开发平台_开发工具-华为云
- 简单快速使用软件开发生产线 _软件开发生产线_软件开发-华为云
- API网关的策略_API网关的插件策略_APIG传统策略
- 基础软件开发生产线_应用软件开发生产线_一站式
- 自动化部署_支持多种部署形态_部署服务CodeArts Deploy-华为云
- 流水线参数使用
- 软件开发生产线_软件开发生产线有哪些_软件开发生产线工具
- 华为云CodeArts API_如何在CodeArts API中发布API