正式安装与升级
本文档主要介绍企业如何正式安装、升级、回滚 ZadigX,其中包括资源准备及详细的操作步骤。
提示
官方为企业管理员提供了便利的运维通道,可在线实施 ZadigX 的安装与日常版本的升级、回滚,联系官方获取相应的支持。
安装
第一步:资源准备
- Kubernetes 集群,版本:v1.16 ~ v1.26,节点建议:2 台 8C16G,且对该集群有管理员操作权限
- 可正常连通上述 K8s 集群,且安装了 kubectl (opens new window) 客户端的机器,用于执行安装命令
- 网络:
- 如果选择 IP+端口 的方式访问 ZadigX 系统,需要确保集群节点有外部 IP 可供访问
- 如果选择域名方式访问 ZadigX 系统,需要准备可用的域名
- 数据库:
- 高可用的 MongoDB(版本: v3.4+)
- 高可用的 MySQL(版本:v5.7+)
注意事项
- 受限于部分类型集群网络插件及其配置,Service 的后端 Pod 可能无法通过该 Service 访问自身,在安装之前请确保集群中不存在此问题
- 配置 kube-dns 服务,以支持服务和 Pod 之间的按名称寻址
第二步:选择版本
访问客户控制台 > 版本
,点击发现新版本
获取 ZadigX 的所有版本,按需选择版本后点击部署
进入参数配置页面。
提示
若忘记控制台登录密码,可以通过以下命令找回:
kubectl get cm plutus-customer-config -n {控制台所在的命名空间} -o=jsonpath='{.data.PLUTUS_PASSWORD}'
使用
IP + 端口
方式访问控制台时,若忘记具体端口,可以通过以下命令查看:kubectl get svc plutus-customer-portal -n {控制台所在的命名空间}
第三步:配置参数
设置安装参数后点击部署
。
安装过程受硬件配置和网络情况影响,不同环境下的时间可能不同,可以执行 kubectl -n {ZadigX 所在的 Namespace} get pod 查询服务状态,当版本状态变为
部署成功
时,则说明部署完成。
配置选项说明:
命名空间
:选择安装 ZadigX 的命名空间Release 名称
:可自定义Helm values 文件
:配置 ZadigX 的相关安装参数- 支持手动输入 YAML 和指定 key/value 两种方式来配置
- 点我查看安装参数说明
第四步:配置许可证
待 ZadigX 成功部署后,访问 ZadigX 系统,输入许可证保存后,使用管理员账号登录即可。
提示
管理员账号:admin
管理员密码:默认为 Zadig123,安装时可指定
若使用域名的方式访问系统,请将流量解析至 gateway-proxy 服务
升级
注意
请勿跨版本升级。
第一步:备份数据
- 请务必做好数据备份,参考文档:备份数据。
- 请备份好当前的安装参数。
第二步:执行升级
访问客户控制台 > 版本
,点击发现新版本
获取 ZadigX 的新版本,选择新版本后点击部署
。
将备份的安装参数填入 Helm values 文件
后部署即可。
提示
升级时请勿修改命名空间和 Release 名称。
第三步:验证升级
部署成功后清理浏览器缓存,登录 ZadigX 系统,检查以下功能是否正常,对此次升级做验收:
- 检查账号系统是否可以正常登录。
- 检查项目/工作流/环境/服务/构建/系统集成的数据是否正常。
- 检查环境中服务实例是否正常,工作流是否可正常运行。
- 检查日常高频使用的功能。
回滚
注意
回滚前请确认 ZadigX 进入停机状态,回滚过程中请勿使用 ZadigX 系统。
第一步:恢复数据
将目标版本的备份数据恢复,参考文档:数据导入。
第二步:执行回滚
访问客户控制台 > 版本
,选择要回滚的目标版本后点击部署
。
配置 Helm values 文件
将备份的安装参数填入。
提示
回滚时请勿修改命名空间和 Release 名称。
第三步:验证回滚
部署成功后清理浏览器缓存,登录 ZadigX 系统,检查以下功能是否正常,对此次回滚做验收:
- 检查账号系统是否可以正常登录。
- 检查项目/工作流/环境/服务/构建/系统集成的数据是否正常。
- 检查环境中服务实例是否正常,工作流是否可正常运行。
- 检查日常高频使用的功能。
安装参数说明
通用安装参数
参数名 | 必填 | 备注 |
---|---|---|
global.extensions.extAuth.extauthzServerRef.namespace | 是 | ZadigX 安装所在的 Namespace |
endpoint.FQDN | 使用域名访问 ZadigX 时必填 | 访问 ZadigX 系统的完整 URL |
endpoint.type | 使用 IP+Port 访问 ZadigX 时必填 | 设置为固定值: IP |
endpoint.IP | 使用 IP+Port 访问 ZadigX 时必填 | K8s 节点任一可外网访问的 IP |
gloo.gatewayProxies.gatewayProxy.service.httpNodePort | 使用 IP+Port 访问 ZadigX 时必填 | 指定的端口号 < 30000 - 32767> |
gloo.gatewayProxies.gatewayProxy.service.type | 使用 IP+Port 访问 ZadigX 时必填 | 固定值: NodePort |
dex.config.staticClients[0].redirectURIs[0] | 是 | 使用域名方式访问:http://${endpoint.FQDN}/api/v1/callback 使用 IP+Port 方式访问: http://${IP}:${PORT}/api/v1/callback |
init.adminEmail | 否 | 默认为 admin@koderover.com,管理员账号的邮箱 |
init.adminPassword | 否 | 管理员账号的密码,默认为 Zadig123 |
protocol | 否 | 访问 ZaidgX 系统使用的具体协议,默认为 http |
高可用安装参数
如果安装高可用 ZadigX,还需配置以下参数:
高可用版本使用外置的 MongoDB, MySQL 组件,数据持久化以及高可用性由具体的 MongoDB, MySQL 服务提供商保障
参数名 | 必填 | 备注 |
---|---|---|
tags.mysql | 是 | 是否安装内置的 MySQL,指定为 false |
connections.mysql.host | 是 | MySQL 连接地址 |
connections.mysql.auth.user | 是 | MySQL 用户名 |
connections.mysql.auth.password | 是 | MySQL 密码 |
dex.config.storage.config.host | 是 | Dex 系统所使用的 MySQL Host |
dex.config.storage.config.port | 是 | Dex 系统所使用的 MySQL 端口 |
dex.config.storage.config.user | 是 | Dex 系统所使用的 MySQL 用户名 |
dex.config.storage.config.password | 是 | Dex 系统所使用的 MySQL 密码 |
tags.mongodb | 是 | 是否安装内置的 MongoDB,指定为 false |
connections.mongodb.connectionString | 是 | MongoDB 数据库连接串,配置多个地址时需要进行转义,比如:mongodb://user:password@8.10.20.20\,8.10.20.30 |
ee.mongodb.db | 是 | MongoDB 数据库名称 |