每周启用容器达20亿+,谷歌推无服务器架构

Container是史上第一个能将所有应用封装在标准化环境的技术,这是迈向无服务器架构的关键,Kubernetes就是为实现Container大规模部署而生,能让Container丛集建置标准化,分布式App的开发更容易

在NEXT云端大会前一周,Google先释出了Kubernetes 的1.2新版本,这个看似Google为了追赶Container及Docker热潮而生的开源平台,直到Next大会才揭开了它的真正面纱,其实这个项目源自Google已经用了10年的Container技术。

Alphabet执行董事长Eric Schmidt表示,2003年时,Google已经发展到第三代云端平台架构,开始使用Container技术来部署全球架构的云端服务,因此而能催生了如Gmail这类全球规模的云端服务。10年前,Google更发明了用来管理全球最大规模丛集的排程和服务管理工具Borg。

2008年,Google推出了App Engine,让开发者可以快速利用各种云端API来打造自己的应用,这个底层也是Container,但却没有受到开发者的青睐而使用率不佳。因为App Engine平台出现太早,Eric Schmidt表示,「因为这是我们以为开发者应该需要的地方,却不是当时开发者真正需要的地方。」后来Google在2010年推出了VM租用服务,这就是GCP云端平台的诞生。

不过,Google自家服务仍旧部署在可以提供更高弹性、以Container为主的第三代Google平台上,而非是采用较旧VM技术的GCP云端服务(对Google而言)。至今,Google每周启用的Container数量超过了20亿个。

直到现在,Google基础架构副总裁Eric Brewer表示,以Container封装应用、可动态维运、微服务架构导向的云端原生应用风潮开始兴起,Google遂将用来管理和部署大规模Container的Borg和Omega等管理平台的经验,重新开发成了一套开源容器丛集管理软件Kubernetes,并推出以Kubernetes打造的Google云端平台提供的GKE(Google Container Engine)云端服务。

不同于Docker要让Container可用,Eric Brewer表示,Kubernetes的目的是要让Container能用于Production环境,使Container丛集建置可以标准化,让分布式App的开发更容易。

在Kubernetes 1.2新版已可做到单一丛集提供3万个Container的管理能力,也具备了弹性自动化扩充能力。

不过,Eric Brewer认为,更重要的新功能是ConfigMap API。这提供了可程序化和高弹性的部署配置,可以在开发常见的应用部署阶段之前,提供一种新的组合式部署方法称为Construction,在部署阶段仍然可以实时变更Config配置,例如由程序自动依据部署环境在测试环境、Stage或Production阶段来调整不同数据库的配置参数,可以提供比脚本程控或是DSL配置语言更弹性的自动化配置方法。

如此一来,Google云端平台副总裁Brian Stevens表示,开发者只要将容器化后的应用丢上云端,就能自动部署成为全球架构的服务,甚至不需要管理丛集,也根本看不到服务器。Container是史上第一个能将所有应用封装在标准化环境的技术,这是迈向无服务器架构的关键。「尽管目前全球Container使用量不到VM用量的5%,但维运角色(Ops)终究会消失,这是正在发生的事。」

原文发布于微信公众号 - 好雨云(goodrain-cloud)

原文发表时间:2016-04-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算D1net

云计算的可迁移性为什么很难完美实现

导语 可迁移性意味着企业可以将应用程序从一个主机环境迁移到另一个,其包括云平台之间的迁移。容器是一种将应用程序和操作系统封装到可以在支持Docker或Kuber...

3545
来自专栏SDNLAB

既然有了CORD,为什么还要推出vCO(附vCO白皮书下载链接)

OPNFV开源工作组正在开发一个名为虚拟端局(virtual Central Office,vCO)的项目,这一项目与开放网络基金会(ONF)推行的CORD项目...

3625
来自专栏ArrayZoneYour的专栏

微服务革命:应用,数据的容器化

近几年来,微服务架构和基于容器的虚拟化技术已经越来越多地在软件开发社区中被提及。Adrian Cockcroft就是这方面公认的极有远见者之一,他在2014年欧...

1974
来自专栏云计算D1net

开发者应该知道的 OpenStack 背后的设计准则

OpenStack是一种开源产品,得到了一大批志愿者和领薪代码贡献者的支持,它让人们意识到了一种全面审查的架构和一种深思熟虑的设计具有的重要性,这种架构和设计似...

3546
来自专栏phodal

2017 年,我挖的那些开源软件坑

造轮子,是一个程序员的基本装逼技能。这些轮子可以的来源可以是: 我们日常工作中遇到的一些问题,提出的解决方案。 使用某个开源软件的过程中,发现它不能满足我们的需...

2347
来自专栏SDNLAB

VMware打造自己的Linux容器操作系统

VMware打造自己的Linux容器操作系统 20日,VMware启动了一个名为 Photon的项目,一个专门为容器量身打造的Linux操作系统,与其他Linu...

3596
来自专栏Flutter入门到实战

老程序员的10条中肯建议

以下十条建议是一个老程序员给出的建议,句句中肯,希望能引起你的思考,而不是笑笑就过去了。觉得在理,不妨随手点赞收藏转发分享,谢谢~

971
来自专栏北京马哥教育

那些你不知道的爬虫反爬虫套路

爬虫与反爬虫,是一个很不阳光的行业。 这里说的不阳光,有两个含义。 第一是,这个行业是隐藏在地下的,一般很少被曝光出来。很多公司对外都不会宣称自己有爬虫团队,甚...

4036
来自专栏Java面试笔试题

C/S 与 B/S 的区别

1.硬件环境不同:   C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门server提供连接和数据交换服务.   B/S 建立在...

1161
来自专栏Rainbond开源「容器云平台」

Kubernetes在ShareThis生产环境中的实践

1573

扫码关注云+社区

领取腾讯云代金券