不是技术也能看懂云计算大数据人工智能吗,人工云( 四 )


当然第二名的技术也是非常棒的,有了OpenStack之后,果真像Rackspace想的一样,所有想做云的大企业都疯了,你能想象到的所有如雷贯耳的大型IT企业:IBM、惠普、戴尔、华为、联想等都疯了 。原来云平台大家都想做 , 看着亚马逊和VMware赚了这么多钱 , 眼巴巴看着没办法,想自己做一个好像难度还挺大 。现在好了,有了这样一个开源的云平台OpenStack , 所有的IT厂商都加入到这个社区中来,对这个云平台进行贡献,包装成自己的产品,连同自己的硬件设备一起卖 。有的做了私有云,有的做了公有云 , OpenStack已经成为开源云平台的事实标准 。
9 IaaS, 资源层面的灵活性
随着OpenStack的技术越来越成熟,可以管理的规模也越来越大,并且可以有多个OpenStack集群部署多套 。比如北京部署一套、杭州部署两套、广州部署一套,然后进行统一的管理 。这样整个规模就更大了 。在这个规模下,对于普通用户的感知来讲,基本能够做到想什么时候要就什么什么要,想要多少就要多少 。还是拿云盘举例子 , 每个用户云盘都分配了5T甚至更大的空间 , 如果有1亿人,那加起来空间多大啊 。其实背后的机制是这样的:分配你的空间 , 你可能只用了其中很少一点 , 比如说它分配给你了5个T,这么大的空间仅仅是你看到的,而不是真的就给你了,你其实只用了50个G,则真实给你的就是50个G,随着你文件的不断上传,分给你的空间会越来越多 。当大家都上传,云平台发现快满了的时候(例如用了70%),会采购更多的服务器,扩充背后的资源,这个对用户是透明的、看不到的 。从感觉上来讲,就实现了云计算的弹性 。其实有点像银行,给储户的感觉是什么时候取钱都有 , 只要不同时挤兑,银行就不会垮 。
10 总结
这里做一个简单的总结,到了这个阶段,云计算基本上实现了时间灵活性和空间灵活性;实现了计算、网络、存储资源的弹性 。计算、网络、存储我们常称为基础设施Infranstracture, 因而这个阶段的弹性称为资源层面的弹性 。管理资源的云平台,我们称为基础设施服务,也就是我们常听到的 IaaS(Infranstracture As A Service) 。
二、云计算不光管资源,也要管应用

不是技术也能看懂云计算大数据人工智能吗,人工云

文章插图
有了IaaS , 实现了资源层面的弹性就够了吗?显然不是,还有应用层面的弹性 。这里举个例子:比如说实现一个电商的应用,平时十台机器就够了,双十一需要一百台 。你可能觉得很好办啊 , 有了IaaS,新创建九十台机器就可以了啊 。但90台机器创建出来是空的,电商应用并没有放上去,只能让公司的运维人员一台一台的弄,需要很长时间才能安装好的 。虽然资源层面实现了弹性,但没有应用层的弹性 , 依然灵活性是不够的 。
有没有方法解决这个问题呢?人们在IaaS平台之上又加了一层,用于管理资源以上的应用弹性的问题,这一层通常称为PaaS(Platform As A Service) 。这一层往往比较难理解,大致分两部分:一部分笔者称为“你自己的应用自动安装” , 一部分笔者称为“通用的应用不用安装” 。
自己的应用自动安装:比如电商应用是你自己开发的,除了你自己,其他人是不知道怎么安装的 。像电商应用,安装时需要配置支付宝或者微信的账号,才能使别人在你的电商上买东西时,付的钱是打到你的账户里面的 , 除了你,谁也不知道 。所以安装的过程平台帮不了忙,但能够帮你做得自动化,你需要做一些工作,将自己的配置信息融入到自动化的安装过程中方可 。比如上面的例子,双十一新创建出来的90台机器是空的,如果能够提供一个工具,能够自动在这新的90台机器上将电商应用安装好,就能够实现应用层面的真正弹性 。例如Puppet、Chef、Ansible、Cloud Foundary都可以干这件事情,最新的容器技术 Docker 能更好的干这件事情 。通用的应用不用安装:所谓通用的应用 , 一般指一些复杂性比较高,但大家都在用的,例如数据库 。几乎所有的应用都会用数据库,但数据库软件是标准的,虽然安装和维护比较复杂,但无论谁安装都是一样 。这样的应用可以变成标准的PaaS层的应用放在云平台的界面上 。当用户需要一个数据库时 , 一点就出来了,用户就可以直接用了 。有人问,既然谁安装都一个样,那我自己来好了,不需要花钱在云平台上买 。当然不是,数据库是一个非常难的东西,光Oracle这家公司,靠数据库就能赚这么多钱 。买Oracle也是要花很多钱的 。然而大多数云平台会提供MySQL这样的开源数据库 , 又是开源,钱不需要花这么多了 。但维护这个数据库 , 却需要专门招一个很大的团队 , 如果这个数据库能够优化到能够支撑双十一,也不是一年两年能够搞定的 。比如您是一个做单车的,当然没必要招一个非常大的数据库团队来干这件事情,成本太高了,应该交给云平台来做这件事情,专业的事情专业的人来做,云平台专门养了几百人维护这套系统 , 您只要专注于您的单车应用就可以了 。要么是自动部署,要么是不用部署 , 总的来说就是应用层你也要少操心,这就是PaaS层的重要作用 。