滚动发布方式重新部署组件
根据业务需要,您可以在“部署记录”列表中选择历史版本配置,并以此版本配置为模板,使用“滚动发布”方式重新部署组件。
“滚动发布”方式每次只部署一个或多个实例,部署完成后加入生产环境,不断执行这个过程,直到全部旧版本都升级到新版本。重新部署过程服务不中断。
前提条件
- 待操作组件已升级过版本配置,请参考升级单个组件版本配置或批量升级组件版本配置。
- 已回滚组件版本配置组件的版本配置,不能作为模板重新部署组件。
滚动发布方式重新部署组件
- 登录ServiceStage控制台。
- 选择以下任意方式进入组件“部署记录”页面:
- 在“应用管理”页面,单击组件所属应用名称,在“组件列表”单击待操作组件名称,在左侧导航栏单击“部署记录”。
- 在“组件管理”页面,单击待操作组件名称,在左侧导航栏单击“部署记录”。
- 在“部署记录”列表,选择待作为配置模板的历史版本部署记录。
- 单击在页面右上方“使用此版本重新部署”,弹出“重新部署”对话框。
- “部署类型”选择“滚动发布”,单击“确定”。
- 参考下表设置组件版本配置信息,其中带“*”标志的参数为必填参数。
参数
说明
技术栈
选择组件技术栈及版本。
技术栈详情,请参考技术栈简介。
*YAML模式
部署环境为Kubernetes类型时,支持选择使用YAML配置来重新部署组件。
- 选择关闭:使用界面配置来重新部署组件。
- 选择开启:使用YAML配置来重新部署组件,从部署了待升级组件的CCE自动同步组件最新负载信息用于修改后重新部署组件。您也可以单击“导入YAML文件”,导入已经编辑好的待重新部署组件YAML配置文件。
说明:使用YAML配置来重新部署组件,组件YAML配置文件中各参数的说明请参考Deployment。
*软件包/镜像
固定为创建并部署组件时选择的组件来源。
- 容器部署方式部署的组件且“YAML模式”选择关闭:选择“源码仓库”,参考创建仓库授权创建授权,设置代码来源;选择软件包或者镜像包,则固定为创建并部署组件时选择的软件包类型(Jar、War、Zip)或者镜像包类型。由您选择的技术栈类型决定,具体情况请参考表1。
- 容器部署方式部署的组件且“YAML模式”选择开启:选择“源码仓库”,参考创建仓库授权创建授权,设置代码来源;选择软件包,则固定为创建并部署组件时选择的软件包类型(Jar、War、Zip)。由您选择的技术栈类型决定,具体情况请参考表1。技术栈选择Docker时,无此参数。
- 虚拟机部署方式部署的组件:选择软件包,则固定为创建并部署组件时选择的软件包类型(Jar、War、Zip、压缩包)。由您选择的技术栈类型决定,具体情况请参考表1。
*上传方式
- 容器部署方式部署的组件且“YAML模式”选择关闭:选择软件包或者镜像包,重新选择已上传的软件包/镜像包,上传方式请参考组件来源说明。
说明:
如果选择的是镜像包:
- 可重新自定义容器名称:长度为1到63个字符,可以包含小写英文字母、数字或中划线(-),并以小写英文字母开头,小写英文字母或数字结尾。
- 单击已选择的镜像包卡片右上角的,可修改镜像包来源。
- 容器部署方式部署的组件且“YAML模式”选择开启:选择软件包,重新选择已上传的软件包,上传方式请参考组件来源说明。技术栈选择Docker时,无此参数。
- 虚拟机部署方式部署的组件:选择软件包,可重新选择已上传的软件包,上传方式请参考组件来源说明。
- 如果组件来源是软件包且选择“自定义文件地址”上传方式,需要执行以下操作:
镜像访问凭证
容器部署方式部署的组件,支持设置。
- 最多支持选择16个镜像访问凭证。
- 单击“创建密钥”,可以创建新的镜像访问凭证。请参考创建密钥,“密钥类型”必须选择kubernetes.io/dockerconfigjson。
*编译命令
容器部署方式部署的组件且“YAML模式”选择关闭、组件来源是“源码仓库”,所选择的技术栈类型为Java、Tomcat、Node.js、Python、Php时,支持设置“编译命令”。
- 使用默认命令或脚本:优先执行代码根目录下的build.sh,不存在则按照所选语言的通用方法编译,如Java语言的mvn clean package。
- 使用自定义命令:根据所选语言自定义编译命令,或修改build.sh文件后选择使用默认命令或脚本。
*Dockerfile地址
容器部署方式部署的组件且“YAML模式”选择关闭、组件来源是“源码仓库”,所选择的技术栈类型为Java、Tomcat、Node.js、Python、Php时,支持设置“Dockerfile地址”。
“Dockerfile地址”即Dockerfile文件相对于项目的根目录(./)所在的目录,Dockerfile文件用于镜像构建。
如果未指定“Dockerfile地址”,默认查找项目根目录下的Dockerfile;如果项目根目录下也没有Dockerfile文件,则根据选定的运行环境自动生成Dockerfile。
*组件版本
组件版本号,支持自动生成和自定义版本号。
- 自动生成版本号:单击“自动生成”,默认以您单击“自动生成”时的时间来生成版本号,格式为yyyy.mmdd.hhmms,s取时间戳中秒数的个位值。例如:时间戳为2022.0803.104321,则版本号为2022.0803.10431。
- 自定义版本号:输入格式为A.B.C或者A.B.C.D,A、B、C、D为自然数。例如,1.0.0或者1.0.0.0。
须知:
自定义版本号需唯一,请勿与该组件的历史版本号重复,否则会导致本次部署记录覆盖掉相同版本的历史部署记录。
*容器名称
组件部署方式为容器部署、技术栈不是Docker且“YAML模式”选择关闭时,需设置此参数。
长度为1到63个字符串,可以包含小写英文字母、数字或中划线(-),并以小写英文字母开头,小写英文字母或数字结尾。
资源
固定为选择的历史版本配置,不可修改。
容器部署方式部署的组件且“YAML模式”选择关闭时,支持此参数。
JVM参数
固定为选择的历史版本配置,不可修改。
容器部署方式部署的组件且“YAML模式”选择关闭、组件技术栈类型为Java/Tomcat时,可用于配置Java代码运行时的内存参数大小。
Tomcat配置
固定为选择的历史版本配置,不可修改。
容器部署方式部署的组件且“YAML模式”选择关闭、组件技术栈类型为Tomcat时,可用于配置Tomcat请求路径、端口号等参数。
云服务配置
- 组件部署方式为容器部署,“YAML模式”选择关闭时,请参考管理容器部署组件云服务配置,设置“微服务引擎”、“分布式缓存”参数。
- 组件部署方式为虚拟机部署,请参考虚拟机部署组件绑定微服务引擎,设置“微服务引擎”参数。
容器配置
固定为选择的历史版本配置,不可修改。
容器部署方式部署的组件且“YAML模式”选择关闭时,显示组件的容器配置。
虚拟机配置
固定为选择的历史版本配置,不可修改。
组件部署方式为虚拟机部署时,显示已设置的虚拟机配置。
应用配置
固定为选择的历史版本配置,不可修改。
高级配置
固定为选择的历史版本配置,不可修改。
*部署批次
表示分几个批次升级组件实例,取值范围为[1, 总实例数]。总实例数,即组件当前运行的实例数量。
例如,组件总实例数为4,“部署批次”参数设置为2,则表示会分2批次升级组件版本配置,每批次升级2个组件实例。
*停止前等待时间
组件部署方式为虚拟机部署时可设置。
用于设置停止实例运行前等待时间,以保证已接收的流量处理完成。取值范围为0-600秒,默认设置为30秒。
激进模式
组件部署方式为虚拟机部署时可设置。
单击,开启激进模式,当遇到升级失败时会继续升级剩余实例。
须知:请谨慎开启激进模式:开启后,极端情况下可能会出现所有实例都升级失败,影响业务功能。
- 单击“升级”。
- 等待组件状态由“升级/回滚中”转换为“运行中”,组件重新部署成功。
- 在组件“部署记录”页面,可查看部署日志。
容器部署方式部署的组件,如果出现“查询工作负载实例状态失败”日志信息,您可以单击“查看事件”,进入事件列表查看详情。
虚机部署方式部署的组件,如果出现“创建虚机应用实例失败”、“查询虚机任务状态失败”或“查询虚机应用实例状态失败”日志信息,您可以单击“查看事件”,进入事件列表查看详情。