Zadig v1.18.0 文档
  • 快速入门

    • 什么是 Zadig
    • 核心概念
    • 快速安装
    • 第一个项目
    • 接入准备
  • 安装与配置

    • 安装简介
    • All in One 模式
    • 使用 Sealos 一键安装
    • 基于 Helm 命令安装
    • 基于现有 Kubernetes 安装
    • 本地安装
    • 兼容性列表
  • 最佳实践
  • 项目

    • 项目

      • 项目介绍
      • K8s YAML 项目
      • K8s Helm Chart 项目
      • K8s 托管项目
      • 主机项目
      • 权限管理
    • 工作流

      • 简介
      • 产品工作流
      • 自定义工作流
      • 工作流任务
      • 工作流审批
      • 工作流通知
      • 工作流触发器
    • 环境

      • K8s YAML 环境
      • K8s Helm Chart 环境
      • K8s 托管环境
      • 主机环境
      • 服务详情
    • 服务

      • 简介
      • K8s YAML 测试服务
      • K8s Helm Chart 服务
      • K8s 托管服务
      • 服务组件
      • 服务变量
      • 主机服务
    • 构建
    • 测试
    • 代码扫描
  • 模板库

    • K8s YAML 模板
    • Helm Chart 模板
    • Dockerfile 模板
    • 构建模板
  • 工作流

    • 工作流的触发
    • 工作流的构建缓存
    • 工作流任务的并发运行
    • 工作流的镜像版本回退
    • 工作流的变量传递
  • 环境

    • 环境的负载均衡
    • 配置多套环境
    • 自测联调环境
  • 测试中心

    • 测试中心
    • 测试工具实践
    • Apipost 测试平台接入
    • Apifox 测试平台接入
  • 交付中心

    • 交付物追踪
  • 数据视图

    • 数据概览
    • 效能洞察
  • 仪表盘

    • 仪表盘
  • 集成管理

    • 账号系统

      • LDAP
      • OAuth 2.0
      • GitHub
    • 项目管理
    • 代码源

      • 简介
      • GitLab 集成
      • GitHub 集成
      • Gerrit 集成
      • Gitee 公有云集成
      • 其他代码源集成
    • CI/CD 工具
    • 代码扫描
    • 镜像仓库
    • 对象存储
    • Helm 仓库
    • Kubernetes 集群
    • 主机管理
    • 其他系统
    • 软件包管理
    • 自定义镜像管理
  • 系统设置

    • 系统配置
    • 用户管理
    • 公告管理
    • 操作日志
    • 通知设置
  • 账号设置

    • 偏好设置
  • 开发者中心

    • OpenAPI 开发文档

      • API 调用方式
      • 交付中心
      • 工作流
      • 效能洞察
    • 外部系统接入开发文档

      • 自定义账号系统
      • 自定义工作流任务
    • VS Code Toolkit 插件

      • 使用指南
  • 常见问题

    • 产品使用 FAQ
    • 部署运维 FAQ
    • 集群故障 FAQ
    • 认证鉴权 FAQ
    • 诊断手册
  • 版本发布历史

    • Zadig Roadmap
    • v1.18.0 Release Notes
    • v1.17.0 Release Notes
    • v1.16.0 Release Notes
    • v1.15.0 Release Notes
    • v1.14.0 Release Notes
    • v1.13.0 Release Notes
    • v1.12.0 Release Notes
    • v1.11.0 Release Notes
    • v1.10.0 Release Notes
    • v1.9.0 Release Notes
    • v1.8.0 Release Notes
    • v1.7.1 Release Notes
    • v1.7.0 Release Notes
    • v1.6.0 Release Notes
    • v1.5.0 Release Notes
    • v1.4.0 Release Notes
    • v1.3.1 Release Notes
    • v1.3.0 Release Notes
    • v1.2.0 Release Notes
    • v1.1.0 Release Notes
    • v1.0.0 Release Notes
    • v1.0.0-rc.1 Release Notes
  • 术语表

    • 术语表

