很遗憾,因您的 浏览器版本过低导致无法获得最佳浏览体验,推荐下 载安装谷歌浏览器!

终于有人把云计算、大数据和 AI 讲明白了(一)

2019-02-13  来自: 云唯IT实训云 计算培训大数据培训 浏览次数:86

一、云计算最初是 实现资源管理的灵活性


我们首先来说云计算云计算最初的 目标是对资源的管理,管理的 主要是计算资源,网络资源,存储资源三个方面。

0基础转行

1.1 管数据中心就像配电脑

什么叫计算,网络,存储资源呢?就说你 要买台笔记本电脑吧,你是不 是要关心这台电脑什么样的CPU啊?多大的内存啊?这两个 我们称为计算资源。

这台电脑要能上网吧,需要有 个网口可以插网线,或者有 无线网卡可以连接我们家的路由器,您家也 需要到运营商比如联通,移动,电信开通一个网络,比如100M的带宽,然后会 有师傅弄一根网线到您家来,师傅可 能会帮您将您的路由器和他们公司的网络连接配置好,这样您 家的所有的电脑,手机,平板就 都可以通过您的路由器上网了。这就是网络。

您可能 还会问硬盘多大啊?原来硬盘都很小,10G之类的,后来500G,1T,2T的硬盘也不新鲜了。(1T是1024G),这就是存储。

对于一 台电脑是这个样子的,对于一 个数据中心也是同样的。想象你 有一个非常非常大的机房,里面堆 了很多的服务器,这些服务器也是有CPU,内存,硬盘的,也是通 过类似路由器的设备上网的。这个时 候的一个问题就是,运营数 据中心的人是怎么把这些设备统一的管理起来的呢?

1.2 灵活就 是想啥时要都有,想要多少都行

管理的 目标就是要达到两个方面的灵活性。哪两个方面呢?比如有 个人需要一台很小很小的电脑,只有一个CPU,1G内存,10G的硬盘,一兆的带宽,你能给他吗?像这种 这么小规格的电脑,现在随 便一个笔记本电脑都比这个配置强了,家里随 便拉一个宽带都要100M。然而如果去一个云计算的平台上,他要想 要这个资源的时候,只要一点就有了。

所以说 它就能达到两个方面灵活性。

  • 第一个 方面就是想什么时候要就什么时候要,比如需 要的时候一点就出来了,这个叫做时间灵活性。

  • 第二个 方面就是想要多少呢就有多少,比如需 要一个 很小很小的电脑,可以满足,比如需 要一个特别大的空间,以云盘为例,似乎云 盘给每个人分配的空间动不动就就很大很大,随时上传随时有空间,永远用不完,这个叫做空间灵活性。

空间灵 活性和时间灵活性,也即我们常说的云计算的弹性。

为了解 决这个弹性的问题,经历了 漫长时间的发展。

1.3 物理设备不灵活

首先第 一个阶段就是物理机,或者说物理设备时期。这个时 期相当于客户需要一台电脑,我们就 买一台放在数据中心里。物理设 备当然是越来越牛,例如服务器,内存动不动就是百G内存,例如网络设备,一个端 口的带宽就能有几十G甚至上百G,例如存储,在数据中心至少是PB级别的(一个P是1024个T,一个T是1024个G)。

然而物 理设备不能做到很好的灵活性。首先它 不能够达到想什么时候要就什么时候要、比如买台服务器,哪怕买个电脑,都有采购的时间。突然用 户告诉某个云厂商,说想要开台电脑,如果使用物理服务器,当时去采购啊就很难,如果说 供应商啊关系一般,可能采购一个月,供应商 关系好的话也需要一个星期。用户等了一个星期后,这时候电脑才到位,用户还 要登录上去开始慢慢部署自己的应用,时间灵活性非常差。第二是 空间灵活性也不行,例如上述的用户,要一个 很小很小的电脑,现在哪 还有这么小型号的电脑啊。不能为 了满足用户只要一个G的内存是80G硬盘的,就去买 一个这么小的机器。但是如 果买一个大的呢,因为电脑大,就向用户多收钱,用户说 他只用这么小的一点,如果让 用户多付钱就很冤。

1.4 虚拟化灵活多了

