系统管理员操作手册

概述

本手册是为 ZadigX 管理员(比如:运维团队)所编写,手册中的内容可以帮助你将 ZadigX 的系统功能快速搭建起来(比如:代码源集成、账号系统接入、镜像仓库/对象存储/Helm Chart 仓库/集群管理等)。

第三方系统集成

系统描述配置方式
账号系统企业内部统一账号系统接入LDAP
OAuth 2.0
代码仓库企业使用的研发代码仓库集成代码源集成
项目管理集成项目管理工具,用于在工作流中自动变更项目管理中的任务状态Jira 集成
飞书项目集成
配置管理集成配置管理工具,用于在工作流中自动变更业务配置(Apollo 配置/Nacos 配置)Apollo 配置
Nacos 配置
代码扫描集成 Sonar 系统,用于 Sonar 代码扫描Sonar 集成
审批系统集成审批系统,用于工作流流程审批审批系统集成

基础设施管理

系统描述配置方式
镜像仓库项目中使用的镜像仓库集成镜像仓库
对象存储对象存储集成,存放工作流历史日志、测试报告、构建缓存对象存储
Helm Chart 仓库集成 Helm Chart 仓库,用于拉取和推送 Chart 服务Helm 仓库
集群管理多集群管理,用于工作流任务执行和服务部署集群管理

进阶使用

增加系统可用磁盘空间

当遇到因磁盘空间不足导致工作流执行失败时,需增加 ZadigX 系统所使用的磁盘空间。可以从 释放磁盘空间增加磁盘空间 两个角度来解决。

  1. 释放磁盘空间:访问系统设置 -> 系统配置 -> 缓存清理 -> 一键清理,快速释放磁盘空间。

提示

为避免系统长时间运行产生的缓存资源占用磁盘空间,可设置定时清理,参考文档:缓存清理
注意:清理镜像缓存后,初次执行工作流构建镜像的效率可能会有影响,请确认无误后再操作。

  1. 增加磁盘空间:访问系统设置 -> 集群管理 -> 编辑集群,修改 Dind 资源配置,调整存储空间大小,参考文档:Dind 资源配置

工作流构建效率优化

提示

从工作流配置和集群资源配置两个角度来优化工作流构建执行效率。以下途径均可提高工作流执行效率:

  1. 开启构建缓存,节省构建执行时间
  2. 使用更高规格的构建资源
  3. 配置工作流并发执行
  4. 使用 PVC 资源作为缓存存储介质
  5. 使用更高配置的 Dind 资源

开启构建缓存

访问项目 -> 构建 -> 高级配置,开启缓存配置并自定义缓存目录,可参考文档:工作流构建缓存

构建资源配置

访问项目 -> 构建 -> 高级配置,选择更高规格的操作系统配置,参考文档:构建高级配置

开启工作流并发执行

  1. 访问系统设置 -> 系统配置 -> 任务配置,设置任务并发数,参考文档:任务配置

  2. 编辑工作流 -> 开启并发执行,参考文档:工作流并发运行

设置集群缓存资源配置

访问系统设置 -> 系统集成 -> Kubernetes 集群 -> 编辑集群的缓存资源配置,参考文档:缓存资源配置

设置集群 Dind 资源配置

访问系统设置 -> 系统集成 -> Kubernetes 集群 -> 编辑集群的 Dind 资源配置,参考文档:Dind 资源配置

配置任务的调度资源

设置集群的调度策略,将任务调度到指定的节点上运行,确保资源被高效使用。

访问系统设置 -> 系统集成 -> Kubernetes 集群 -> 编辑集群的调度策略,参考文档:调度策略配置

场景一:集群中可用节点都可用于运行任务,选择随机调度。
场景二:只允许任务在指定的节点上运行,将节点加上专用标签,选择强制调度。
场景三:集群中可用节点都可用于运行任务,但希望优先使用某些节点,将节点加上标签,选择优先调度。
场景四:希望实现更细粒度的资源调度,具体设置:给节点增加污点,在调度策略中配置容忍度。

多集群资源管理

希望实现细粒度的集群资源管理,比如:不同团队的项目使用不同的集群资源。

访问系统设置 -> 系统集成 -> Kubernetes 集群 -> 添加集群。参考文档:集群管理
对于不同的网络情况,使用不同的方式来接入集群:

  1. 外接集群可以访问 ZadigX 所在的集群,使用代理连接的方式接入。
  2. ZadigX 所在的集群可以访问外接集群,使用直接连接的方式接入。

配置科学上网

适用于有额外的网络需求(比如:代码构建中存在外部依赖;拉 GitHub 代码超时等)。

访问系统设置 -> 系统配置 -> 代理配置添加代理即可,参考文档:代理配置

从 0 到 1 实现自定义任务

可编码实现自定义任务的功能,在工作流中编排使用,参考文档:自定义任务