2021 年 11 月 16 日,Zadig 正式发布 v1.7.0。

功能列表

  • 支持用户管理
  • 支持项目权限管理
  • 支持外部系统常用链接管理
  • 托管项目工作流支持 Webhook 触发服务更新

版本升级过程

背景信息

  1. Kubernetes 集群版本:v1.16~v1.21。
  2. ,如果当前 Zadig 系统版本 < v1.6.0,请先参考 v1.6.0 升级方式 升级到 v1.6.0,再按照以下方式升级到 v1.7.0。
  3. v1.7.0 版本中未保留用户账号信息,安装完成后,使用系统提供的内置账号密码在用户管理里新建即可。

基于现有 K8s 集群-高可用数据库的升级流程

步骤 1:备份数据

高可用数据库,通过云厂商配置做 MongoDB 全量备份。

步骤 2:卸载 Zadig

  1. 下载卸载脚本
  2. 设置需要卸载的命名空间并执行卸载脚本
export NAMESPACE=<Zadig 所在的 Namespace>
bash uninstall.sh

步骤 3:安装 Zadig v1.7.0

  1. 下载安装脚本,执行安装脚本。
export ENCRYPTION_KEY=<第一次安装时获得的 ENCRYPTION_KEY>
# 配置必要的参数,具体参考[基于现有 Kubernetes 安装](/v1.7.1/install/install-on-k8s/)
./install.sh
  1. 下载数据同步工具,执行升级 Job。
    1. 最后一行脚本 value: {{ default "http" .Values.protocol }}://{{- include "zadig.endpoint" . }}修改为系统实际访问域名/IP
    2. mongodb://zadig-mongodb:27017 修改为对应的连接串
    3. -d下面一行的zadig 修改为对应的 dbname
    4. 执行如下命令
    kubectl apply -f 1.7.0-upgrade.yaml -n <Zadig 所在 namespace>
    
  2. 确保 Job 执行成功

步骤 4:验证安装结果

  1. 版本信息确认
    1. 访问 <安装后的 Zadig 地址>/signin
    2. 查看登录界面右下角 info 提示,Version 信息为 1.7.0
  2. 新版本正确性检查,推荐校验点
    1. 管理员访问系统中任一正常使用的项目
    2. 执行工作流,对指定环境的服务进行部署更新
    3. 新建集成环境、删除集成环境、更新集成环境
    4. 提交代码变更,确认配置了 Webhook 的工作流是否被按照预期触发

失败回滚流程

  1. 卸载 Zadig (方式步骤 2)
  2. 重新安装 Zadig v1.6.0

注:在安装完成后先不要进入系统,等待数据恢复

  1. 回滚数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令进行 port 转发
kubectl port-forward svc/zadig-MongoDB -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 执行回滚 Job
    1. 下载数据回滚工具
    2. 修改 YAML 最后一行修改为系统实际访问域名/IP
    3. 执行如下命令
    kubectl apply -f 1.7.0-revert.yaml -n <Zadig 所在 namespace>
    

基于现有 K8s 集群-使用 Zadig 内置 MongoDB 的升级流程

步骤 1:备份数据

由 Zadig 安装的 MongoDB 的备份

# 确保操作的机器上有 MongoDB 客户端
# 寻找 zadig-mongodb 开头的 Pod 名称,执行以下命令进行 port 转发
kubectl port-forward svc/zadig-mongodb -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行备份
mongodump --out=<你想要的路径> --db=zadig mongodb://localhost:27090

步骤 2:卸载 Zadig

  1. 下载卸载脚本
  2. 设置需要卸载的命名空间并执行卸载脚本
export NAMESPACE=<Zadig 所在的 Namespace>
bash uninstall.sh

步骤 3:安装 Zadig v1.7.0

  1. 下载安装脚本,执行安装脚本。
