关于阿里云:Kubernetes-多集群管理平台-OCM-v090-发布进一步改善托管集群安全性问题

32次阅读

共计 4273 个字符,预计需要花费 11 分钟才能阅读完成。

作者:Brae Troutman

随着 OpenClusterManagement(OCM)我的项目的继续倒退,咱们感觉有必要周期性向大家同步近期我的项目的一些停顿了,包含咱们咱们下一步将来倒退的方向以及作为贡献者如何参加进来咱们的社区。2022 年的序幕行将到来,让咱们来进一步看一下我的项目研发方面的新内容吧!

对于 Open Cluster Management

OCM 是一款 Kubernetes 多集群平台开源我的项目,它能够帮忙你大大简化跨云 / 多云场景下的集群治理,无论这些集群是在云上托管,还是部署在自建数据中心,再或者是在边缘数据中心中。OCM 提供的根底模型能够帮忙咱们同时了解单集群外部的容量状况,也能够横跨多集群进行资源 / 工作负载的编排调度。与此同时,OCM 还提供了一系列弱小的扩展性或者叫做插件框架(addon-framework)来帮忙咱们集成 CNCF 生态中的其余我的项目,这些扩展性也能够帮忙咱们无侵入地针对你的特定应用场景手工扩大个性。

OCM 目前是 CNCF 官网 Sandbox 级别我的项目,吸纳了来自超过 15 个不同组织的维护者横跨不同的云原生厂商和解决方案提供商。咱们认为 OCM 是一种对于目前曾经废除的 Kubernetes 多集群工作小组下的 Kubefed 我的项目的可行的平行代替计划,同时咱们也在致力于在 Kubefed 的正式下线后继承连续 Kubernetes 官网多集群治理的使命。

Website: 

https://open-cluster-manageme…

GitHub: 

https://github.com/open-clust…

新版本 v0.9.0 内容

咱们很快乐在此发表 OCM v0.9.0 版本的正式公布。在这个版本中,咱们曾经进一步晋升了托管集群上的安全性相干问题并且能够提供了晦涩的托管集群到主集群的服务裸露性能。你也能够依据这里的研发打算来看到这个版本中的新增个性等等,同时窥见社区整体正在朝哪个方向倒退。

降级 Work 守护容器的平安权限

在之前的 OCM 迭代版本中,Work 守护容器通常在托管集群中是运行在管理员权限上的。这个公布版本中,为了实际“权限最小化”的准则,OCM 反对了以 ManifestWork 粒度独自定义非管理员的权限身份,这样以来就容许例如多集群利用运维的最终用户针对场景为不同的集群定义不同的权限。

反对多集群服务的裸露和路由

在最新版本的 OCM 的 Cluster-Proxy 插件里新增了在托管集群中裸露 / 凋谢一个 Service 以使得中枢集群内的客户端能够拜访的个性,即便是横跨 VPC 能够晦涩进行裸露。本来所有的流量是被定向路由到了各个托管集群的 Kube-Apiserver 下面,这肯定水平上减少了运行 master 相干组件的节点的压力。当初 Cluster-Proxy 的插件守护容器反对了能够通过指定某个集群的某个指标服务,以使得流量的负载平衡失去了些优化,同时向中枢集群裸露服务的粒度调整也更加灵便。

反对通用化插件配置

对于某些心愿可配置化的 OCM 插件,咱们提供了一些新的插件 API 可扩展性来反对用户提供定制插件的配置援用信息,同时在插件框架中,咱们也反对了在发现对应配置发生变化时,能够即时触发插件相干的资源的重新部署下发。

其余更新

除了以上三点的次要停顿之外,这个版本也在 OCM 自身的多版本反对上获得了一些停顿,同时咱们也更新了 ClusterSet 以及 Placement API 的定义:

  • 降级 ManagedClusterSet API 到 v1beta2 版本:更新了 ClusterSet API 并且慢慢下线移除了一些历史的资源,同时咱们也提供了存量数据到 v1beta2 版本的向后兼容性。
  • 晋升了 Placement API 的状态反馈:为 Placement API 提供了更多状态类型和谬误类型来形容场景,尤其是当用户须要诊断排查问题的时候。
  • 新增了用户场景领导在 OCM 的社区仓库中:分享了更多事实中的 OCM 应用场景以及进一步展现了如何横跨多个集群部署利用,以及如何操作 OCM 的外围性能。

接下来还有什么?

接下来的 OCM 版本中会侧重于如何更好地和 Kubernetes 相干的官网社区规范集成,以使得从 Kubernetes 社区来到 OCM 社区奉献的体验更加敌对,同时也咱们也在致力于如何将 OCM 现有的性能应用到其余边缘场景中。

OCM 管制立体的独立部署

作为向 OCM 边缘场景落地的一部分投入,咱们曾经做出了一个初步版本的实现以反对将 OCM 整体编译成一个二进制文件繁难运行(在这里由 @ycyaoxdu 展现)。在下一个版本中,咱们打算进一步欠缺这些概念,包含在 OCM 的中枢集群中甚至屏蔽删除掉 Pod,Node 等主集群自身的资源相干 API。

