导语丨 TKEStack 是腾讯开源的一款集强健性和易用性于一身的企业级容器编排引擎,是凋谢原子开源基金会的孵化我的项目之一。本文是对 TKEStack 开源我的项目负责人汝英哲、TKEStack 高级产品经理何鹏飞在云 + 社区沙龙 online 的分享整顿,介绍 TKEStack 的开源方法论,心愿与大家一起交换。
点击此链接查看残缺直播回放~
一、TKEStack 简介
TKEStack 是腾讯云开源的容器平台,很多小伙伴们问:有了 Kuberentes 为何还要用 TKEStack?其实 Kuberentes 作为能力平台还有很多欠缺。比方它没有 UI、镜像仓库、权限治理、日志、监控等根本运维能力,单把 Kuberentes 作为一个业务平台还是很薄弱的,而容器平台补齐了以上这些性能点,把 K8S 封装成了残缺的业务平台。
TKEStack 的开源历程
腾讯很早就开始做容器相干的计算平台了。2009 年吴军博士从谷歌来到腾讯,便借鉴了谷歌做出了腾讯自研的业务平台 T-Borg。到了 2011~2013 年左右开始用社区成熟的公认的技术做业务平台。过后有一次重要的技术方向转变,转向应用业界支流技术计划后,Torca 转向专门做大数据业务平台,于是有了 HOT(hadoop on torca)。到了 2014 年,Docker 技术也体现了威力,咱们十分看好 Docker、Kubernetes 技术,于是迅速进行了切换,并且着手开始做通用的业务平台。
2014 年也有了全新的产品 GaiaStack 用来反对腾讯外部业务,2019 年腾讯做了业务整合,有多条业务线的合并,Kuberentes 和私有云业务团队单干推出了 TKEStack 的容器平台,整合了 Kuberentes 的技术能力。Gaiastack 和 TKE 的技术联合造成了 TKEStack 这个产品,并在 2019 年正式开源。
往年,又有一个十分重要的工夫节点,就是上个月 TKEStack 正式退出了凋谢原子开源基金会。
二、产品定位与方向
1. 容器是云原生的事实底座
在介绍整个产品的定位和方向之前,首先要提一下目前最炽热的技术方向 —— 云原生。
云原生是利用私有云、公有云和混合云构建和运行可拓展弹性的利用。容器基本上是整个云原生技术栈的底座角色,CNCF 官网来看容器族的产品中曾经有大量产品和厂商参加其中,基本上是百花齐放的态势。
泛滥产品中,真正耳熟能详的产品次要有两个,别离是 openshift 和 rancher,它们是容器开源界的标杆。
首先是红帽的 openshift,大家从 K8S 的代码奉献能够得悉,红帽 K8S 代码贡献率仅次于 google 排第二,技术能力十分强,产品也十分的欠缺,并且很早便开始做开源产品了。另一个是 rancher,往年被 suse 收买,产品体验十分好。
但在国内企业的应用场景中,这两个产品也有一些不太欠缺之处。
首先是国内外用户习惯的差别,国外的产品,更多关照了国外用户的应用习惯。国外用户喜爱用小而专的产品,喜爱命令行工具。但国内大部分用户心愿用一站式的平台,要界面化和一站式服务。
另一个问题点在于,国内下载一些国外产品的镜像,网络是个大问题,常常会网络不通或者十分慢,导致应用体验极差。
因而 TKEStack 做一个容器产品须要思考如何定位这个产品,TKEStack 并不是要在根本体验和全局欠缺水平上和 openshift、rancher 去对标,他们曾经做的十分成熟了,咱们刚刚开源,很难在短时间一下子就能够达到他们的成熟度。
2. TKEStack 的开源思路
腾讯云的思路是寻找云原生的蓝海,咱们认为在将来,多云以及硬件异构和硬件平台异构是一个方向。
从 2009 年开始腾讯在容器技术方面有很多积攒,外部业务在云原生畛域也有很多的积攒。基于腾讯本人的技术劣势和积攒以及咱们对国内用户诉求更为理解,咱们打算基于这两个点做一些云原生的开源产品,为云原生生态奉献腾讯的力量。
(1)硬件异构
首先是硬件异构,绝大部分的应用场景是基于 X86 的硬件,但国内有一个很重要的诉求是反对 ARM。腾讯会做到 X86 和 ARM 能够在同一个集群内部署。GPU 方面除了有本人传统的比拟有劣势的 GPU 虚拟化能力以外,也把英特尔 GPU 能力和寒武纪和华为的 GPU 相干产品 在 TKEStack 外面做适配,让下层用户能够无感的应用。
(2)基础架构异构
基础架构异构就是混合云,TKEStack 架构设计上是拿一个集群管其余的集群,人造能够做到混合云,把别的集群,自建集群注册到 TKEStack 外面来,利用 TKEStack 提供的镜像仓库、认证、日志、权限、监控,在一个 TKEStack 界面来能够治理多个 K8S 集群。
腾讯积攒了一批云原生利用相干的技术计划,两个比拟为人熟知的是有状态利用的 TAPP 和英伟达 GPU 虚拟化,还有一些大数据套件也在做集成。腾讯心愿把外部的劣势开源组件一步一步往 TKEStack 外面集成,在用户能够 在 TKEStack 上应用。
(3)松耦合
除此以外还有一个比拟重要的点就是松耦合,TKEStack 一方面反对自研业务,另一方面也反对商业化产品,最终出现给用户态的不止一个产品。用户间接用的开源产品,外部用也有变动。
面对这样的诉求,就要求 TKEStack 要做到可插拔、积木式组装。A 产品要用日志,B 产品不必日志,本人能够抉择能够随便的组合,TKEStack 是具备这样的松耦合能力。
三、开源方法论
TKEStack 从去年 11 月份开源以来,在差不多一年的工夫里曾经积攒了不少教训,也采纳了不少办法,感激资深开源专家马全一老师的领导,当初除了能够对外奉献代码和技术以外,也把教训积攒以方法论的模式体现进去,下文为大家分享一下开源治理模式的教训和总结。
1. 为什么要开源
为什么要开源?这个问题在很多搜索引擎上有不少答案,但更多的是偏差于开源对于集体的倒退以及开源对整个社会的价值的角度来看的。腾讯更多的是从作为一个企业或者一个部门,对外开源一个我的项目可能给公司和企业带来哪些劣势来思考的。
只有可能商业落地的开源我的项目能力取得倒退凋敝的机会。近年来 IT 行业的倒退中,有几个大家耳熟能详的大我的项目,Apache、Linux、CentOS 等等,这些都有十分深厚的开源背景和商业落地历史。
开源首先就是可能为商业版本市场推广上带来微小的马太效应,强人越强、弱者越弱。Apache 首先有了开源我的项目,而后在开源我的项目知名度关上后越来越多的用户或者是开发者退出我的项目中来,开源的用户天然的转化为商业版本的用户或者是商业产品的利用。用户想要欠缺商业版本,很天然的就会到开源版本社区上为社区奉献本人的代码或者是他的体验优化,造成了良性循环。
开源是对商业版本的重要撑持,开源的社区可能为商业版本产品奉献资源和力量,也是开源商业产品去丰盛本人的性能个性和环境适配、是构建残缺生态的重要撑持。
有些客户对业务会被某一家供应商所绑定的问题比拟敏感,给用户提供开源的商业版本就会缩小他们的顾虑,他们也会更乐意反对开源我的项目。
整个开源商业以及生态相互撑持、互相的建设规范、造成生态,最初落地为一个商业市场的行为,变成良性循环,把开源我的项目、商业我的项目越做越大、越做越好。
2. 开源我的项目为什么须要方法论
以刚刚提到的几个大我的项目为例,最开始的我的项目其实齐全是由一些卓越的开源工作者依照集体的爱好和激情推动了整个开源的起步。
然而如果看明天各种的我的项目,可能造成微小社区或者产业的微小我的项目,仅靠集体的激情是很难推动和欠缺的。这样的大产业我的项目迫切需要有一套方法论来撑持和引领开源我的项目制订策略、布局个性、构建规范、建设生态,一步一步环环相扣。
如果是 to C 的商业模型的开源我的项目,生态是重中之重的要建设的点。如果是 to B 的我的项目,会尤其看重单干,合作伙伴的抉择和治理形式对开源有着十分重要的意义和价值。
3. 开源我的项目架构
(1)金字塔模型
开源我的项目的整个架构首先是开源策略的金字塔模型,企业开源整个金字塔塔尖的地位首先要制订好策略,只有制订好了策略,指明了将来产品或者是我的项目的倒退方向之后,才有了后续的规范、产品、生态。
策略是指明了大方向的前提,是整个开源我的项目的灵魂。开源之前大家肯定要想好做产品或者是做我的项目想要让它达到什么样的成果、将来的倒退方向是什么、或者更加现实中的将来世界的开源我的项目可能站在什么样的地位上,为大家奉献怎么的力量,策略是灵魂也是外围。
我的项目要遵循规范或者是行业的事实标准,能够更加关注开源我的项目是否造成行业标准或者是事实标准。当然不用非得是具体条文、接口标准,也能够是隐性的规范,比方操作习惯、UI 界面设计等等,指引和影响用户人群的观点和习惯,带来耳濡目染的造成一套隐性规范。
围绕规范、围绕策略设计开源我的项目,把开源我的项目真正当做一个产品来设计,意识到开源我的项目是有它的开发者、有对应的用户、有真正的使用者,不是咱们想怎么做就怎么做的,而是把开源我的项目当成一个真正产品来做、做到越来越欠缺、越来越齐备的状态。
最初以产品、以我的项目为外围建设生态,同时把生态转化成商业的载体,这是企业开源策略的金字塔。
(2)沙漏模型
接下来开源我的项目治理的模型,或者真正要把整套的开源我的项目运行起来。整个沙漏最重要的局部的是瓶颈局部,开源我的项目就是产品,产品就是咱们的重中之重,开源我的项目最终出现给客户就是以开源我的项目为外围的整个产品。
而产品的基石就是外围开发者,外围开发者能够把握整个我的项目倒退方向,保护社区的稳固。
这之下是应用开源我的项目的商业伙伴,他们十分有能源欠缺 TKEStack 的性能、优化和进步 TKEStack 的产品质量和体验。
在此基础上也有更多来自于社区或者来自于其余团队的上游开发者,他们会为 TKEStack 奉献大家的各种环境的适配、各种特异化的功能丰富 TKEStack 的产品线。
(3)生态搭档模型
对于 TKEStack 来说,企业开源我的项目的重心重点是生态搭档,合作伙伴怎么来抉择怎么来单干,就造成了生态搭档模型。
合作伙伴分为几大类,首先是外围开发者以及 TOC 技术委员会,这是整个开源我的项目的外围,只有外围团队稳固后才能够放弃 TKEStack 整个开源我的项目的稳固。
首先 TOC 技术委员会能够蕴含创始人、团队的导师、架构师、产品经理、经营经理等等,是以一个委员会的模式确定整个开源我的项目的倒退方向。外围开发工作者社区能够来自于公司的外部,或者是来自于重度应用的团队奉献整个开源我的项目外围的代码和架构局部。
除了外围工作者提供以外也有忠诚追随者,比方投后的公司、对于我的项目有十分忠诚的粉丝,他们会为整个我的项目奉献他们的生机、奉献他们在商业场景上的适配或者是客户实在需要都能够在开源我的项目上努力实现。
一个开源的我的项目对外是要有凋谢容纳的态度来欢送各类开发者甚至是竞争对手一起单干,竞争对手某一个角度上、某些场景上也能够找到一起单干的点。大家的出发点都是站在开源的角度,都是为了整个生态和社区服务的,从这个角度上来看跟客户或者是跟集体开发或者是竞争对手单干起来会比拟容易谈成。
制约整个我的项目胜利的因素首先还是要抉择正确的外围的合作伙伴,争取两头地位的合作伙伴,总的来说是要争取更多的开发者的力量,朝着一个指标奉献开源的社区力量。
4. 其余制约我的项目倒退和胜利的因素
针对于这套方法论还要有一套可能适配于这个方法论的治理模型,可能把方法论和开源现实落地实现,要有丰盛的市场伎俩宣传开源我的项目、宣传商业产品。同时,这样也是整个开源社区或者是产品和我的项目是十分好的强心剂,可能助推我的项目更好更快的倒退。
四、开源治理模式
1. 开源我的项目全生命周期治理
TKEStack 开源我的项目是有生命周期治理的,从最开始策略的布局、到产品需要、开发迭代、公布周期、运维治理、经营治理,各种的阶段都是有着本人的流程和办法的。
对于策略打算和需要而言,策略打算会有定期的 TOC 的技术委员会会议,周期是半年或者是一年的年度计划或者是半年打算,以此来制订整个 TKEStack 的年度里程碑。
制订完之后里程碑和路线图会在代码托管网站上公布出来。前面会就路线图进行细化,真正落实到每天的工作中,以周会的模式来跟踪里程碑和路线图。
具体实施阶段,一是外部的用户反馈、二是内部的用户反馈。外部客户会有一套 TAPD 需要管理系统来跟踪整个状态,内部用户则应用 Github Issue 跟踪。
2. 需要流程
因为对外开源,所以有大量的内部用户的需要和问题反馈。如果沿用之前流程,依照两条线别离进行需要开发跟踪会造成大量抵触和凌乱的问题,产品经理会十分累的奔走于两条线上,兼顾内外部的需要。
对于这个问题,咱们进行了改良,做到了自动化。比方内部的需要和问题单,有自动化工作每天同步到外部零碎中来,公司外部外围开发人员就能够看到内部客户的需要,并且第一工夫进行评审,给出他的开发意见。
对于比拟大的需要,给出的开发倡议或者是概要设计咱们也会提交 Proposal 供应整个社区的人看到。
3. 开发流程
开发流程包含开发中、测试和最初的提交,都能够整体在零碎中追踪失去,并且也可能及时的同步到 Github 开源网站上,公司内外部的用户和团队可能第一工夫把握整个需要的状态。
开发流程沿用的是 Github 规范的开发流程,创立分支、创立 PR 申请、探讨以及最初的部署、测试等等,具体的详情能够参见 Github 的官网。
4. 测试流程
开发流程另一方面就是测试流程,当初 TKEStack 可能做到三级测试,每个测试所在的阶段和指标也不尽相同。
UT 是在每次的代码编译时候保障整个代码的可编译性、以及语法没有重大谬误。SmokeTest 每次 PR 提交的时候运行,大略有十几个测试用例来保障提交代码不会影响到 TKEStack 的外围性能,最初每次发版的时候也有 release 测试,来保障最初公布的版本可靠性。这是三级测试的流程。
5. 公布与保护
公布也有本人的一套版本公布和分支治理的流程。下图中标红色线的是主分支,就是长期跟踪的分支,所有的 fix,feat,docs 等等代码全部都是要提供到主分支上的。
主分支上会依照打算去公布版本,比方公布的版本是 v1.4.0,就是依照打算在主分支上找到适合公布的版本,从下面拉取 release-1.4 的分支,公布的时候将 v1.4.0 的标签打到分支上,这个 v1.4.0 的分支就是咱们要长期保护的分支。后续如果有 bug 批改也都会在这个分支上同步公布,也会定期在分支上公布 v1.4.1 的小版本。这些整体的版本公布保护打算都是能够看到的。
6. 社区治理
整个治理模型最初局部是社区的治理,对应于之前提到的方法论,吸引各种合作伙伴和团队参加到整个开源社区治理中来。
团队外部的外围开发者、公司外部的贡献者是负责 TKEStack 外围性能,要保障产品倒退方向和外围能力的,调配的是基础架构方面的工作。
内部的合作伙伴更多的劣势是在于他们可能联合环境的适配面对真正用户做特质化的需要,这是对产品性能方面十分重要的,也有更多的参加商业化的构建,以及特定的性能,比方日志、监控等等其余的针对于用户环境的优化需要。
社区内的大量开发者也能够有更多的优化体验,一些业内更好更新的实际或者是办法都能够来参加到社区中来。
对于各个开发团队或者是对于社区集体开发者,腾讯也做了很多致力,比方组织线上线下的流动来宣传介绍相干常识,例如 TKEStack 最近有在做开源悬赏工作,会定期的放出一些开发工作交给大家来参加进来。腾讯也会以各种处分来回馈社区、进步大家对参加社区活动的积极性。
五、案例介绍
1. 外部上云
腾讯当初整体在做全量业务上云,这是一个过程,有些业务依赖的周边零碎的业务还没上云,所以难以短时间间接切换为共有云部署。
另一方面,业务上云须要有一个两头过程,而且云机房的机器和 IDC 机房的机器不同,当把业务全副切到云上,IDC 机器就闲暇了。
为了解决这两个问题,TKEStack 在外部部署了一套用来反对业务上云。TKEStack 界面和私有云一脉相承,两个产品的应用体验上没有大的区别。所以临时还无奈全量上云,但又必须要做云化革新的商品,当初能够借助 TKEStack 实现云化,条件成熟进一步上到腾讯私有云上,TKEStack 曾经反对了大几百万核的外部业务运行。
2. TKE 企业版
TKEStack 企业版除了在开源也在反对外部业务,同时也反对商业化的产品。相比外部资源上云,商业化的企业版在很多方面会做更多强化。
TKEStack 企业版界面跟开源 TKEStack 有些不同,开源的 TKEStack 在基于商业化诉求界面上封装得更多、展示的内容更多。
TKEStack 企业版的外围能力,比方集群的调度、创立、业务管理比拟外围的底层能力是 TKEStack 奉献,然而在微服务方面以及运维和经营相干的比拟强用户体验的性能更多的是企业版本人构建的。这就是拿一部分开源底层能力和商业化特殊要求的能力进行组合,就会变成 TKEStack 企业版,互相不会影响彼此。
六、总结和瞻望
开源相似于守业,要做到天时地利人和。
地利,是对的工夫做对的事,比方目前大家都在做云原生,这个时候做容器平台就能够吸引到用户,如果做一个 openstack 平台,绝对吸引力就不是那么强,所以正确的工夫做正确的事件,追随支流技术趋势是地利。
天时,有了好的方向后也得有能力做。腾讯在这方面有着十多年的积攒,技术能力比拟强,既有外部业务的应用教训,有腾讯私有云的经营教训,也有大规模集训撑持能力,这几者联合能够说做开源的容器平台有了技术的根底。
人和,目前在国内很难有这样的机会有一拨人齐全做开源,长时间的关注在开源畛域没有任何业务 KPI,这是理想化的过程。实际上的过程是既要反对外围业务,又要做好开源产品。
在两者间综合协调,要有适合的策略推动这个产品继续的迭代,有了产品后也须要更多人参加生态中认同这个生态,应用、保护,并且对生态做出奉献。有更多人参加这个产品才更有生命力,才算得上是合格的开源产品。
这是天时地利人和,商业化的卖一个产品也是一样的情理,好的商机、有做产品的能力,有对的人做出受欢迎的产品。
将来的云计算基础设施肯定是处于多维异构的状态。多维是三维,硬件是异构的、基础设施是异构的(私有云和公有云)、业务也是异构的,不光跑一些非常简单的无状态服务也要跑有状态工作,包含在线业务、离线业务等等。
咱们心愿在多维异构的层面为用户提供一站式的通用的基础架构平台,这是 TKEStack 的愿景。
TKEStack 在往年 10 月公布了 1.4 版本,次要的外围点包含利用市场、导入集群反对装置插件,也有集群小版本升级性能逐步上到 TKEStack 中,同时修复了大量体验相干用户反馈问题。
往年 12 月,TKEStack 还会在几个重要的点进行降级,比方大数据组件的集成,要把腾讯云劣势产品继续和 TKEStack 同步。咱们会在年内把优良大数据套件集成进来,TKEStack 一键就能够部署罕用的大数据套件。对一个集群高可用也是业界的难点,公有云环境有太多不可知的因素,在这个场景里是很麻烦的。
明年,TKEStack 会持续往下层倒退,比方做利用的复制,至多要有残缺应用腾讯云私有云所有产品的能力。
目前,对于 TKEStack 整个平台降级呼声比拟大的是 IPV6,但这一点要等官网 IPV6 的正式反对。明年腾讯的私有云和混合云也会有更丰盛的能力,比方全副的 DNS 服务能够多集群接入,集群迁徙也能够提供更多的工具的办法,更简略无门槛的做整个 K8S 集群的迁徙,或者是做容器化的迁徙,这些能力的晋升能够真正解决许多用户的独特问题。
Q&A
Q:TKE 如何实现服务发现呢?
A: 咱们临时没有额定做更多的服务发现的能力,就是 K8S 原生的 service 服务发现机制,然而下一个版本很快会集成本人的 Service mesh 产品,走云原生的路线。
Q:内部需要都是次要哪里来的呢,都是客户吗?
A: 咱们在 Github 开源,社区中有人提出需要来咱们也有产品的共事来看,会拿出来看是否适宜做,如果适宜也会做进来,当然也分轻重缓急。
Q:大数据组件集成了哪些呢?
A: 以后版本里没有集成,往年年内会争取放上来,会蕴含罕用的大数据、AI 组件,容器化部署会在这个大包里,因为当初还有知识产权相干问题要解决,咱们心愿年内把它集成到 TKEStack 能够一键部署,真正让大家大数据和 AI 业务能够 TKEStack 上跑得更好。
Q:TKEStack 的经营体系是如何建设的?
A: 经营体系刚刚也介绍了,再简略说说,次要是有外部的外围开发者、商业化推动开源产品继续有人做这件事,光几个开发者必定不够,也会去吸引更多人进入,一方面吸引外部技术团队,比方腾讯云其余的部门,他们在容器化过程中也有很多产品能力咱们也会吸引进来,也有多家的商业合作伙伴,商业化方面有些合作伙伴做了好的能力能够反哺给 TKEStack,或者是给 TKEStack 提了一些需要,他就本人实现了,也能够把这部分提交过去,商业合作伙伴也在继续为 TKEStack 做奉献。
内部的用户也是当初重点在发力想吸引更多用户进入跟咱们一起建设,对于一个容器平台这么大的我的项目,咱们心愿有更多的人参加进来可能把整个产品做得更欠缺,接下来正在酝酿一些流动,比方开源奖赏相干流动,比方退出凋谢原子基金会也心愿其余的用户能够参加到 TKEStack 中来。
Q:求教下老师 TKEStack 是如何来设计本身的监控的?
A: 目前云监控普罗米修斯就是事实上的规范,所有的云产品和容器产品都是用普罗米修斯做监控,咱们会给每个业务集群装一个普罗米修斯插件。目前业界受欢迎的 thanos 计划外部业务也利用起来了,下一步也会整合到 TKEStack 中来,将来 TKEStack 默认带普罗米修斯,如果是高可用咱们会提供可选的 thanos 计划。
Q:TKE 有几个版本呢?
A: 次要有私有云的容器服务 TKE,以及腾讯专有云外面的 TKE,另外,就是独立部署开源版本 TKEStack;以及基于开源版衍生的商业版本 TKE 企业版、TCNP。专有云 TKE 沿用私有云 TKE 的技术实现和产品状态,依赖私有云或专有云中的 IAAS 资源,例如云主机、VPC。独立部署的版本,基于裸机和开源计划部署,不依赖其余资源。
Q:TKEStack 必须要应用 Kuberentes 吗,和 Kuberentes 有什么关系?
A: 是的,因为是基于 Kuberentes 做下层封装的,Kuberentes 如果间接用就是命令行,能够做各种调度,然而用户怎么登录、控制台如何治理利用、监控哪里看等等,TKEStack 是基于 Kuberentes 做下层封装,把 Kuberentes 真正变成可用的业务平台,这是 Kuberentes 和 TKEStack 之间的关系。
Q:TKE 的 configMap 什么时候能实现主动发现更改,重新部署服务,而不须要人为?
A:TKEStack 反对原生的 K8S configmap 性能,当初只是有一个界面化临时没有做,很快以后正在开发的版本曾经做 UI 化,下一个版本就能够用到跟私有云一样 UI 上的设置的产品能力了。
Q:SmokeTest 和 ReleaseTest 的 test case 有什么区别呢?
A: 每次 PR 提交的级,会次要偏重于测试这次代码提交不会影响整个 TKEStack 的根本外围性能,测试用例工夫也有要求的,尽量在一个小时或者半个小时内实现的,它是简略的测试集、外围测试集,而每次版本公布前也是自动化的 release 测试,目标是为了评估版本,对版本的品质的保障,所以测试集是全方位的保障测试的品质。
Q:和 Racher 有什么区别?
A:Racher 是技术体验做得十分好的产品,十分成熟的产品。TKEStack 的重点方向是根底体验达到可用、不会太谋求特地多细节,因为很难短时间等同级别好用,更多的是异构集群、混合云、插件提供方面重点发力,然而技术体验也要继续保障,应用上的问题欢送大家提出来。
Q:TKE 跨集群 vpc 拜访采纳服务发现有实现么?
A: 当初曾经反对多集群相互间的服务发现,TKEStack 自身没有做咱们也在布局混合云相干产品能力,明年上旬混合云是很大的我的项目,并不是只有服务发现问题要解决,也有网络问题、集群版本不同、插件不同问题等等都要解决,大略明年上半年实现。