有人就想办法了。第一个 办法就是虚拟化。用户不 是只要一个很小的电脑么?数据中 心的物理设备都很强大,我可以从物理的CPU,内存,硬盘中 虚拟出一小块来给客户,同时也 可以虚拟出一小块来给其他客户,每个客 户都只能看到自己虚的那一小块,其实每 个客户用的是整个大的设备上其中的一小块。虚拟化 的技术能使得不同的客户的电脑看起来是隔离的,我看着 好像这块盘就是我的,你看这 呢这块盘就是你的,实际情况可能我这个10G和您这个10G是落在 同样一个很大很大的这个存储上的。

而且如 果事先物理设备都准备好,虚拟化 软件虚拟出一个电脑是非常快的,基本上 几分钟就能解决。所以在 任何一个云上要创建一台电脑,一点几分钟就出来了,就是这个道理。

这个空间灵 活性和时间灵活性就基本解决了。

1.5 虚拟世 界的赚钱与情怀

在虚拟化阶段,最 牛的公司是Vmware,是实现 虚拟化技术比较早的一家公司,可以实现计算,网络,存储的虚拟化,这家公司很牛,性能也做得非常好,然后虚 拟化软件卖的也非常好,赚了好多的钱,后来让EMC(世界五百强,存储厂商第 一 品 牌)给收购了。

但是这 个世界上还是有很多有情怀的人的,尤其是程序员里面,有情怀 的人喜欢做一件什么事情呢?开源。这个世 界上很多软件都是有闭源就有开源,源就是源代码。就是说 某个软件做的好,所有人都爱用,这个软件的代码呢,我封闭 起来只有我公司知道,其他人不知道,如果其 他人想用这个软件,就要付我钱,这就叫闭源。但是世 界上总有一些大牛看不惯钱都让一家赚了去。大牛们觉得,这个技术你会我也会,你能开发出来,我也能,我开发 出来就是不收钱,把代码 拿出来分享给大家,全世界谁用都可以,所有的 人都可以享受到好处,这个叫做开源。

比如最近蒂姆·伯纳斯·李就是 个非常有情怀的人,2017年,他因“发明万维网、第一个 浏览器和使万维网得以扩展的基本协议和算法”而获得2016年度的图灵奖。图灵奖 就是计算机界的诺贝尔奖。然而他 最令人敬佩的是,他将万维网,也就是我们常见的www的技术 无偿贡献给全世界免费使用。我们现 在在网上的所有行为都应该感谢他的功劳,如果他 将这个技术拿来收钱,应该和 比尔盖茨差不多有钱。

例如在 闭源的世界里有windows,大家用windows都得给微软付钱,开源的 世界里面就出现了Linux。比尔盖茨靠windows,Office这些闭 源的软件赚了很多钱,称为世界首富,就有大 牛开发了另外一种操作系统Linux。很多人 可能没有听说过Linux,很多后 台的服务器上跑的程序都是Linux上的,比如大家享受双十一,支撑双十一抢 购的系统,无论是淘宝,京东,考拉,都是跑在Linux上的。

再如有apple就有安卓。apple市值很高,但是苹 果系统的代码我们是看不到的。于是就 有大牛写了安卓手机操作系统。所以大 家可以看到几乎所有的其他手机厂商,里面都装安卓系统,因为苹果系统不开源,而安卓 系统大家都可以用。

在虚拟化软件也一样,有了Vmware,这个软 件非常非常的贵。那就有 大牛写了两个开源的虚拟化软件,一个叫做Xen,一个叫做KVM,如果不做技术的,可以不 用管这两个名字,但是后面还是会提到。

1.6 虚拟化的半自动和云计算的全自动