基于 Pull 模式的 ArgoCD 集成

在之前的 OCM 版本中,中枢集群上的 ArgoCD 的控制器负责间接与托管集群进行 API 交互以维持利用相干的资源达到预期的状态。但这绕过了 OCM 里中枢集群和托管集群之间的平安通信管道,同时将托管集群外部的状态查看以及更新等等的工作老本转移到了中枢集群下面。咱们打算引入一个新的 MultiClusterApplicationSet API 资源,来聚合 ArgoCD 的利用模版并复用 OCM 的通信管道下发到各个托管集群中,之后部署在各个托管集群上的 ArgoCD 代理控制器就能够在集群外部进行状态保护了。

Placement 扩散策略 + 拓扑感知的调度

当咱们横跨多云 / 异构集群治理利用时,有些用户的场景须要指定某种类型的 Kubernetes 集群来进行工作负载的下发。依据场景咱们提炼出了三种多集群部署的调度语义:集群亲和性,集群反亲和性和扩散。这些性能能够帮忙咱们指定咱们偏向于将某些资源部署到某些冀望的集群上,哪些不冀望的集群上等等。

感知代理的中枢和托管集群网络通信

在多集群的架构中,有些隔离托管集群只能通过一个代理进行拜访,这往往须要咱们除了证书之外进行大量的配置工作围绕网络代理。通过以注册令牌作为 CSR 的替代品,OCM 能够灵便接管并且保护更大范畴的集群配置了。

感激贡献者

开源社区软件的美妙存在于体验的多样性和贡献者们对奉献的向往。OCM 招揽了超过 70 名贡献者来自超过 15 个不同的公司。像在咱们的我的项目中,每个社区成员都能够表演一个重要角色在软件的成长与倒退中,不仅仅能够是在社区的构建中,也能够是在开源的参加过程中。

也就是说,咱们很快乐欢送新的贡献者在过来的 3 个月的开发周期里继续涌现新的贡献者:

  • Ian Miller 帮忙社区启动了“Selective Policy Enforment”个性
  • TYTaO 通过应用哈希性能在 ManifestWork 中实现了如何分别不同的 OCM 资源
  • IlonaShishov 为 OCM 实现了 VSCode 的插件,包含但并不限于:清理并增加更多的信息为 Webview UI 工具库,同时为 ManagedCluster 和 Klusterlet OCM 对象新增了可视化组件。

当然,一个社区我的项目离不开继续陪伴应用的人们,这里是一些用户的应用例子和他们所属的公司正在 OCM 社区中摸索或者曾经使用于他们的多集群利用治理中:

  • Endre Karlson (@ekarlso) 来自 TietoEvry 正在应用 OCM 治理多个集群。
  • Dan Gorst (@dgorst) 来自 Expedia Group 正在致力于强化 OCM 集群注册过程中第三方身份提供商的相干扩大性能。
  • Ivan Farinic 来自 ESET 将 OCM 作为他们的多集群中枢管制面。

理解更多

行将到来的流动

KubeCon (10/24 2022 年 – 10/28 2022 年)

  • Multicluster Kubernetes Management Made Easy WithOpen ClusterManagement

https://kccncna2022.sched.com/event/182IA/multicluster-kubernetes-management-made-easy-with-open-cluster-management-joshua-packer-red-hat?iframe=yes&w=100%&sidebar=yes&bg=no

  • Open ClusterManagement (Workload distribution with Placement API)

https://kccncna2022.sched.com/event/1Banx/virtual-project-office-hours-open-cluster-management-workload-distribution-with-placement-api?iframe=yes&w=100%&sidebar=yes&bg=no

  • Work APIa Kubernetes SIGs project

https://kccncna2022.sched.com/event/1Baom/virtual-project-office-hours-work-api-a-kubernetes-sigs-project?iframe=yes&w=100%&sidebar=yes&bg=no

如何参加进来

如果对上述的内容感兴趣,或者心愿进一步参加 OCM 社区的奉献建设的话,欢送分割咱们!

  • 如果有问题? -> Open Cluster Management 来到咱们在 K8s Slack 的频道

https://kubernetes.slack.com/?redir=%2Farchives%2Fopen-cluster-mgmt

  • 提出 Issue 或者代码 -> 来到 OCM Organization on Github

https://github.com/open-clust…

  • 想看到定期的社区停顿更新? -> 退出咱们的 Gmail Group

https://groups.google.com/g/o…

  • 想要在线的会议交换? -> 咱们有每周的 Weekly Community Zoom Meetings

https://calendar.google.com/c… 

如果你不晓得从哪里开始的话,点击此处返回咱们的官网网页来大体感触 OCM 的外围性能,包含它的用例,架构以及所有的信息!

相干链接

[1] 研发打算

https://github.com/orgs/open-…

*[ 2] 哈希性能 *

https://github.com/open-clust…

*[3] IlonaShishov*

https://github.com/IlonaShishov

正文完
 0