No.02 ∣ 一根烟功夫揭开云计算真实“庐山本面”
作者 ∣ DY
整理 ∣ DY
提起云计算,大家既熟悉又陌生,即便耳熟能详,但被问起云计算到底是啥的时候,还是会哑口无言,本着为广大朋友尴尬解围的人道主义精神,hahah…我们特意出了一个云计算5W系列推文,帮你破除尴尬魔咒。
大家好,我们是智慧城市研究所(微VX),专注于前沿科技人话解释的百科全书,希望大家多多关注支持。
本篇主要回答第02个问题,揭开云计算的“庐山本面”?
在前面我们乌拉拉的讲了云计算的诞生,妥妥一幅“成本”闹革命的斗争史,错过的小伙伴可以回看《No.01 ∣ 喝口水功夫搞懂云计算为何“一炮走红”》,今天我们继续从两个方面扒扒它的庐山本面。
**云计算的“身世之谜”
No.01 1998-2001年**
云计算的雏形最早出现在1998年,是两个小伙子捣鼓出来的,两个小伙子当时想做一种叫做“搜索引擎”的服务,奈何两人除了有技术头脑,一无所有。
为客户提供搜索服务你得联网吧,联网你得租用商用服务器吧,然而商用服务器贵的一批,两个小伙子只能买已淘汰的CPU、主板,便宜的小容量硬盘,廉价的电源等零件,自行组装服务器。
当他们把这些过时的廉价零件组装的服务器运行起来后,服务器不稳定、反应慢、零件易坏等毛病频繁发生,这又成了令他们头疼的问题。
硬件不够软件来凑,两个小伙子经过一顿猛如虎的编程,还真就利用软件将这些成千上万不可靠的硬件组织成了一个稳定可靠的IT系统,支撑公司的IT运营。
到2000年的时候,这些破破烂烂的服务器已经有了几千台,于是他们把这些破烂服务器用网线连起来,并重新设计了一套新型的运算模式来实现高性能运算,这便是“云计算”的雏形。
有些细心的小伙伴已经猜出来了,没错,这家公司就是Google。
几乎与Google同时,1999年的时候,一家名为Salesforce的公司喊出“No Software”的口号,率先在企业中引入了远程提供服务的概念。
这种模式允许自己的客户通过登录浏览器就能使用salesforce开发的客户关系管理系统,而不用下载任何桌面客户端,从而为现在的软件即服务(SaaS)奠定了基础,并在2001年Salesforce公司推出首个SaaS模式的CRM。
No.02 2002-2009年
2002年,亚马逊的一个供应商建议亚马逊开发一个面向供应商的API接口,供应商可以通过这个接口获取其产品、价格和销售排名。
贝佐斯觉得这是将公司从电商转型技术公司的一个新途径,于是在2002年亚马逊启用了Amazon Web Services(AWS)平台,该平台提供了丰富的API接口,可以让企业将Amazon.com的功能整合到自家网站上。
重点来了,云计算要坐上火箭了
2006年,亚马逊推出了两款产品,S3(Simple Storage Service)和EC2(Elastic Cloud Computer)。使得企业可以通过“租赁”计算容量和处理能力来运行其企业应用程序,EC2自正式发布以来,价值越来越大,已成为Amazon云服务生态系统的基石。
2007年,谷歌发挥了自己在云计算领域的技术积淀,相继推出了Gmail、Google Earth、GoogleMap、Chrome等产品。
这一年在Google的发布会上其CEO施密特第一次提出了“云计算”。他说随着互联网网速的提高和互联网软件的改进,“云计算”能够完成的任务越来越多,90%的计算任务都能够通过“云计算”技术完成。
同一年,IBM推出了“改变游戏规则”的“蓝云”(Blue Cloud)计算平台,为客户带来即买即用的云计算平台。
2009年微软推出Azure云服务测试版,通过在互联网架构上打造新的云计算平台,让Windows由PC延伸到云上。
No.03 2009年-至今
与此同时,国内的BAT厂商也跃跃欲试,最先扛起云计算大旗的并非技术出身的B(百度李彦宏)和T(腾讯马化腾),而是A(阿里马云)。李彦宏和马化腾都表示不看好云计算,偏偏不懂技术的马云扛起了云计算的大旗。
马云说道:“我的理解,云计算最后是一种分享,数据的处理、存储并分享的机制。我们自己公司对云计算是充满信心和希望。我们不是觉得这又找到一个新的矿产,阿里巴巴拥有大量消费数据、支付宝交易数据,我们觉得这些数据对我们有用,对社会更有用。
2008-2009这一年,阿里云的飞天系统可以说是“数据传输问题、计算稳定性问题、处理速度问题一样都不少”。各种错误和bug形式翻新,层出不穷。
连阿里员工都吐槽:明明可以坐高铁,却偏偏要骑自行车去上海;他们的经典吐槽大概是这样:人家的是云计算,我们家的是“人肉云计算”;人家的是“分布式计算”,我们家的是“分步试计算”…
可谁都没能想到,就是这种问题层出不穷,连自己亲爹妈都不看好的孩子,竟然在2010年春节过后的一次版本更新后,稳定的超乎寻常。空气一下安静了。就像修炼绝世武功一样,以前在身体里乱冲乱撞的气息,一下变顺畅了。阿里云终于找到了打通奇经八脉的法门。
阿里云的成功,开始引起其他公司的注意。很多大公司看到阿里云的先例,就此研究自己的云计算技术。
由于阿里已经提前探了路,踩了坑,加之开源技术OpenStack也逐渐成熟
于是大家开始疯狂跟进,百花齐放
2010年,巨头华为正式公布云计算战略。
2012年3月,江湖人称“白帽黑客”的季昕华创办UCloud
2013年9月,就在阿里云宣布突破5K测试的三个月后,腾讯云宣布正式面向全社会开放。
2014年11月,雷军决定All in金山云,并承诺在未来3~5年间向云业务投入10亿美元。
…
后面国内还发生“百云大战”,也是一段奇闻趣事,后续会在其他推文中讲到。
至此云计算横空出世
云计算到底是个啥?
那么知道了云计算的发展历史,那么云计算到底是什么呢?其实我们从前面提到的发展历史中已经能窥见一角。
云计算三个字要拆开来看
“云”就像自来水厂一样,我们可以随时接水,并且不限量,按照自己家的用水量,付费给自来水厂就可以,类比来看,云就是资源的汇聚池,使用者可以随时获取“云”上的资源,按需求量使用,并且可以看成是无限扩展的,只要按使用量付费就可以。
“计算”狭义上来说指底层的物理设施,诸如CPU、内存、网络、硬盘等能够提供算力的物理硬件,广义上来指,其实包括IaaS层、PaaS层和SaaS层。
IaaS层
IaaS层其实就是我们狭义上的计算,是指对计算、网络、存储资源的弹性管理。
什么叫计算、网络、存储资源?
比如你要买台笔记本电脑,是不是要关心这台电脑是什么样的CPU?多大的内存?这两个就被我们称为计算资源。
这台电脑要上网,就需要有插网线的网口,您家也需要到运营商比如联通或电信开通一个网络,然后会有师傅弄一根网线到您家来,师傅可能会帮您将您的路由器和他们公司的网络连接配置好。这就是网络资源。
您可能还会问硬盘多大?过去的硬盘都很小,大小如10G之类的;后来即使500G、1T、2T的硬盘也不新鲜了。(1T是1000G),这就是存储资源。
对于一台电脑是这样,对于一个数据中心也是如此。想象你有一个非常大的机房,里面堆了很多服务器,这些服务器也是有CPU、内存、硬盘的,也是通过类似路由器的设备上网。
满足了硬件的堆砌还不够,你得能弹性的调度才能称之为合格的IaaS层,通过虚拟化和算法调度可以实现对这些硬件的逻辑分配,满足你啥时间要啥时间给,要多大给你多大,就像你使用的网盘一样,底层的支撑就是IaaS层在干的事情。
PaaS层
IaaS层实现了底层资源的弹性调度,但应用的部署还不够弹性,比如12306平时需要10台服务器就够了,到了春节,为了迎接春运大家的抢票流量冲击,得提前扩容90台服务器,满足大家的出行需求,这时候他要怎么做呢?
IaaS层是帮你虚拟出来了90台服务器,但这上面都是空的,没有部署12306应用在上面跑,如果人工一台台部署的话,那可能部署完春运也结束了,那咋办?
于是PaaS层出来了,PaaS层就是在IaaS层上加了一层,就是用于管理资源以上的应用弹性的问题,这一层叫做支撑组件层是比较合适,因为这一层是对SaaS层应用提供支撑的。
如何理解这一层的支撑组件呢?参考刘超的通俗云计算,这一层大概可以分为2类,一类称为“你自己的应用自动安装”,另外一类称为“通用的应用不用安装”。
自己的应用自动安装:比如电商应用是你自己开发的,除了你自己,其他人是不知道怎么安装的。双十一新创建出来的90台机器是空的,如果能够提供一个工具,能够自动在这新的90台机器上将电商应用安装好,就能够实现应用层面的真正弹性。例如Puppet、Chef、Ansible、Cloud Foundary都可以干这件事情。
通用的应用不用安装:所谓通用的应用,一般指一些复杂性比较高,但大家都在用的,例如数据库。几乎所有的应用都会用数据库,但数据库软件是标准的,虽然安装和维护比较复杂,但无论谁安装都一样。这样的应用可以变成标准的PaaS层应用放在云平台的界面上。当用户需要数据库时,一点就出来了,用户可以直接用。
SaaS层
SaaS层相对就比较好理解了,SaaS层主要有2个类别:
第一类就像我们前面在云计算发展历史中提到的Salesforce公司产品一样,所有应用都是云端部署的,客户不需要配置特别好的电脑,仅仅通过登录浏览器就能访问使用,这些产品的维护升级也是在云端完成的,极大的方便了用户的使用体验。
第二类是面向企业产品开发者使用的,比如大数据平台开放出的数据API接口,方便开发者直接调取使用,比如图像识别API、语音识别API等等,这些API接口都是由云厂商提供,他们有大量的数据(比如图像和语音等)来训练自己的平台支撑组件,企业开发者不用自己从0开始,直接拿来就可以嵌入到自己的应用里使用,极大提升了产品的开发效率。
至此,云计算正式揭开了它的“庐山本面”
那就是具备IaaS/PaaS/SaaS层的云计算才是完整的
只说一层那都是对云计算极大的侮辱
而它,会伤心。