【峰会分享】汪洋:Kubernetes容器全栈技术创新和案例分享
2018/07/11百胜软件
本文根据汪洋在“2018百胜软件技术峰会”演讲内容分享整理。
容器技术是近几年兴起的一项新技术,自诞生之日起,就以其轻量化、敏捷和可移植性在云计算而备受关注。什么是容器技术?顾名思义,容器应该算是一个开源的应用容器引擎,就是让开发者们把他们的应用打包在一个可移植的容器当中,然后再发布到任何流行的Linux机器上。容器技术有以下三个特点。
第一个特点,资源利用率会提升。以前的隔离方式,由底层的硬件模拟上升到机器,会对软件有消耗。而容器的隔离是操作系统内核进行隔离,提升了资源利用率。
第二个特点,启动性能非常快。当碰到访问峰值,比如双11的抢购,很短时间内会涌入大量的客户,此时容器可以提前把服务的实力升高,大大提升运维的成本。
第三个特点,环境一致性,简化交付。容器可以把环境变量和依赖库关系打包,解决因环境的依赖性而导致的“我们这里可以跑他们那里跑不了”的问题,大大提升从代码到上线的速度。
容器技术大概是在2014年提出,当时有一家公司要把源码加速过程,通过打包格式加快速度。面对如何将成千上万的应用调动编排好的问题,主要有三个技术,一是Docker技术,还有Kubernetes和CNCF。而现在Kubernetes成为了标准。有两方面原因,一是容器技术本身就是由谷歌内部系统开发出来,有更加悠久的历史,成熟度也非常高。二是Kubernetes是开放的,大家可以在里面贡献代码,可以把自己的问题在里面进行反馈,产品演进非常快。如此,Kubernetes主宰了容器编排调度引擎市场。
2013年,华为PaaS项目启动,当时做的比较多的是CloudFoundry,但因为开放性不够,这个项目后来没有做下去,很多玩家都退了出来。2014年,华为果断从CloudFoundry切到Kubernetes。2016年,华为云容器引擎服务发布,是国内首家基于Kubernetes的共有云容器服务,提供企业级保障;2018年,华为云容器实例服务发布,是全球首家基于Kubernetes的公有云Serverless容器服务,容器免运维、按需使用。
华为云容器服务大概有五款产品:CCE、AOM、SWR、AOS、CCI,Istio是在6月底7月份推出来的。CCE是需要使用K8S构建集群部署业务的服务;AOM能够面向容器集群,提供丰富可定制化的一体化运维平台;SWR是容器镜像存储服务,能做到容器镜像一站式构建、存储与交付;AOS是应用编排服务,可以应用云上自动化编排与设施管理;CCI服务,云容器引擎服务,是基于K8S的Serverless容器服务。还有即将发行的Istio服务,也是基于开源构建,是由谷歌和IBM推出的开源项目。
CCE容器引擎是基于K8S和Docker的软件产品。一方面是很多企业级版本不支持开源产品,应用型、自动化的能力都非常薄弱,华为在商用上的特点做了增强,大大提高集群可用性。另一方面是和华为云做了深度的整合,还有在网络方面做了优化。此外,在存储方面也做了增强。
CCI是基于Kata创建的开源项目。原生支持Kata Container,Docker生态兼容,运用内核虚拟化技术,拥有全面的安全隔离与防护,自有硬件化加速技术,拥有更高的安全容器性能。目前,这一服务可以跟K8S标准API进行对接,其使用与K8S服务没有太大区别,但是可以节省维护集群和节点成本。此外,计费方式不一样,按秒计费,成本也会大幅度降低。
再来说下容器的镜像服务。这个服务一开始是做镜像存储,后面对服务边缘进行了扩展,另外还加上了自动化的构建流水线。容器本身就有镜像打包的优势,会把从源码到上线的整个过程通过容器进行串接。但随着容器规模逐渐增大,启动服务时有上千个要同时进行拉取,会形成网络风暴,大量的占用网络,导致服务起不来,所以这一服务中会有基于P2P的镜像分发增强技术,以保证大规模拉取镜像的效率。
K8S技术还比较新,大家对这个技术理解包括整个国内落地还需要一点时间,欢迎大家同我一起交流。今天就分享到这里,谢谢大家!
上一篇:弘扬工匠精神,追求一流品质
下一篇:【峰会分享】崔宏禹:未来就在眼前