配置语言 KCL 正式成为 CNCF 沙盒项目

Connor 币安app官网下载 2023-10-24 91 0

作者 | 褚杏娟

9 月 12 日, 配置语言 KCL 项目通过了云原生计算基金会(CNCF)技术监督委员会评定,正式成为 CNCF 沙箱项目沙盒软件

KCL 是一个 开源的基于约束的记录及函数语言,旨在通过成熟的编程语言技术和实践来改进大量繁杂配置比如云原生 Kubernetes 配置场景的编写等,致力于围绕配置的模块化、扩展性和稳定性,打造更简单的逻辑编写体验,构建更简单的自动化和生态集成路径沙盒软件。KCL 在 2022 年 5 月正式开源,并在今年 6 月 成为 CNCF Landscape 项目。

当前沙盒软件,在轻量级客户端云原生动态配置领域,配置语言及工具存在如下问题:

维度爆炸:大多数静态配置如云原生领域的 Kubernetes YAML 配置需要为每个环境单独进行配置;在最糟糕的情况下,它可能引入涉及环境交叉链接的难以调试的错误,稳定性和扩展性都较差沙盒软件

配置漂移:对于不同环境的静态管理应用程序和基础设施配置的方式,往往没有标准的方式去管理这些动态的不同环境的配置,采用非标准化的方法比如脚本和胶水代码的拼盘,会导致复杂度呈指数增长,并导致配置漂移沙盒软件

认知负担:Kubernetes 等作为构建平台的平台技术手段在底层统一基础架构细节方面出色,但是缺乏更上层的应用软件交付抽象,对于普通开发者认知负担较高,影响了更上层应用开发者的软件交付体验沙盒软件

在云原生配置和自动化的特定问题域内,KCL 使用专用配置和策略语言用于编写和管理规模化复杂配置及策略沙盒软件。不同于混合编写范式、混合工程能力的高级通用语言,专用语言的核心逻辑是以收敛的有限的语法、语义集合解决领域问题近乎无限的变化和复杂性,将复杂配置和策略编写思路和方式沉淀到语言特性中。具体来说,KCL 具备以下能力:

在代码层面提升配置语义验证的能力沙盒软件,比如 Schema 定义、字段可选 / 必选、类型、范围等配置检查校验能力;

提供配置分块编写、组合和抽象的能力沙盒软件,比如结构定义、结构继承、约束定义和配置策略合并等;

用现代编程语言的方式以编写代码的方式提升配置的灵活度沙盒软件,比如条件语句、循环、函数、包管理等特性提升配置重用的能力;

提供完备的工具链支持沙盒软件,丰富的 IDE 插件、语言和生态工具链支持用以降低上手门槛,提升使用体验;

通过包管理工具 和 OCI 注册表沙盒软件,使得配置以更简单的方式在不同团队 / 角色之间分享,传播和交付;

提供高性能的编译器满足规模化配置场景诉求沙盒软件,比如满足由一份基线配置根据部署上下文生成不同环境、不同拓扑配置的渲染性能以及配置自动化修改性能诉求;

通过多语言 SDK、KCL 语言插件等手段提升其自动化集成能力,在发挥配置及策略编写价值的同时显著降低 KCL 的学习成本沙盒软件

作为一种配置语言,KCL 为应用程序和平台开发人员 /SRE 提供的最重要的功能是动态配置管理沙盒软件。通过代码抽象,构建以应用为中心的模型屏蔽复杂的基础设施和平台概念,为开发人员提供一个以应用程序为中心且易于理解的界面。

KCL 支持与 Kubernetes Resource Model (KRM) 规范直接集成沙盒软件。无论是使用独立的 KCL 还是 KRM KCL 配置形式, KCL 可以与各种 CI/CD 和 GitOps 工具的集成。此外,KCL 还与 CNCF 其他众多生态项目进行了集成,比如 Helm、Kustomize、kpt 等,还在运行时提供 KCL Kubernetes Operator,以满足不同场景的配置管理需求等。

更多信息可以查看:

项目地址:

项目官网:

KCL 2023 路线规划:

点击底部阅读原文访问 InfoQ 官网沙盒软件,获取更多精彩内容!

今日好文推荐

耗时一年用户从 0 增长至 1400 万沙盒软件,背后仅三名工程师,这家社交巨头背后的技术栈是如何搭建的?

行业老兵聊 To B 产品技术:To B 难沙盒软件,难不过做好软件

网易回应员工因 BUG 被 HR 威胁后轻生;阿里新 CEO:要让 85、90 后成为主力管理者;华为 Mate60 正面“刚赢”苹果沙盒软件?| Q 资讯

GitHub 变 Twitter?强“喂”新推荐算法引公愤沙盒软件,开发者从“编程乌托邦”被驱赶到了信息茧房

评论