4

为效率而生:如何用 Zadig 1.6.0 全面支持全局 Helm & K8s YAML 模板

 2 years ago
source link: https://my.oschina.net/koderover/blog/5323145
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

为效率而生:如何用 Zadig 1.6.0 全面支持全局 Helm & K8s YAML 模板

Zadig on Github Zadig on Gitee

阅读原文 / 加入 Zadig 技术交流群

Zadig V1.6.0 经过社区小伙伴的千呼万唤,总算出来啦!

这次版本主要包含跨项目级的模版库管理功能,通过全局 Helm Chart 模板、 K8s YAML 模板、Dockerfile 模板,可以快速定义服务和生成应用,减少 99% 维护工作量 ,运维工程师只需配置一次模板,开发工程师即可快速定义和部署应用。尤其适合服务体量大,服务配置同构的场景,Zadig 在不破坏原生性的基础上,能够真正实现应用交付的分层和便利性。

对于已经初具规模、微服务达到数百甚至上千、使用 Helm 部署的用户也不用怕,Zadig 做了平滑接入,可以毫无心智负担、批量快速导入现有服务,即可获取 Zadig 环境复制和持续交付能力。同时,该版本也包含了不少社区用户反馈的功能优化和缺陷修复。

以下为 1.6.0 版本亮点介绍:

支持全局 Helm、K8s YAML 模版库管理

将 K8s 资源的 YAML 配置或者部署的 Helm Chart 文件抽象成通用的模板,创建服务时从模板库导入。极致情况下只需 2 步即可成功创建一个服务并应用到集成环境中。

  • 第一步:定义服务模板(K8s YAML/Chart):按需配置自定义变量

  • 第二步:生成服务应用到环境:填写变量,保存服务,按需更新环境

K8s YAML 模板使用示意图:

Helm Chart 模板使用示意图:

Helm 部署场景批量导入服务

对于现有服务配置的管理是 Helm Chart 模板 + 每个服务有独立的 values 文件这种方式,通过Zadig Helm 项目场景批量导入服务,无任何迁移成本,平滑接入 Zadig 系统,获取环境复制和持续交付能力。

图片

支持自定义交付物名称规则

在项目的高级配置中,支持通过以下变量和常量组合的方式生成镜像、TAR 包的名称规则。

云主机场景的交付能力增强

支持批量导入主机列表并分组管理,在自动化部署环节可以批量部署,同时支持主机模式的交付物部署

Zadig V1.6.0 新增功能详情列表

功能列表:

  • 支持全局 Helm Chart 模板库管理

  • 支持全局  K8s YAML 模板库管理

  • 支持全局 Dockerfile 模板库管理

  • 支持 Helm 部署场景批量导入配置

  • 支持项目全局配置交付物的自定义名称规则

  • 支持批量导入主机列表并分组管理

  • 支持 Helm 部署场景的服务搜索和服务编排

  • 支持主机场景的交付物部署 @似水流年

  • 支持托管项目场景不同命名空间托管相同服务 @梦鸽  @Arnold

系统优化:

  • 支持在构建脚本中使用 commit id 变量

  • 支持托管项目场景展示服务的 ingress 信息

  • 支持 Helm 部署场景的配置修改 @段子腾(Slack)

  • 若干体验优化和交互优化

缺陷修复:

  • 修正删除托管项目时的错误提示信息 @梦鸽

  • 修复 Ubuntu 16.04 镜像中 Git 版本不支持使用 Pull Request 构建的问题 @guqs(Slack)

  • 修复 Helm 部署场景显示服务数量不准确的问题

Zadig v1.6.0 Release Note

Features:

  • Template function for helm charts, yaml, and dockerfile.

  • Batch load services from helm chart template.

  • Customizable image tag rules.

  • Batch load VMs.

  • Search function for helm services.

  • Deploy to VMs with artifacts.

  • Load services of the same name from different namespaces.

Improvments:

  • Support using commit id in build scripts

  • Show Ingress information for loaded services

  • Support editing values for helm environment

  • UI/UX improvements

Bug fixes:

  • Service count for helm enviroment is now accurate

  • Ubuntu 16.04 build image is now able to do git pull correctly.

  • Error messages have been changed.

特别感谢开源 Partner 合作伙伴企业为社区提供技术场景。

更多详情请参见:Zadig GitHub:https://github.com/koderover/zadig/releases/tag/v1.6.0

关于 Zadig

Zadig 是基于 Kubernetes 设计、研发的开源分布式持续交付 (Continuous Delivery) 产品,为开发者提供云原生运行环境,支持开发者本地联调、微服务并行构建和部署、集成测试等。Zadig 内置了面向 Kubernetes、Helm、云主机、大体量微服务等复杂业务场景的最佳实践,为工程师一键生成自动化工作流 。

欢迎大家 Star、Fork、 Watch!和众多开发者一起探讨、交流,共建开源社区!

Zadig on Github Zadig on Gitee

阅读原文 / 加入 Zadig 技术交流群


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK