V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
windcode
V2EX  ›  分享创造

Kusion v0.12.0 发布——全面优化各项能力,提供生产实践案例

  •  2
     
  •   windcode ·
    elliotxx · 150 天前 · 1614 次点击
    这是一个创建于 150 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Image

    我们很高兴地向大家宣布,Kusion v0.12.0 版本已经发布啦!我们本次总共更新了超过 26 个新功能,18 处问题修复以及 14 篇文档更新,新增了 2 位贡献者 🎉 

    Image

    吉祥物小 K 同学带大家查收 v0.12.0 版本新特性

    我们一如既往地对不断壮大的 KusionStack 社区的宝贵贡献表示感谢,正是这些来自社区的贡献与反馈帮助我们达到了 v0.12.0 这一重要里程碑。在这篇文章中,您将了解一些我们精心挑选的令人兴奋的新功能,我们相信这些新特性有望显著地改善跨团队协同工作流

    新增特性

    01 Kusion Apply - 命令行功能增强

    在过去的版本中,kusion apply 命令并不会默认等待所有的资源都可用,因此容易造成用户的困扰。在这个版本中,我们对 kusion apply 命令进行了升级,默认等待所有资源均可用时才结束执行,同时支持配置超时时间,并优化了命令行终端的输出效果。

    upgraded kusion apply command

    02 Kusion Release - State 升级为 Release

    在之前的版本中,当一个应用 Stack 被 apply 或 destroy 后,Kusion 会在存储后端中创建/更新 State 文件,以记录应用资源的状态信息。在这个版本中,我们将 State 文件升级为了 Release ,用于记录应用 Stack 的元数据、资源 Spec 、State ,以及运维操作 Phase ,从而能更好地适应团队协作与审计管理的需要。

    release files in storage backend

    03 Kusion Mod - Kusion Module 管理升级

    在这个版本中,我们为 kusion mod 命令添加了 kusion mod list 和 kusion mod add 这两个子命令,以便开发者能更好地管理 Kusion Module 。kusion mod list 可以帮助开发者获取指定 Workspace 中可用的 Kusion Module 名称、版本和 OCI 制品地址;而 kusion mod add 则可以帮助开发者自动在 kcl.mod 文件中添加指定 Module 的依赖声明,并自动拉取相应的 Module 制品(可类比 go get )。

    kusion mod list and kusion mod add

    04 Workload Modularization - Workload Module 化

    在之前的版本中,应用 Workload 是一个紧耦合在 AppConfiguration 模型中的组件,在这个版本中,我们实现了对 Workload 的 Module 化——Kusion 官方提供的 Workload ( Service 与 Job ) 的 Schema 定义已从 Kusion 代码里移出至 catalog Module 仓库中,用户也可以根据自身的需要来实现自定义的 Workload ,从而增强了 AppConfiguration 模型的扩展能力。

    Module 化后的 Service 与 Job 定义与相关示例可参考:

    https://github.com/KusionStack/catalog/tree/main/modules/workload/service

    https://github.com/KusionStack/catalog/tree/main/modules/workload/job

    生产实践案例

    在 v0.12.0 版本中,我们为大家提供了 Kusion 结合 GitHub Actions 帮助开发者和平台工程师协作进行应用发布与运维的示例,大家可以参考这篇文档了解详情:

    https://www.kusionstack.io/docs/user-guides/production-practice-case/collaborate-with-github-actions

    在上面的文章中,我们基于关注点分离的理念,为平台工程师与应用开发者定义了各自的工作流:

    • 平台工程师主要负责创建中心化的 Kusion 存储后端,开发自定义 Kusion Module ,并在 Workspace 中创建和维护标准化的平台配置

    • 应用开发者可以专注于应用业务逻辑和配置代码,通过提交配置代码触发自动化的 GitHub Actions 流水线完成应用配置的预览与生效

    问题修复

    在 v0.12.0 版本中,我们主要修复了如下 bug: 

    • 修复了应用资源自定义 Kubernetes Namespace 的一些问题

    • 修复了敏感信息管理 ( Secrets Management ) 的一些问题

    • 修复了 Kubernetes 资源与 Kusion Spec 转换的一些问题

    • 修复了 Windows 环境中 apply 与 destroy Terraform 资源的一些问题

    社区动态

    KusionStack 社区新增了五位 Contributor !感谢 @Liuxingyu1111111 和 @wolfcode111 两位同学对 Kusion 的贡献,感谢 @Paradiesvogel7 @Stray @ZhaoRuquan 对 Karpor 的贡献 🎉

    总结

    在 v0.12.0 版本中,我们增强并改进了 kusion apply 命令的功能与体验,并将后端存储中记录应用资源状态的 State 文件升级为了 Release ,同时优化了应用开发者使用 Kusion Module 的体验。除了上述提到的改进之外,本次发布还包含了大量小改进与变化,您可以在 GitHub Release Note 中找到更多完整的细节:

    https://github.com/KusionStack/kusion/release

    欢迎来玩~ 欢迎 star ⭐️

    https://github.com/KusionStack/kusion

    https://github.com/KusionStack/operating

    https://github.com/KusionStack/karpor

    Image

    1 条回复    2024-06-14 10:35:53 +08:00
    adohe
        1
    adohe  
       149 天前
    👏👏👏👏👏👏~~~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2626 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 15:30 · PVG 23:30 · LAX 07:30 · JFK 10:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.