前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >(K8s的)事件驱动脚本项目Brigade发布v2.0.0-alpha.1

(K8s的)事件驱动脚本项目Brigade发布v2.0.0-alpha.1

作者头像
CNCF
发布2021-03-15 14:48:27
3350
发布2021-03-15 14:48:27
举报
文章被收录于专栏:CNCF

一段时间以来,Brigade[1]的维护人员,根据社区使用该产品的经验,以及我们自己的经验,一直在努力规划和实施平台的重大修订。今天,我们自豪地宣布这一努力的里程碑——Brigade v2.0.0-alpha.1 的发布。当我们还在解决问题,并培养一个扩展的 Brigade 2 生态系统时,我们觉得是时候开始将社区引入 Brigade 2 了。

Event-driven scripting for Kubernetes. Brigade is a tool for running scriptable, automated tasks in the cloud — as part of your Kubernetes cluster.

如果你不熟悉 Brigade,现在可能是一个很好的时间去 brigade.sh 了解一下,因为本文的其余部分至少假定你对这个平台有一定的了解。

有哪些改变?

随着时间的推移,Brigade 的维护人员已经了解到两件事:成功使用这个平台需要相当程度的 Kubernetes 能力——通过更好的抽象,不特别精通 Kubernetes 的用户也可以在 Brigade 中发现价值。所以,矛盾的是,Brigade 2 最大的变化在某些方面也是微妙的。熟悉 Brigade 1.x 的人,可能也熟悉它的口号——“Kubernetes 的事件驱动脚本”。Brigade 2 的口号也许写成“(Kubernetes 的)事件驱动脚本”。这反映了我们努力将最终用户从 Kubernetes 中尽可能地抽象出来,同时不向那些既熟悉又能访问底层集群的用户完全隐藏它。

Kubernetes 作为实现细节逐渐消失在背景中,这对 Brigade 的整体架构产生了广泛的影响。Brigade 1.x CLI 和事件网关都直接与 Kubernetes API 服务器交互,而 Brigade 2 与全新的 Brigade API 交互。这是一个非常积极的改变,因为拥有了我们自己的 API,我们的项目可以做一些以前不可能做的事情。

非详尽的重点清单包括:

  • 访问底层集群不再是最终用户的先决条件。
  • 支持 OpenID Connect 认证和兼容的身份提供者,如 Azure Active Directory 或谷歌云身份平台。
  • 基于订阅的事件总线。网关可以将事件发送到 Brigade 中,而不需要知道事件是针对谁的。所有订阅者都会收到该事件的副本。
  • 事件数据(包括日志)现在将持续存在到处理事件的 Kubernetes pod 的生命周期之外。
  • 支持由多个 OCI 容器组成的作业(即具有边车容器的作业)。
  • 更简单和显著改进的集成:
    • 自定义工作器(基于容器的事件处理器)和事件网关比以前更容易创建。
    • 事件网关现在可以跟踪它们发送到 Brigade 中的事件的状态,也许可以报告状态到上游。
    • Go、JavaScript/TypeScript 和 Rust(实验性)的官方 SDK 意味着自定义工作器、事件网关、UI 等都可以用这些流行语言中你最喜欢的任何一种来实现。

其他值得注意的改进并不直接归功于修订后的架构,包括显著改善了用户体验,并支持使用 TypeScript 处理事件。

要解决最后一个技术性较小的变化——命名事物是困难的。Brigade 1.x,单个事件衍生单个“build”,所以毫不奇怪,术语“build”几乎与“event”同义使用。例如,使用 CLI,用户可能查询的是“builds”而不是“events”。随着时间的推移,维护人员已经意识到这个术语促进了一个不准确的概念,即 Brigade 是一个 CI 平台。尽管 CI 是 Brigade 很好地处理的一个著名且流行的用例,但 Brigade 从来没有被限制在这样的用途上。在 Brigade 2,我们把"build"这个词从我们的方言中去掉了。现在只有事件(events)了。项目订阅事件。Brigade 生成工作器来处理事件。

那么,什么没有改变呢?

尽管有许多变化,维护人员相信我们仍然忠于 Brigade 的最初设想,以及 Brigade 1.x 的一般知识应该转到 Brigade 2。最终,Brigade 2,就像它的前辈一样,只是简单地用任意的动作(脚本)连接来自任意源的事件(如果有网关存在或者可以开发)。

很多爱已经投入这个令人兴奋的产品更新,我们希望你会像我们一样爱它。

接下来是什么?

我们还没有做完。随着第一个 alpha 版本的发布,我们期待着进一步的 alpha 和 beta 版本,并最终定期发布候选版本。

目前,我们非常专注于:

  • 压扁臭虫
  • 刷新文档
  • 特性开发
  • 构建集成既能拓宽生态系统,又能识别漏洞和缺失的 API 功能:
    • 一个新的 GitHub 网关,还有更多的网关
    • 来自 Brigham Young University 的一组学生,正在独立开发一款焕然一新的、与 Brigade 2 兼容的Kasthi[2](Brigade UI)。

Kashti仪表盘

Brigade 2 可能是一个正在进行的工作,但如果你想开始熟悉,这不是太早,这是提供反馈甚至开始贡献的最佳时间!

参考资料

[1]

Brigade: https://brigade.sh/

[2]

Kasthi: https://github.com/brigadecore/kashti

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 有哪些改变?
  • 接下来是什么?
    • 参考资料
    相关产品与服务
    容器服务
    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档