DevOps系列学习Zadig学习之Zadig介绍
zadig
https://docs.koderover.com/zadig/Zadig%20v1.17.0/quick-start/introduction/
zadig 还有个 企业版的 zadigx。
Zadig 介绍
Zadig 是 KodeRover 公司基于 Kubernetes 自主设计、研发的开源分布式持续交付 (Continuous Delivery) 产品,具备灵活易用的高并发工作流、面向开发者的云原生环境、高效协同的测试管理、强大免运维的模板库、客观精确的效能洞察以及云原生 IDE 插件等重要特性,为工程师提供统一的协作平面。Zadig 内置了 K8s YAML、Helm Chart、主机等复杂场景最佳实践,适用大规模微服务、高频高质量交付等场景。我们的目标是通过云原生技术的运用和工程产品赋能,打造极致、高效、愉悦的开发者工作体验,让工程师成为企业创新的核心引擎。
我们的愿景:工程师 + Zadig = 商业上的成功
业务架构介绍:
采用微服务架构模式,前后端分离。
代码主要在这里
后端代码
1 | https://github.com/koderover/zadig |
前段代码:
1 | https://github.com/koderover/zadig-portal |
zadig 包含哪些微服务
后端 包含的组件如下:(makefile里面查看到,官方没有找到具体的说明)
1 | MICROSERVICE_TARGETS = \ |
1 | . |
从安装脚本中看到,这个zadig依赖的中间件还是比较多的 :
1 | k8s |
使用 Helm Chart 的方式部署到 K8s 集群中
部署完成后查看 zadig 相关服务状态:
1 | $ kubectl get pods -n zadig |
zadig 架构
用户入口:
zadig-portal: Zadig 前端组件
kodespace: Zadig 开发者命令行工具
Zadig Toolkit: vscode 开发者插件
API 网关:
Gloo Edge: Zadig 的 API 网关组件
OPA: 认证和授权组件
Dex: Zadig 的身份认证服务,用于连接其他第三方认证系统,比如 AD/LDAP/OAuth2/GitHub/..
User: 用户管理,Token 生成
Zadig 核心业务:
Picket: 数据聚合服务
Aslan: 项目/环境/服务/工作流/构建配置/系统配置等系统功能
Policy: OPA 数据源,策略注册中心
Config: 系统配置
Workflow Runner:
warpdrive: 工作流引擎,负责 reaper、predator 实例的创建销毁等管理操作
reaper: 负责执行单个工作流作业中的构建、测试等任务
predator: 负责执行单个工作流作业中的镜像分发任务
plugins: 工作流插件
Jenkins-plugin: 用于触发 Jenkins job,显示状态和结果等
Cron: 定时任务,包括环境的回收,K8s 资源的清理等
NSQ: 消息队列(第三方组件)
数据平面:
MongoDB: 业务数据数据库
MySQL: 存储 dex 配置、用户信息的数据库
K8s 集群:Zadig 业务运行在各种云厂商的标准 K8s 集群之上
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 马哥私房菜!