tensile-kube的特点是什么


这篇“tensile-kube的特点是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“tensile-kube的特点是什么”文章吧。tensile-kube 名称由来tensile名为可扩展的,可延伸的,同时tensile中也包含了tencent 和 tenc的意思。tensile-kube 诞生背景腾讯游戏Tenc(容器)计算平台线上有数十个K8s集群,这些集群都存在一些碎片资源,无法得到有效利用。常见的场景是:一个作业需要N个资源,但是现有集群A、B、C等所剩资源都不满足N,而集群A,B,C资源总和又能满足N。此外,我们还有另一种场景:业务有一种类型的业务需要同时发布到多个集群。其实,业界很早就有类似的需求,也诞生出了Federation等方案,但是这些对于现有的K8s 会有较大的改造成本,同时增加了很多繁杂的CRD。因而,我们自主研发了更轻量的基于virtual-kubelet的解决方案tensile-kube。https://github.com/kubernetes-sigs/kubefedvirtual-kubelet(VK)简介VK是用微软开源的一个基础库,其实现通常叫做provider, 早期的VK中包含了各种provider, 目前VK社区已经将其独立出来,分为:virtual-kubelet、node-cli和provider。virtual-kubelet提供了一种抽象能力,通过实现provider,用户就实现了一个虚拟的K8s节点,用户的Pod可以调度到该节点。virtual-kubelet的核心功能是Node和Pod的生命周期管控。tensi开发云主机域名le-kube 架构tensile-kube核心组件为4个:virtual-node基于virtual-kubelet实现的了K8s provider功能,同时增加了多个controller,用于同步ConfigMap、Sercret、Service等资源。webhook对Pod中可能对上层集群调度产生干扰的字段进行转换,将其写入annotation中,virtual-node在创建Pod时再将其恢复,避免影响用户期望的调度结果。descheduler用于避免资源碎片带来的影响,这个组件我们基于社区的descheduler进行了二次开发,使之更适用于这个场景。multi-scheduler主要用于连接下层集群的API Server, 避免资源碎片的影响,在调度时判断virtual-node的资源是否足够。(图中未画出来,multi-scheduler会比较重,不是特别推荐使用;如果要使用,需将上层集群kube-scheduler替换成multi-scheduler。)tensile-kube 特点对原生K8s集群无侵入tensile-kube中,通过virtual-node建立上下层集群之间的连接,上层的Pod通过调度器调度到virtual-node,随后将Pod同步到下层集群创建,整个方案对于K8s无侵入。K8s上层平台改造成本低在上层的K8s平台看来,通过tensile-kube连接的集群就是一个大集群,可以完全屏蔽区别,所以对于平台来说,也几乎是不需要改造的。基于原生virtual-kubelet开发tensile-kube基于原生virtual-kubelet打造,没有过多额外的依赖,同时又保持原生virtual-kubelet的诸多功能,后续更新升级方便。这些使得tensile-kube可以方便的实现多个集群的调度管理,且适用于大多数场景。tensile-kube 主要能力集群碎片资源整合对于离线集群来说,或多或少存在资源碎片。通过tensile-kube,可以将这写碎片合成一个大的资源池,将闲置的资源充分利用起来。服务多集群调度结合Affinity等,可以实现,Pod的多集群调度。对于1.16及以上集群还可以基于TopologySpreadConstraint实现更细粒度的跨级群调度。服务跨集群通信tensile-kube原生提供通过Service进行跨集群通信的能力。但是前提是:需要不通集群之间的网络通过Pod IP可以互通,如:私有集群共用一个flannel等。便捷化运维集群当我们进行单个集群升级、变更时,往往需要通知业务迁移、集群屏蔽调度等,在tensile-kube的支持,我们只需要将virtual-node 设置为不可能调度。原生kubectl能力tensile kubectl支持原生kubectl所有操作,包括:kuebctl logs和kubectl exec。这对于运维人员去管理对于下层集群上的pod会十分方便,没有额外的学习成本。其余可能的适用场合边缘计算混合云以上就是关于“tensile-kube的特点是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注开发云行业资讯频道。

相关推荐: 好程序员云计算教程分享Linux云计算面试常见问题三

  好程序员云计算教程分享Linux云计算面试常见问题三,今天将在前两篇的基础上,继续为大家带来Linux云计算面试题。  1、虚拟化平台在实施云时有何要求?  虚拟化平台在实施云时的要求包括:  a)管理服务级别策略  b)云操作系统  c)虚拟化平台有助于…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 05/16 13:05
下一篇 05/16 13:06

相关推荐