虚拟化 软件似乎解决了灵活性问题,其实不全对。因为虚 拟化软件一般创建一台虚拟的电脑,是需要 人工指定这台虚拟电脑放在哪台物理机上的,可能还 需要比较复杂的人工配置,所以使用Vmware的虚拟化软件,需要考 一个很牛的证书,能拿到这个证书的人,薪资是相当的高,也可见复杂程度。所以仅 仅凭虚拟化软件所能管理的物理机的集群规模都不是特别的大,一般在十几台,几十台,最多百 台这么一个规模。这一方 面会影响时间灵活性,虽然虚 拟出一台电脑的时间很短,但是随 着集群规模的扩大,人工配 置的过程越来越复杂,越来越耗时。另一方 面也影响空间灵活性,当用户数量多的时候,这点集群规模,还远达 不到想要多少要多少的程度,很可能 这点资源很快就用完了,还得去采购。所以随 着集群的规模越来越大,基本都是千台起步,动辄上万台,甚至几十上百万台,如果去查一下BAT,包括网易,包括谷歌,亚马逊,服务器 数目都大的吓人。这么多 机器要靠人去选一个位置放这台虚拟化的电脑并做相应的配置,几乎是不可能的事情,还是需 要机器去做这个事情。

人们发 明了各种各样的算法来做这个事情,算法的名字叫做调度(Scheduler)。通俗一点的说,就是有一个调度中心,几千台 机器都在一个池子里面,无论用户需要多少CPU,内存,硬盘的虚拟电脑,调度中 心会自动在大池子里面找一个能够满足用户需求的地方,把虚拟 电脑启动起来做好配置,用户就直接能用了。这个阶段,我们称为池化,或者云化,到了这个阶段,才可以称为云计算,在这之 前都只能叫虚拟化。

1.7 云计算的私有与公有

云计算大致分两种,一个是私有云,一个是公有云,还有人 把私有云和公有云连接起来称为混合云,我们暂且不说这个。私有云 就是把虚拟化和云化的这套软件部署在别人的数据中心里面,使用私 有云的用户往往很有钱,自己买地建机房,自己买服务器,然后让 云厂商部署在自己这里,Vmware后来除了虚拟化,也推出了云计算的产品,并且在 私有云市场赚的盆满钵满。所谓公 有云就是虚拟化和云化软件部署在云厂商自己数据中心里面的,用户不 需要很大的投入,只要注册一个账号,就能在 一个网页上点一下创建一台虚拟电脑,例如AWS也即亚马逊的公有云,例如国内的阿里云,腾讯云,网易云等。

亚马逊 呢为什么要做公有云呢?我们知 道亚马逊原来是国外比较大的一个电商,它做电 商的时候也肯定会遇到类似双11的场景,在某一 个时刻大家都冲上来买东西。当大家 都冲上买东西的时候,就特别 需要云的时间灵活性和空间灵活性。因为它 不能时刻准备好所有的资源,那样太浪费了。但也不 能什么都不准备,看着双 十一这么多用户想买东西登不上去。所以需 要双十一的时候,创建一 大批虚拟电脑来支撑电商应用,过了双 十一再把这些资源都释放掉去干别的。所以亚 马逊是需要一个云平台的。

然而商 用的虚拟化软件实在是太贵了,亚马逊 总不能把自己在电商赚的钱全部给了虚拟化厂商吧。于是亚 马逊基于开源的虚拟化技术,如上所述的Xen或者KVM,开发了 一套自己的云化软件。没想到 亚马逊后来电商越做越牛,云平台也越做越牛。而且由 于他的云平台需要支撑自己的电商应用,而传统的云计算厂商多为IT厂商出身,几乎没有自己的应用,因而亚 马逊的云平台对应用更加的友好,迅速发展成为云计算的第 一 品 牌,赚了很多钱。在亚马逊公布其云计算平台财报之前,人们都猜测,亚马逊电商赚钱,云也赚钱吗?后来一公布财报,发现不是一般的赚钱,仅仅去年,亚马逊AWS年营收达122亿美元,运营利润31亿美元。

1.8 云计算的赚钱与情怀

公有云 的第一名亚马逊过得很爽,第二名Rackspace过的就一般了。没办法,这就是 互联网行业的残酷性,多是赢者通吃的模式。所以第二名如果不是云计算行业的,很多人 可能都没听过了。第二名就想,我干不 过老大怎么办呢?开源吧。如上所述,亚马逊 虽然使用了开源的虚拟化技术,但是云 化的代码是闭源的,很多想 做又做不了云化平台的公司,只能眼 巴巴的看着亚马逊挣大钱。Rackspace把源代码一公开,整个行 业就可以一起把这个平台越做越好,兄弟们大家一起上,和老大拼了。