export ENCRYPTION_KEY=<第一次安装时获得的 ENCRYPTION_KEY>
# 配置必要的参数,具体参考[基于现有 Kubernetes 安装](/v1.7.1/install/install-on-k8s/)
./install.sh
  1. 确保安装完成后 Pod 状况正常 (如果不正常,自行解决)
  2. 恢复数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令获取 MongoDB 的 Pod 名称
kubectl get pods -n <Zadig 所在的 Namespace>
# 寻找 zadig-mongodb 开头的 Pod 名称, 执行以下命令进行 port 转发
kubectl port-forward pod/<上一步中获取到的 Pod 名称> -n <Zadig 所在的 Namespace> 27090:27017
# 如果使用 Zadig 安装的 MongoDB,对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 下载数据同步工具,执行升级 Job。
    1. 修改 YAML 最后一行脚本 value: {{ default "http" .Values.protocol }}://{{- include "zadig.endpoint" . }} 为系统实际访问域名/IP
    2. 执行如下命令。
    kubectl apply -f 1.7.0-upgrade.yaml -n <Zadig 所在 namespace>
    
  2. 确保 Job 执行成功。

步骤 4:验证安装结果

  1. 版本信息确认
    1. 访问 <安装后的 Zadig 地址>/signin
    2. 查看登录界面右下角 info 提示,Version 信息为 1.7.0
  2. 新版本正确性检查,推荐校验点
    1. 管理员访问系统中任一正常使用的项目
    2. 执行工作流,对指定环境的服务进行部署更新
    3. 新建集成环境、删除集成环境、更新集成环境
    4. 提交代码变更,确认配置了 Webhook 的工作流是否被按照预期触发

失败回滚流程

  1. 卸载 Zadig (方式步骤 2)
  2. 重新安装 Zadig v1.6.0

注:在安装完成后先不要进入系统,等待数据恢复

  1. 回滚数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令进行 port 转发
kubectl port-forward svc/zadig-mongodb -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 执行回滚 Job
    1. 下载数据回滚工具
    2. 根据自己 Zadig 的安装方式,修改 YAML 内容:
      1. 最后一行修改为系统实际访问域名/IP
      2. mongodb://zadig-mongodb:27017修改为对应的连接串
      3. -d下面一行的zadig修改为对应的 dbname
    3. 执行如下命令
    kubectl apply -f 1.7.0-revert.yaml -n <Zadig 所在 namespace>
    

基于 Helm 命令-高可用数据库的升级流程

步骤 1:备份数据

高可用数据库,通过云厂商配置做 MongoDB 全量备份。

步骤 2:卸载 Zadig

helm list -n <Zadig 所在的 Namespace> # 获得 Zadig 的 release name
helm uninstall <release name> -n <Zadig 所在的 Namespace>

步骤 3:安装 Zadig v1.7.0

  1. 根据 Helm 命令生成工具 生成安装命令
(执行生成的 Helm 安装命令) helm install ...
  1. 下载数据同步工具,执行升级 Job。
    1. 最后一行脚本 value: {{ default "http" .Values.protocol }}://{{- include "zadig.endpoint" . }}修改为系统实际访问域名/IP
    2. mongodb://zadig-mongodb:27017 修改为对应的连接串
    3. -d下面一行的zadig 修改为对应的 dbname
    4. 执行如下命令
    kubectl apply -f 1.7.0-upgrade.yaml -n <Zadig 所在 namespace>
    
  2. 确保 Job 执行成功

步骤 4:验证安装结果

  1. 版本信息确认
    1. 访问 <安装后的 Zadig 地址>/signin
    2. 查看登录界面右下角 info 提示,Version 信息为 1.7.0
  2. 新版本正确性检查,推荐校验点
    1. 管理员访问系统中任一正常使用的项目
    2. 执行工作流,对指定环境的服务进行部署更新
    3. 新建集成环境、删除集成环境、更新集成环境
    4. 提交代码变更,确认配置了 Webhook 的工作流是否被按照预期触发

