近期对开源devops产品 Zadig 做了些预研,主要是基于k8s 平台的环境部署和 几个项目最佳实践的验证。下面我对于这款软件的一些评价和预研过程进行一个整理。
部署过程:
该产品官网提供了几种安装方式: 1、All in one 2、基于现有的k8s 安装 3、 基于helm chart 方式安装
几种方式部署都比较方便,官方文档写的也比较清楚,大家可以按照自己的情况来选择。我在这次预研中选择了helm 部署,我已经有部署好的k8s 集群可以使用,而且对于helm的使用也有一些掌握。以下是参考官网的安装步骤:
1、添加 Zadig 官方 Chart 仓库。
helm repo add koderover-chart https://koderover.tencentcloudcr.com/chartrepo/chart
创建 namespace。
kubectl create ns zadig
2、安装Zadig
我选择了域名访问方式,Gateway Proxy 的暴露方式选择了ClusterIP。 数据库和存储都用了helm chart 内置部署的实例。关于helm chart 可修改的安装参数列表参考官方文档。
export NAMESPACE=<Zadig 安装的 NAMESPACE>
export DOMAIN=<DOMAIN>
helm upgrade --install zadig koderover-chart/zadig --namespace ${NAMESPACE} --version=1.18.0 --set endpoint.FQDN=${DOMAIN} \
--set global.extensions.extAuth.extauthzServerRef.namespace=${NAMESPACE} \
--set gloo.gatewayProxies.gatewayProxy.service.type=ClusterIP
--set "dex.config.staticClients[0].redirectURIs[0]=http://${DOMAIN}/api/v1/callback,dex.config.staticClients[0].id=zadig,dex.config.staticClients[0].name=zadig,dex.config.staticClients[0].secret=ZXhhbXBsZS1hcHAtc2VjcmV0"
最佳实践案例测试:
评价:
从功能上看该产品主要面向企业软件开发的CI/CD平台,完全依赖与k8s 比较符合云原生的趋势。在团队中推广使用有一定的学习成本。他这个产品也分了开源版本和收费版本,收费版本主要多了生产环境的版本发布等功能。在小型研发团队中开源版本也足够了。