于是Rackspace和美国 航空航天局合作创办了开源软件OpenStack,如图所示OpenStack的架构图,不是云计算行业的 不用弄懂这个图,但是能 够看到三个关键字,Compute计算,Networking网络,Storage存储。还是一个计算,网络,存储的云化管理平台。

当然第 二名的技术也是非常棒的,有了OpenStack之后,果真像Rackspace想象的一样,所有想 做云的大企业都疯了,你能想 象到的所有如雷贯耳的大型IT企业,IBM,惠普,戴尔,华为,联想等等,都疯了。原来云 平台大家都想做,看着亚马逊和Vmware赚了这么多钱,眼巴巴看着没办法,想自己 做一个好像难度还挺大。现在好了,有了这 样一个开源的云平台OpenStack,所有的IT厂商都 加入到这个社区中来,对这个 云平台进行贡献,包装成自己的产品,连同自 己的硬件设备一起卖。有的做了私有云,有的做了公有云,OpenStack已经成 为开源云平台的事实标准。

1.9 IaaS,02资源层面的灵活性

随着OpenStack的技术越来越成熟,可以管 理的规模也越来越大,并且可以有多个OpenStack集群部署多套,比如北京部署一套,杭州部署两套,广州部署一套,然后进行统一的管理。这样整 个规模就更大了。在这个规模下,对于普 通用户的感知来讲,基本能 够做到想什么时候要就什么什么药,想要多少就要多少。还是拿云盘举例子,每个用 户云盘都分配了5T甚至更大的空间,如果有1亿人,那加起来空间多大啊。其实背 后的机制是这样的,分配你的空间,你可能 只用了其中很少一点,比如说它分配给你了5个T,这么大 的空间仅仅是你看到的,而不是真的就给你了,你其实只用了50个G,则真实给你的就是50个G,随着你 文件的不断上传,分给你 的空间会越来越多。当大家都上传,云平台 发现快满了的时候(例如用了70%),会采购更多的服务器,扩充背后的资源,这个对用户是透明的,看不到的,从感觉上来讲,就实现了云计算的弹性。其实有点像银行,给储户 的感觉是什么时候取钱都有,只要不同时挤兑,银行就不会垮。

这里做 一个简单的总结,到了这个阶段,云计算基本上 实现了时间灵活性和空间灵活性,实现了计算,网络,存储资源的弹性。计算,网络,存储我 们常称为基础设施Infranstracture, 因而这 个阶段的弹性称为资源层面的弹性,管理资源的云平台,我们称 为基础设施服务,就是我们常听到的IaaS,Infranstracture As A Service。

二、云计算不光管资源,也要管应用

0基础转行

有了IaaS,实现了 资源层面的弹性就够了吗?显然不是。还有应用层面的弹性。这里举个例子,比如说 实现一个电商的应用,平时十台机器就够了,双十一需要一百台。你可能觉得很好办啊,有了IaaS,新创建 九十台机器就可以了啊。但是90台机器 创建出来是空的啊,电商应 用并没有放上去啊,只能你公司的运维人员一台一台的弄,还是需 要很长时间才能安装好的。虽然资 源层面实现了弹性,但是没 有应用层的弹性,依然灵活性是不够的。

有没有 方法解决这个问题呢?于是人们在IaaS平台之上又加了一层,用于管 理资源以上的应用弹性的问题,这一层通常称为PaaS(Platform As A Service)。这一层 往往比较难理解,其实大致分两部分,一部分 我称为你自己的应用自动安装,一部分 我称为通用的应用不用安装。

我们先来说第一部分,自己的应用自动安装。比如电 商应用是你自己开发的,除了你自己,其他人 是不知道怎么安装的,比如电商应用,安装的 时候需要配置支付宝或者微信的账号,才能别 人在你的电商上买东西的时候,付的钱 是打到你的账户里面的,除了你,谁也不知道,所以安 装的过程平台帮不了忙,但是能 够帮你做的自动化,你需要做一些工作,将自己 的配置信息融入到自动化的安装过程中方可。比如上面的例子,双十一新创建出来的90台机器是空的,如果能 够提供一个工具,能够自动在这新的90台机器 上将电商应用安装好,就能够 实现应用层面的真正弹性。例如Puppet, Chef, Ansible, Cloud Foundary都可以干这件事情,最 新 的容器技术Docker能更好的干这件事情,不做技 术的可以不用管这些词。