失败回滚流程

  1. 卸载 Zadig (方式步骤 2)
  2. 重新安装 Zadig v1.6.0

注:在安装完成后先不要进入系统,等待数据恢复

  1. 回滚数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令进行 port 转发
kubectl port-forward svc/zadig-MongoDB -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 执行回滚 Job
    1. 下载数据回滚工具
    2. 修改 YAML 最后一行修改为系统实际访问域名/IP
    3. 执行如下命令
    kubectl apply -f 1.7.0-revert.yaml -n <Zadig 所在 namespace>
    

基于 Helm 命令-使用 Zadig 内置 MongoDB 的升级流程

步骤 1:备份数据

由 Zadig 安装的 MongoDB 的备份

# 确保操作的机器上有 MongoDB 客户端
# 寻找 zadig-mongodb 开头的 Pod 名称,执行以下命令进行 port 转发
kubectl port-forward svc/zadig-mongodb -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行备份
mongodump --out=<你想要的路径> --db=zadig mongodb://localhost:27090

步骤 2:卸载 Zadig

helm list -n <Zadig 所在的 Namespace> # 获得 Zadig 的 release name
helm uninstall <release name> -n <Zadig 所在的 Namespace>

步骤 3:安装 Zadig v1.7.0

  1. 根据 Helm 命令生成工具 生成安装命令
(执行生成的 Helm 安装命令) helm install ...
  1. 确保安装完成后 Pod 状况正常 (如果不正常,自行解决)
  2. 恢复数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令获取 MongoDB 的 Pod 名称
kubectl get pods -n <Zadig 所在的 Namespace>
# 寻找 zadig-mongodb 开头的 Pod 名称, 执行以下命令进行 port 转发
kubectl port-forward pod/<上一步中获取到的 Pod 名称> -n <Zadig 所在的 Namespace> 27090:27017
# 如果使用 Zadig 安装的 MongoDB,对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 下载数据同步工具,执行升级 Job。
    1. 修改 YAML 最后一行脚本 value: {{ default "http" .Values.protocol }}://{{- include "zadig.endpoint" . }} 为系统实际访问域名/IP
    2. 执行如下命令。
    kubectl apply -f 1.7.0-upgrade.yaml -n <Zadig 所在 namespace>
    
  2. 确保 Job 执行成功。

步骤 4:验证安装结果

  1. 版本信息确认
    1. 访问 <安装后的 Zadig 地址>/signin
    2. 查看登录界面右下角 info 提示,Version 信息为 1.7.0
  2. 新版本正确性检查,推荐校验点
    1. 管理员访问系统中任一正常使用的项目
    2. 执行工作流,对指定环境的服务进行部署更新
    3. 新建集成环境、删除集成环境、更新集成环境
    4. 提交代码变更,确认配置了 Webhook 的工作流是否被按照预期触发

失败回滚流程

  1. 卸载 Zadig (方式步骤 2)
  2. 重新安装 Zadig v1.6.0

注:在安装完成后先不要进入系统,等待数据恢复

  1. 回滚数据至备份版本
# 确保操作的机器上有 MongoDB 客户端
# 执行以下命令进行 port 转发
kubectl port-forward svc/zadig-mongodb -n <Zadig 所在的 Namespace> 27090:27017
# 对数据进行恢复
mongorestore mongodb://localhost:27090 <备份数据文件/目录>
  1. 执行回滚 Job
    1. 下载数据回滚工具
    2. 根据自己 Zadig 的安装方式,修改 YAML 内容:
      1. 最后一行修改为系统实际访问域名/IP
      2. mongodb://zadig-mongodb:27017修改为对应的连接串
      3. -d下面一行的zadig修改为对应的 dbname
    3. 执行如下命令
    kubectl apply -f 1.7.0-revert.yaml -n <Zadig 所在 namespace>
    
Prev
v1.7.1 Release Notes
Next
v1.6.0 Release Notes