据相关调研机构报告数据显示,目前应用容器市场规模将从2016年的 7.62亿美圆增⻓到2020年的27亿美圆。程序员
显而易⻅,引入容器所展示的巨大灵活性有效推进了其采用速率,使企业日益依赖该技术,与此同时容器技术也逐渐成⻓为虚拟机的实力替代品。对此,调研机构Forrester公司曾指出,58%的开发商计划在将来一年内使用容器或正在计划使用容器。 docker
总结一句,使用容器能够帮助企业提升效率、下降成本,甚至在安全性方面有更可靠的保障, 这些易于打包以及轻量级的组件能够与同一虚拟机中的其余组件一块儿运行。安全
此外容器的大力采用也让开发者经过建立虚拟“沙箱”来更快、更好地工做,从而完成编写、管理和操做软件代码,能够在不影响服务器或虚拟机(VM)上运行其余应用程序和系统的状况下就可完成此操做。 服务器
基于此,CSDN云计算特别策划了容器服务盘点系列文章,欲以CSDN中立技术社区专业、客观的角度,探讨当前云服务商眼中的“容器服务”并为开发者选择合适的容器服务提供部分可参考的建议,以帮助其实现容器技术的创新应用等。微信
为此咱们采访了数家提供容器服务的云服务厂商,而本期程序员硬核评测则特别邀请到腾讯云容器产品总监邹辉,详尽分享针对容器发展的真知灼见以及明星产品企业级容器云服务平台TKE的方方面面。网络
腾讯云容器产品总监 邹辉
新技术的关注与实践,不是一朝一夕架构
据阿晶了解,腾讯云投身容器技术的时间挺早,而TKE可谓是其容器服务的明星产品,常常被归纳为“基于原生 Kubernetes 来提供以容器为核心、高度可扩展的高性能容器管理平台”。框架
具体来讲,TKE能够作到无缝衔接腾讯云在计算、网络、存储、以及安全方面的诸多能力,还高效扩展了 网络、GPU虚拟化、特定CRD资源 等 Kubernetes 插件。不但在有效部署、资源调度、服务发现、动态伸缩上面助力完整功能;还提升了大规模容器集群下业务管理的便捷性。将来,腾讯云容器产品总监邹辉也强调,做为腾讯云在容器产品中最核心的部分,TKE的功能层深度优化以及周边生态的演进将成为团队相当重要的事情。less
谈及TKE,咱们会不自觉想到腾讯云原生应用编排平台的创新实践,除了涵盖容器服务层面以外,众所周知的开发运维平台、Service mesh、无服务套件以及基于以上产品的大数据、人工智能解决方案等通通包含其中。据了解,目前该平台在腾讯内部已经成功承载了数以亿计的容器,并支撑众多海量业务平稳运行以及迭代升级,同时还成功赋能互联网、电商、政务、能源等多领域、多方向。运维
对此邹辉总结道:“其实腾讯很早以前就关注了云原生以及容器技术的发展,这注定是将来颇有表明性以及前景的技术方向之一,因此咱们对此的投入力度很大。”
确实!据阿晶了解,不管是产品仍是社区运营,腾讯云对其都是关注颇多。从产品层面出发,腾讯云在容器、微服务以及无服务器领域都有专业的研发团队来进行技术以及业务的支撑,相关产品的推出更是层出不穷。
“相比于其余云厂商,腾讯内部在很早以前就已经研究与容器相关的技术与服务,其中不少成功的业务,例如游戏、微信、广告等都选择运行在容器技术上,能够说容器技术正在支撑着数十亿计的用户”他说。
若是从技术角度着眼,腾讯内部的容器建设也经历了从青涩到成熟的发展路径,这个过程当中不管是在容器的功能仍是稳定性,抑或是资源利用率上都有了逐渐深刻的探讨与研究。将来选择将这些通过实践历练的技术以及经验搬运到云上,并加以开放给外部更多的企业或者我的开发者使用,或许才是腾讯云容器的关键优点所在。
除了产品与技术,在社区领域方面,腾讯云选择在这两年努力拥抱开源的技术趋向,将内部更多、更好的架构与经验、甚至是代码开放给更多用户,并同时加大对云计算社区的投入。
“腾讯内部的容器发展经历了多个阶段,从最先之前的使用Cgroup来进行资源隔离并提高资源利用率,到后面使用docker容器而且基于yarn自研了一套调度框架,Kubernetes技术出现后腾讯内部的容器平台又逐渐切换到Kubernetes技术栈,开始全面拥抱云原生技术。随着容器技术的演进,腾讯内部在开源这里的意识也在发生变化,在开源社区的投入很是大。咱们一方面积极参与到开源社区中去,一方面也会逐渐把腾讯内部一些好的实践及技术推广到社区,给更多的人和企业带来价值。”他补充道。
就目前的市场观察,亲测容器技术已成功迈入成熟期的发展阶段。其中以Kubernetes为表明,版本更新愈来愈快、功能愈加完善且生态也愈来愈健全。此外咱们看到不少监控、微服务以及更上层的部署,还包括不少AI、大数据框架都围绕K8S进行了不少深层次的功能演进。现在整个容器技术已经被普遍接受,不少企业级用户都在准备并实践不少容器方面的技术,各大云厂商也把容器技术做为下一个云市场技术爆发的重要机会点;在社区方面,以K8S为表明的云社区也正逐渐成长为目前业界最红火的技术社区之一。
谈及在此背景下腾讯云关注的技术点,邹辉表示,当下备受关注的Severless技术应该可让容器的发展更进一步,有效帮助企业在微服务的道路上得到更好更强的能力。此外轻量虚拟化技术的出现可以让容器表现的更加稳定与安全,在多租户混合部署的环境下真正释放容器的价值。
容器领域的种种,咱们有所应对
尽管容器技术风生水起,但实际在企业落地的过程当中依旧存在不少问题。值得注意的一点,目前业界不少容器技术都以开源的方式提供给用户,但在实际操做中将开源技术使用起来是一回事儿,用的好又是另一回事儿。
“特别针对一些中小企业,不仅仅是K8S技术自己存在必定的门槛,更大的困难在于要将应用很是好的构建在K8S上,既能享受到K8S带来的便利,也能保证应用的可靠性,这里面须要考量的点不少,须要更多的技术保障和实践的积累。在不少客户使用容器过程当中,每每由于Pod资源设置的不合理,OOM后触发内核与K8S相关组件,最终引起节点Notready,更严重的是若是集群资源预留不够,可能会产生雪崩式效应。因此如何提早发现、规避、自动恢复这些问题是用户在使用K8S过程当中,所须要重点考虑的”他提出。
一样对于中大型用户来讲,怎样将企业中较为传统的复杂架构牵引至以K8S为表明的容器服务上是十分值得探究的。主要仍是由于在这个过程当中,大企业为了达成容器化迁移,必然会为了适配原有习惯或者功能在K8S基础上进行新功能的拓展,例如磁盘隔离、网络隔离、容器IP保持不变等,须要把传统复杂的架构迁移到容器中。
因此在此基础之上,邹辉提出腾讯云在容器领域,会增长更加丰富的基础产品形态。除了目前对外提供的标准K8S服务以外,也会使用轻量虚拟化+virtual kubelet技术,对外提供K8S原生接口这样的Serverless K8S集群,作到在这个弹性集群中用户使用K8S只须要关注容器资源便可,最大程度减小对底层资源的关注。同时腾讯云容器服务,也会将腾讯内部一些好的实践,如TAPP应用管理(用于让kubernetes服务及pod管理更加精细化、发布过程更加可控)、GPU虚拟化等技术对外输出。
除此以外,固然还有很重要的一方面就是容器在使用场景方面的扩展,例如:TKE结合istio为用户提供网格服务;TKE产品与大数据、AI行业相结合,打造以K8S+虚拟化为基础,具有更丰富的AI或者大数据能力的解决方案;在游戏领域,TKE也会与腾讯游戏技术运营部门合做,将腾讯内部的游戏架构容器化所用到的典型经验和技术分享出来,推出容器化的游戏解决方案。
另外,在容器私有云和混合云这里,腾讯云也推出了TKE企业容器平台,给企业提供私有化的容器解决方案。TKE企业版采用与腾讯公有云容器服务一致的架构和管理模式,因此企业在私有化管理容器服务的同时,也可以很是便捷的打通云上的容器服务并得到一致的管理体验,实现混合云部署;在将来,咱们也会进一步扩展这里的功能,实现混合云管理。
腾讯云企业级容器云平台TKE
采访之余,邹辉还针对容器厂商之间的竞争给出了本身的小建议。他代表,做为容器厂商在面对这个需求愈来愈明显且前景愈来愈广阔的市场环境,若是想要把握关键入场券,最重要仍是应该聚焦产品底层的稳定性打磨,这是很是关键的一点。
此外更须要去补全以容器为基础的总体形态,对此阿晶这样理解:除了提供标准的K8S服务来使用,更重要的是提供完备的上层服务来解决弹性等系列需求,让总体变得更有价值。
最后在私有云容器领域,确定须要不断提升容器的交付效率,下降成原本实现更标准化、更流程化的用户体验。阿晶以为这不仅仅是给予容器服务厂商的小贴士,更是腾讯云在容器技术领域须要努力追求的目标之一。
AI、severless以及服务网格,火技术更需保持新鲜度
谈及AI技术关联容器的表现,邹辉还详细列举了腾讯云内部的实践状况。能够确定的一点,目前以AI为表明的新学习框架,都在逐一贯K8S看齐,由于应用容器底层的部署和调度能力可以很方便助力上层框架的运转,关于这一点,在腾讯云内部也确实积累了很多经验。
固然其中的困难也是存在的,例若有些团队可能在推理任务过程当中或者在虚拟过程当中按之前的方式使用GPU,可能就是买一些虚拟机,但与实际的GPU卡的运行效率相比是很是低的,运行与闲置相互交替,成本浪费较大;另外不一样GPU卡的性能差别,以及底层环境异构问题也是AI团队所面临的挑战。腾讯在这几块(成本、性能、异构)作了大量的技术优化,如GPU虚拟化技术、GPU拓扑识别……等等,这是其一。
“此外,咱们的一些AI团队以前部署AI框架及服务时,更多仍是依靠人工来部署及管理底层资源;与容器服务结合后,这些都极大程度解放了他们运维部署方面的工做,带来了不少便利性。”他说。
邹辉在采访过程当中十分确定Severless无服务器技术对容器技术的创新发展,究竟能够起到何种做用? 无服务计算的理念提出,让容器服务的产品形态可以获得更进一步扩展,用户可以真的不用关注底层那些资源,例如节点什么时候该扩容、节点是否故障、节点资源利用率是多少等,让用户从一些烦琐的工做中解放出来,更多关注业务以及架构状况。
此外,腾讯云针对服务网格方面的技术创新呢?据阿晶了解,关于服务网格,目前在腾讯内部也在逐渐推广,居高不下的同时也碰到的了两个最大的问题。
首当其冲的就是性能问题。由于目前技术会对全部的容量作一套额外劫持、解包、分析、再打包这样的过程,因此在性能的优化上腾讯云其实作了挺多研究,比方说istio 数据转发层面与管控层面优化;另外在腾讯内部还有大量的istio扩展协议使用经验,怎么样把这些自定义协议适配到istio,也作了不少工做。
截止阿晶发稿以前,腾讯云已经在云原生技术大会 KubeCon + CloudNativeCon + Open Source Summit(原 LC3)上重磅发布四大云原生技术产品,包括企业级容器服务平台TKE、容器服务网格TKE Mesh、Serverless 2.0、一站式DevOps平台。做为云计算领域的引领者,阿晶以为将来的腾讯云在容器、微服务以及无服务器领域的诸多实践,或将真正开启云原生时代。(本文转载自infoQ)