1.1 再谈云计算
我们在《Cloud Foundry:从数字化战略到实现》一书中曾详细讨论过云计算的定义、机理和技术驱动的新商业模式,这里不再重复。作为P层云技术的领先企业和研发团队,我们也在该书中分享了关于P层云存在的必要性和由其带来的云计算的新高潮的观点。这里将着重讨论自《Cloud Foundry:从数字化战略到实现》出版至今P层云的新发展以及对于大数据系统的影响。
1.1.1 云计算由南向转为北向
因为地图中一般把上面标记为北,所以在战略决策讨论中,一般把从下往上看的视角称为北向,从上往下看的视角称为南向。在软件栈中,P层云在I层云的上面,所以由P层云向I层云看齐叫作南向,由I层云向P层云看齐叫作北向。在一个正确的时间点选择一个正确的视角是战略成功的关键。
在Cloud Foundry产品出现和Pivotal公司成立之前,整个云计算行业是南向的。云计算行业的研发集聚在I层云,包括虚拟机、虚拟机动态迁移、网络虚拟化、软件定义的存储乃至整个软件定义的数据中心。分析师虽然提出了P层云,但是大部分云厂商把P层云看作I层云的一个工具集或者服务抽象层,没有一个云厂商真正发布过一款独立的P层云产品能够兼容其他云厂商的I层云服务。
Cloud Foundry第一次作为一个独立的PaaS云产品由VMWare提出,但是早期也只朝南向vSphere产品看齐。一直到Pivotal公司独立于VMWare公司运作以后,行业才看到了Cloud Foundry成为一个独立的PaaS云产品的决心,之后又看到了Cloud Foundry在AWS、Azure和谷歌云等各大云厂商上的兼容。即便如此,分析师在和作者交流的过程中还是会问:“前面的I层云巨头都有类似的一个P层云的功能集,Pivotal公司作为一个云计算的新玩家如何在PaaS云市场胜出?”在作者看来,虽然同为PaaS云产品,但Cloud Foundry的视角却是和其他云厂商的P层云产品完全相反。这就像在PC兴起的年代,虽然每个大型机厂商都有自己的操作系统,但是微软作为一个新公司发明的DOS和Windows操作系统却因为视角的转变最终获得胜出的机会。
从南向转变到北向的云计算行业趋势在2018年变得明朗起来。Pivotal公司的Cloud Foundry产品在500强企业数字化转型中不断得到认可。Pivotal公司也在2018年4月成功登录纽交所,被分析师称为“PaaS第一股”。更为明显的迹象是各个云厂商研发明显由I层云向P层云迁移。P层云的新技术Kubernetes和背后的CNCF(Cloud Native Computing Foundation)基金会的热度空前高涨。前不久,作者应Linux基金会(也是CNCF和Cloud Foundry Foundation的母基金会)邀请参加开放云服务产业专题讨论,探讨如何引导产业将I层云做得更加开放和标准,以迎接P层云的兴起。Pivotal公司的Cloud Foundry和Greenplum系统作为P层云上软件的典范来验证I层云的开放和标准化程度。在Cloud Foundry和Greenplum出现的早期,主要由Pivotal公司和其社群来完成这两个P层云产品在各个I层云上的适配。Linux基金会号召所有云厂商开放和支持I层云的标准,使得P层云产品的适配更加容易和无障碍。这也充分说明了云计算从P层云向I层云兼容的南向视角开始转变为由I层云向P层云适配的北向视角。
1.1.2 P层云的精细化发展
Cloud Foundry和Pivotal公司的成功以及IBM大手笔收购Redhat的举措,使得P层云的热度空前高涨。最近5年,Docker、Kubernetes和Cloud Foundry技术生态圈不断扩充北向视角的P层云,技术不断细化,目前已经形成了如下涵盖容器服务、应用服务和函数服务的架构:
❏在容器技术层面,代表性技术主要有Cloud Foundry为主导的Garden容器技术和Docker容器技术。在容器编排技术方面,除了Cloud Foundry,以谷歌为代表的Kubernetes(缩写为K8s)技术逐渐盛行。在Pivotal公司发行的Cloud Foundry 2.0中也融入了Kubernetes和Docker容器,并且联合谷歌公司和兄弟公司VMWare发布了Pivotal容器服务(Pivotal Container Service, PKS)。
❏在应用服务技术层面,Pivotal Cloud Foundry 2.0把原来的1.0版的PaaS应用服务发布成为Pivotal Application Service(缩写为PAS),继续为开发者提供透明的应用全生命周期管理。
❏在函数服务方面,亚马逊最近推出的Lambda服务最终成就了函数即服务(Function as a Servivce, FaaS)。在FaaS基础上,AWS等云计算服务以比服务器更细粒度的服务和对应的计费被业界称为无服务器计算(Serverless Computing)。随后,谷歌在Knative的基础上推出了谷歌的无服务器计算。Pivotal公司在Knative的基础上推出了Pivotal函数服务(Pivotal Function Service, PFS),PFS也是Pivotal Cloud Foundry 2.0的组成部分。
综上所述,P层云目前的技术构成可以用图1-1表示。
图1-1 P层云的细化和扩展
这里之所以要剖析P层云的层次,是为了帮助读者理解大数据系统在云中部署的实际情况和最新的趋势。
1.1.3 大数据系统在云中部署不断朝南上移
大数据的技术发展动力和商业赋能将在后面的章节展开讨论,本节将讨论云计算技术的发展对Greenplum和Hadoop这样的大数据系统的部署的影响。在图1-1中,大数据系统可以运行在云计算数据中心的裸机硬件、I层云或者P层云的容器服务上。
1)将大数据系统直接运行在硬件上面。因为大数据软件本身的机制,一个好的大数据系统能满足云计算定义:计算资源可以随业务增长的需求而弹性增长。具体细节将在下一节中阐述。国内的公有云厂商为政府和企业提供专有云服务,为其专门部署属于他们自己的硬件环境。
2)将大数据系统运行在公有云或者私有云的IaaS上面。不少公有云上的Hadoop服务就属于这类情况。
3)将大数据系统运行在PaaS云的容器服务上面。截至本书完稿时,Pivotal和阿里云等主流云计算厂商都认为将Greenplum运行在容器层可以有效减轻大数据系统的运维工作。因此,不少公有云服务商喜欢把大数据系统划为P层云服务。
现在,主流云计算厂商都支持以上三种形式的大数据系统的部署。当企业将大数据系统部署不断从硬件和I层云向北迁移至P层云的时候,云计算系统管理和调度的资源粒度更细,大数据系统部署的成本优势和敏捷程度也不断提升。另外,因为P层云的容器的标准化,使得大数据系统更容易实现跨云部署。这种北向迁移的变化表面看没有什么特别之处,事实上这标志着大数据系统开始走向平民化。在后面的章节会谈到,在算力和存储资源提升的基础上,大数据系统模型的准确程度也有所提升。在云计算出现之前,小企业投资和管理上百台服务器组成的大数据系统是不敢想象的。公有云按资源使用量收费的模式,使得小企业运行大数据系统成为可能。例如,不少企业在一个季度结束的时候,在公有云上申请几百台服务器和内置的大数据服务,将这些计算资源开启数周来计算自己的企业数据,以获得对自己企业的商业洞察。P层云带来的更加精细的计费方式和更加标准的服务方式,使得企业可以在整个互联网上快速获得大数据系统运营所需要的资源。云计算从早期I层云的跑马圈地转变到P层云的应用和分析结果导向的精耕细作,这种精益化运作意味着这项技术走向成熟。