第二部分,通用的应用不用安装。所谓通用的应用,一般指 一些复杂性比较高,但是大家都在用的,例如数据库。几乎所 有的应用都会用数据库,但是数 据库软件是标准的,虽然安 装和维护比较复杂,但是无 论谁安装都是一样。这样的 应用可以变成标准的PaaS层的应 用放在云平台的界面上。当用户 需要一个数据库的时候,一点就出来了,用户就可以直接用了。有人问,既然谁安装都一个样,那我自己来好了,不需要 花钱在云平台上买。当然不是,数据库 是一个非常难的东西,光Oracle这家公司,靠数据 库就能赚这么多钱。买Oracle也是要 花很多很多钱的。然而大 多数云平台会提供Mysql这样的开源数据库,又是开源,钱不需要花这么多了,但是维护这个数据库,却需要 专门招一个很大的团队,如果这 个数据库能够优化到能够支撑双十一,也不是 一年两年能够搞定的。比如您 是一个做单车的,当然没 必要招一个非常大的数据库团队来干这件事情,成本太高了,应该交 给云平台来做这件事情,专业的 事情专业的人来自,云平台 专门养了几百人维护这套系统,您只要 专注于您的单车应用就可以了。

要么是自动部署,要么是不用部署,总的来 说就是应用层你也要少操心,这就是PaaS层的重要作用。

0基础转行

虽说脚 本的方式能够解决自己的应用的部署问题,然而不 同的环境千差万别,一个脚 本往往在一个环境上运行正确,到另一 个环境就不正确了。

而容器 是能更好的解决这个问题的。

0基础转行

容器是 Container,Container另一个意思是集装箱,其实容 器的思想就是要变成软件交付的集装箱。集装箱的特点,一是封装,二是标准。

0基础转行

在没有集装箱的时代,假设将货物从 A运到 B,中间要经过三个码头、换三次船。每次都 要将货物卸下船来,摆的七零八落,然后搬 上船重新整齐摆好。因此在 没有集装箱的时候,每次换船,船员们 都要在岸上待几天才能走。

0基础转行

有了集装箱以后,所有的 货物都打包在一起了,并且集 装箱的尺寸全部一致,所以每次换船的时候,一个箱 子整体搬过去就行了,小时级别就能完成,船员再 也不用上岸长时间耽搁了。

这是集装箱“封装”、“标准”两大特 点在生活中的应用。

0基础转行

那么容 器如何对应用打包呢?还是要学习集装箱,首先要 有个封闭的环境,将货物封装起来,让货物之间互不干扰,互相隔离,这样装货卸货才方便。好在 Ubuntu中的LXC技术早 就能做到这一点。

封闭的 环境主要使用了两种技术,一种是 看起来是隔离的技术,称为 Namespace,也即每个 Namespace中的应 用看到的是不同的 IP地址、用户空间、程号等。另一种 是用起来是隔离的技术,称为 Cgroups,也即明 明整台机器有很多的 CPU、内存,而一个 应用只能用其中的一部分。

所谓的镜像,就是将 你焊好集装箱的那一刻,将集装 箱的状态保存下来,就像孙悟空说:“定”,集装箱 里面就定在了那一刻,然后将 这一刻的状态保存成一系列文件。这些文 件的格式是标准的,谁看到 这些文件都能还原当时定住的那个时刻。将镜像 还原成运行时的过程(就是读取镜像文件,还原那个时刻的过程)就是容器运行的过程。

有了容器,使得 PaaS层对于 用户自身应用的自动部署变得快速而优雅。


关键词: 0基础转行   云计算培训   大数据培训   IT培训  
在线客服 ×

职业规划师李老师

18010167689

3月就业学员喜报

平均薪资9417元

只需一个决心

4个月0基础转行

截止开班

仅剩5个名额

友情链接:    彩神帝---首页欢迎你   疯狂彩票---首页欢迎你   河北快三走势图-河北快3综合走势图-彩经网   彩票平台代理   山东11选5走势图