前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kubernetes Dashboard的演变

Kubernetes Dashboard的演变

作者头像
CNCF
发布2021-03-15 14:59:38
4610
发布2021-03-15 14:59:38
举报
文章被收录于专栏:CNCF

作者:Marcin Maciaszczyk,Kubermatic 和 Sebastian Florek,Kubermatic

2020 年 10 月,Kubernetes Dashboard[1]正式迎来了 5 岁生日。作为主要的项目维护者,我们很难相信从第一次提交到项目已经过去了这么久。然而,带着怀旧的心情回顾过去,我们意识到自那以后发生了很多事情。现在是时候用简短的回顾来庆祝我们的宝贝了。

一切是如何开始的

Kubernetes Dashboard 项目的最初想法是为 Kubernetes 提供一个 web 界面。我们希望通过直观的 web UI 来反映 kubectl 的功能。使用 UI 的主要好处是,能够快速看到不按预期工作的情况(监视和故障排除)。此外,对于 Kubernetes 生态系统的新手来说,Kubernetes Dashboard 是一个很好的起点。

对 Kubernetes Dashboard 的第一次提交是由 Filip Grządkowski 在 2015 年 10 月 16 日从谷歌提交的,离 Kubernetes 仓库刚刚创建几个月。我们最初的提交要追溯到 2015 年 11 月(Sebastian 于 2015 年 11 月 16 日提交;Marcin 于 2015 年 11 月 23 日提交)。从那时起,我们就成了这个项目的定期贡献者。在接下来的两年里,我们与谷歌人密切合作,最终成为主要项目维护者。

正如你所看到的,项目最初的外观和感觉与当前的完全不同。我们已经多次修改了设计。代码本身也发生了同样的情况。

成长-大迁移

在 2018 年初,当 AngularJS 接近它生命的终点时,Angular 的新版本却经常发布。我们使用的许多库和模块都是遵循这一趋势的。这迫使我们花费大量时间重写项目的前端部分,使其与更新的技术兼容。

这种迁移带来了许多好处,比如能够重构大量代码、引入设计模式、减少代码复杂性以及从新模块中获益。然而,你可以想象迁移的规模是巨大的。幸运的是,来自社区的一些贡献帮助我们提供了资源支持、新的 Kubernetes 版本支持、i18n 等等。经过许多漫长的日日夜夜,我们终于在 2019 年 7 月发布了第一个测试版,随后在 2020 年 4 月发布了 2.0 版本——我们的宝宝长大了。

到 2021 年,我们的情况会如何?

由于资源有限,不幸的是,我们不能为许多不同的 Kubernetes 版本提供广泛的支持。因此,我们决定在 Kubernetes Dashboard 发布时一直尝试并支持最新的 Kubernetes 版本。最新版本 Dashboard v2.2.0 提供了对 Kubernetes v1.20 的支持。

除此之外,我们还投入了大量精力来改善资源支持。同时,我们也为 Kubernetes 的大部分资源提供支持。此外,Kubernetes Dashboard 支持多种语言:英语、德语、法语、日语、韩语、中文(繁体、简体、繁体香港)。波斯语和俄语本地化目前正在进行中。此外,我们正在努力支持第三方主题和应用程序的总体设计。如你所见,很多事情正在发生。

幸运的是,我们确实有一些具有领域知识的定期贡献者,他们负责这个项目,更新 Helm chart、翻译、Go 模块等等。但一如既往,可以有更多人手。所以,如果你想为 Kubernetes 做贡献,请记住找我们 ;)

接下来是什么

Kubernetes Dashboard 已经发展和繁荣超过 5 年了。它为社区提供了直观的 Web UI,从而降低了 Kubernetes 的复杂性,并增加了对新社区成员的可访问性。到目前为止,我们为这个项目所取得的成就感到骄傲,但这还不是最后的结果。这些是我们未来的优先事项:

  • 继续为新的 Kubernetes 版本提供支持
  • 不断完善对现有资源的支持
  • 继续改进认证系统
  • 重写 API,使用 gRPC 和共享的 informer:这将允许我们提高应用程序的性能,但最重要的是,支持来自 Kubernetes 项目的实时更新。它是社区中最有需求的特性之一。
  • 将应用程序分成两个容器,一个容器带有 UI,另一个容器内部运行 API。

Kubernetes Dashboard 的一些数字

  • 2015 年 10 月 16 日作出的初始提交
  • 自 v2 发布以来,Dockerhub 的拉取量超过了 1 亿次
  • 支持的 8 种语言和接下来的 2 种正在进行开发
  • 超过 3360 个处理了的 PR
  • 超过 2260 个处理了的问题
  • 支持核心 Kubernetes 资源的 100%覆盖率
  • GitHub 上有超过 9000 颗星星
  • 超过 237000 行代码

加入我们

如前所述,我们目前正在寻找更多的人来帮助我们进一步开发和发展这个项目。我们对多个领域的贡献是开放的,例如,有“help wanted”标签的问题。请随时通过 GitHub 或 Kubernetes Slack[2] 中的#sig-ui 频道联系我们。

参考资料

[1]

Kubernetes Dashboard: https://github.com/kubernetes/dashboard

[2]

Kubernetes Slack: https://slack.k8s.io/

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

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

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

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

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