您当前的位置:首页 > 互联网百科 > 云计算

看懂云计算、虚拟化和容器,这一篇就够啦

时间:2019-08-19 17:08:11  来源:  作者:

“云计算”这个词,相信大家都非常熟悉。

作为信息科技发展的主流趋势,它频繁地出现在我们的眼前。伴随它一起出现的,还有这些概念名词——OpenStack、Hypervisor、KVM、Docker、K8S...

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

这些名词概念,全部都属于云计算技术领域的范畴。

对于初学者来说,理解这些概念的具体含义并不是一件容易的事情。

所以,今天这篇文章,将给大家做一个通俗易懂的介绍,解释这些云计算概念以及它们之间的关系,希望对大家入门有所帮助。
 

什么是云计算

在介绍那些古怪名词之前,我先介绍一下云计算

以前电脑被发明的时候,还没有网络,每个电脑(PC),就是一个单机。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

这台单机,包括CPU、内存硬盘、显卡等硬件。用户在单机上,安装操作系统和应用软件,完成自己的工作。

后来,有了网络(Network),单机与单机之间,可以交换信息,协同工作。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

 

再后来,单机性能越来越强,就有了服务器(Server)。人们发现,可以把一些服务器集中起来,放在机房里,然后让用户通过网络,去访问和使用机房里的计算机资源。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

再再后来,小型网络变成了大型网络,就有了互联网(Internet)。小型机房变成了大型机房,就有了IDC(Internet Data Center,互联网数据中心)

当越来越多的计算机资源和应用服务(Application,例如看网页,下电影)被集中起来,就变成了——“云计算(Cloud Computing)”。无数的大型机房,就成了“云端”。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

是不是觉得太简单?别急,开始深入。

云计算的道理是简单的,说白了,就是把计算机资源集中起来,放在网络上。但是,云计算的实现方式,就非常复杂了。

举个例子,如果你只是在公司小机房摆了一个服务器,开个FTP下载服务,然后用于几个同事之间的电影分享,当然是很简单的。

如果是“双11”的淘宝购物节,全球几十亿用户访问阿里巴巴的淘宝网站,单日几十PB(1PB=1024TB=1024×1024GB)的访问量,每秒几百GB的流量……这个,就不是几根网线几台服务器能解决的了。

这时,需要设计一个超大容量、超高并发(同时访问)、超快速度、超强安全的云计算系统,才能满足业务平稳运行的要求。

这才是云计算的复杂之处。

刚才说了,我们把计算机资源放在云端。这个计算机资源,实际上分为好几种层次:

第一层次

是最底层的硬件资源,主要包括CPU(计算资源),硬盘(存储资源),还有网卡(网络资源)等。

第二层次

要高级一些,我不打算直接使用CPU、硬盘、网卡,我希望你把操作系统(例如windowslinux)装好,把数据库软件装好,我再来使用。

第三层次

更高级一些,你不但要装好操作系统这些基本的,还要把具体的应用软件装好,例如FTP服务端软件、在线视频服务端软件等,我可以直接使用服务。

 

这三种层次,就是大家经常听到的IaaSPaasSaaS

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

SaaS: Software-as-a-Service(软件即服务)

PaaS: Platform-as-a-Service(平台即服务)

IaaS: Infrastructure-as-a-Service(基础设施即服务)

 

再补一张图,可能更直观:

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

 

目前主流的云计算服务提供商,例如亚马逊AWS、阿里云、华为云、天翼云、腾讯云,说白了,都是为大家提供以上三个层次的云资源。你想要什么,它们就提供什么。你想要多少,它们就提供多少。

 

继续,继续。

这么多样化多层次的云计算服务,阿里、华为们又是怎么提供的呢?

难道说,是人工安排?——

如果你要八核CPU、16GB内存、500GB硬盘的服务器,阿里临时安排工程师帮你组装?如果你要装centos 7.2(一种类Linux操作系统),MySQL 5.5.60(一种数据库系统),阿里也临时让工程师帮你安装配置?

这显然是不可能的,耗不起人力,也等不起时间。

于是,就有了各种软件和平台,负责对资源进行快速调用和集中管理。

 

什么是虚拟化

 

如果要对物理资源进行管理,第一步,就是“虚拟化”

虚拟化是云计算的基础。简单来说,虚拟化就是在一台物理服务器上,运行多台“虚拟服务器”。这种虚拟服务器,也叫虚拟机(VM,Virtual machine)

从表面来看,这些虚拟机都是独立的服务器,但实际上,它们共享物理服务器的CPU、内存、硬件、网卡等资源。

 

看懂云计算、虚拟化和容器,这一篇就够啦

物理机,通常称为“宿主机(Host)”。虚拟机,则称为“客户机(Guest)”。

谁来完成物理资源虚拟化的工作呢?

就是大名鼎鼎的 Hypervisor 

Hypervisor,汉译过来是“超级监督者”,也叫做VMM(Virtual Machine Monitor,虚拟机监视器)。它不是一款具体的软件,而是一类软件的统称。

Hypervisor分为两大类:

第一类,hypervisor直接运行在物理机之上。虚拟机运行在hypervisor之上。第二类,物理机上安装正常的操作系统(例如Linux或Windows),然后在正常操作系统上安装hypervisor,生成和管理虚拟机。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

 

VMwareKVMXenVirtual Box,都属于Hypervisor。

VMware大家应该很熟悉,就是VMware Workstation。学习Linux的话,很多人都是在windows系统下安装WMware,然后创建Linux虚拟机。

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

但是,真正厉害的,是 KVM(kernel-based virtual machine,基于Linux内核的虚拟机)。它是目前最热门最受追捧的虚拟化方案。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

KVM这样的Hypervisor软件,实际上是提供了一种虚拟化能力,模拟CPU的运行,更为底层。但是它的用户交互并不良好,不方便使用。

于是,为了更好地管理虚拟机,就需要OpenStack这样的云管理平台。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

 

关于OpenStack,它有点像个商店,负责管理商品(计算资源、存储资源、网络资源等),卖给用户,但它本身不制造商品(不具备虚拟化能力),它的商品,来自于KVM。当然,如果不用KVM,也可以用Xen等其它hypervisor。

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

OpenStack的管理界面,比命令行好多了吧?

 

请记住,上面所说的几个概念,包括VM、KVM、OpenStack等,都主要属于IaaS(基础设施即服务)。这个不难理解吧?

 

什么是容器

那么,容器是什么呢?大佬们经常说的Docker和K8S,又是什么呢?

前面我们介绍了虚拟化。人们在使用虚拟化一段时间后,发现它存在一些问题:

不同的用户,有时候只是希望运行各自的一些简单程序,跑一个小进程。为了不相互影响,就要建立虚拟机。如果建虚拟机,显然浪费就会有点大,而且操作也比较复杂,花费时间也会比较长。

而且,有的时候,想要迁移自己的服务程序,就要迁移整个虚拟机。显然,迁移过程也会很复杂。

有没有办法更灵活快速一些呢?

有,这就引入了“容器(Container)”

容器也是虚拟化,但是属于“轻量级”的虚拟化。它的目的和虚拟机一样,都是为了创造“隔离环境”。但是,它又和虚拟机有很大的不同——虚拟机是操作系统级别的资源隔离,而容器本质上是进程级的资源隔离。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

虚拟化 VS 容器

 

而大家常听说的Docker,就是创建容器的工具,是应用容器引擎。

Docker的中文意思,就是码头工人。而它的LOGO,就是一只鲸鱼背着很多货柜箱。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

相比于传统的虚拟机,Docker的优势很明显,它启动时间很快,是秒级,而且对资源的利用率很高(一台主机可以同时运行几千个Docker容器)。此外,它占的空间很小,虚拟机一般要几GB到几十GB,而容器只需要MB级甚至KB级。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

 

除了Docker对容器进行创建之外,我们还需要一个工具,对容器进行编排

这个工具,就是K8S

K8S,就是Kubernetes,中文意思是舵手或导航员。Kubernetes这个单词很长,所以大家把中间8个字母缩写成8,就成了K8S。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

K8S是一个容器集群管理系统,主要职责是容器编排(Container Orchestration)——启动容器,自动化部署、扩展和管理容器应用,还有回收容器。

简单来说,K8S有点像容器的保姆。它负责管理容器在哪个机器上运行,监控容器是否存在问题,控制容器和外界的通信,等等。

通过下面这张K8S系统结构图,就能够看出K8S和容器之间的关系。

 

看懂云计算、虚拟化和容器,这一篇就够啦

 

除了K8S之外,还有很多种容器管理平台,例如ComposeMarathonSwarmMesos等。

Docker和K8S,关注的不再是基础设施和物理资源,而是应用层,所以,就属于PaaS。明白了吧?

好啦,今天就先到这里了。再说下去,估计很多人又要晕啦。

正如文章开头所说,今天主要是介绍KVM、Hypervisor、OpenStack、Docker、K8S这些名词的意思,它们在云计算系统中的位置,以及它们之间的关系。云计算涉及到大量的需求。同一个需求,会有很多不同的技术来实现。同一个技术,往往又有多个不同的厂家互相竞争。所以,概念和名词就会特别多,发展变化也会很快。

不管怎么说,梳理清楚最关键的名词概念,是学好云计算的第一步。(来源:鲜枣课堂)



Tags:云计算   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
周末的A股市场,最为震动的消息莫过于“国资云”概念的传出。据悉,网传天津市国资委下发了一份名为《关于加快推进国企上云工作完善国资云体系建设的实施方案》的文件,引发广泛...【详细内容】
2021-08-31  Tags: 云计算  点击:(116)  评论:(0)  加入收藏
作者:阿里集团 阿里云智能事业群 云原生应用平台来源:华章科技 云原生(Cloud Native)的概念,最早是由Pivotal于2015年提出的,但是即使到了2019年上半年,国内对其的关注依然相对有限...【详细内容】
2021-07-19  Tags: 云计算  点击:(182)  评论:(0)  加入收藏
人类社会可以划分为三个阶段:第一次浪潮为农业阶段,从约1万年前开始;第二阶段为工业阶段,从17世纪末开始;第三阶段为信息化阶段,从20世纪50年代后期开始。 --托夫勒,《第三次浪潮...【详细内容】
2021-06-02  Tags: 云计算  点击:(95)  评论:(0)  加入收藏
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二...【详细内容】
2021-05-14  Tags: 云计算  点击:(128)  评论:(0)  加入收藏
云计算是一种基于互联网的计算新方式,使得个人和企业用户以按需即取、易扩展的方式的获取计算和服务。本文介绍了云计算的基本概念、发展历程及发展现状,总结了云计算的关键技...【详细内容】
2021-04-28  Tags: 云计算  点击:(109)  评论:(0)  加入收藏
一旦你创建了一个群与管理器节点,您就可以添加工作节点。1.打开终端,并在要运行工作程序节点的计算机中SSH。本教程使用的名称worker1。2.运行“创建群”教程步骤中docker s...【详细内容】
2021-04-20  Tags: 云计算  点击:(222)  评论:(0)  加入收藏
图片来源@视觉中国文 | 波波夫上世纪六十年代,科学家John McCarthy在斯坦福大学提出了“从任意地点通过网络访问计算机程序”的设想时,台下听众的反应,可能和今天在推特上看马...【详细内容】
2021-04-16  Tags: 云计算  点击:(103)  评论:(0)  加入收藏
随着云计算的日益普及,企业上云已经成为必然的趋势。作为全球最权威性的IT研究咨询公司,Gartner曾做出一个预测:在2020年前,50%的企业会将业务工作流放到本地需要作为异常事件进...【详细内容】
2021-03-09  Tags: 云计算  点击:(127)  评论:(0)  加入收藏
docker-compose可以使用depends_on选项控制服务启动和关闭的顺序。撰写总是开始和依赖顺序,其中依赖性是通过确定停止容器 depends_on,links,volumes_from,和network_mode: "ser...【详细内容】
2021-02-18  Tags: 云计算  点击:(190)  评论:(0)  加入收藏
转载自 企业网D1Net随着网络攻击者随着技术的进步不断创新,组织采用的云计算服务将面临更多的网络安全威胁。毫无疑问,冠状病毒疫情为网络攻击者创造了更多的攻击机会。根据思...【详细内容】
2021-02-04  Tags: 云计算  点击:(147)  评论:(0)  加入收藏
▌简易百科推荐
作者:阿里集团 阿里云智能事业群 云原生应用平台来源:华章科技 云原生(Cloud Native)的概念,最早是由Pivotal于2015年提出的,但是即使到了2019年上半年,国内对其的关注依然相对有限...【详细内容】
2021-07-19  华章科技    Tags:云原生   点击:(182)  评论:(0)  加入收藏
一、案例概述为了方便对公司办公计算机桌面系统的管理,公司需要搭建一套桌面虚拟化平台。公司运维工程师决定使用Cirtix桌面 虚拟化解决方案。 Citrix XenServer服务器虚拟化...【详细内容】
2021-07-13  虚拟化爱好者    Tags:企业云   点击:(611)  评论:(0)  加入收藏
近日有粉丝问阿里云和华为云的部署区别是啥,其实阿祥没有搭建过阿里云,具体用啥工具部署,部署的步骤和具体方法并不知道(ps:后续如果能找到类似资料,阿祥会给大家分享),所以我这次先...【详细内容】
2021-07-13  信息系统集成Vlog    Tags:阿里云   点击:(136)  评论:(0)  加入收藏
人类社会可以划分为三个阶段:第一次浪潮为农业阶段,从约1万年前开始;第二阶段为工业阶段,从17世纪末开始;第三阶段为信息化阶段,从20世纪50年代后期开始。 --托夫勒,《第三次浪潮...【详细内容】
2021-06-02  云技术    Tags:云计算   点击:(95)  评论:(0)  加入收藏
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二...【详细内容】
2021-05-14    全国产经平台  Tags:云计算开发   点击:(128)  评论:(0)  加入收藏
在当今互联网行业乃至一些大厂,大部分公司都采用敏捷项目管理模式来管理项目,在敏捷十二条宣言中有一条是这样说:“我们的最高目标是,通过尽早和持续地交付有价值的软件来满足...【详细内容】
2021-04-30    云计算AND容器技术  Tags:Jenkins   点击:(167)  评论:(0)  加入收藏
云服务所谓的云服务,云服务可以将企业所需的软硬件、资料都放到网络上,在任何时间、地点,使用不同的IT设备互相连接,实现数据存取、运算等目的。 云服务是一种按需服务1.云服务(C...【详细内容】
2021-04-28  德姐姐科普  今日头条  Tags:云服务   点击:(157)  评论:(0)  加入收藏
云计算是一种基于互联网的计算新方式,使得个人和企业用户以按需即取、易扩展的方式的获取计算和服务。本文介绍了云计算的基本概念、发展历程及发展现状,总结了云计算的关键技...【详细内容】
2021-04-28  云计算那点事    Tags:云计算   点击:(109)  评论:(0)  加入收藏
图片来源@视觉中国文 | 波波夫上世纪六十年代,科学家John McCarthy在斯坦福大学提出了“从任意地点通过网络访问计算机程序”的设想时,台下听众的反应,可能和今天在推特上看马...【详细内容】
2021-04-16    钛媒体APP  Tags:云计算   点击:(103)  评论:(0)  加入收藏
由于边缘计算能让用户在靠近物或数据源头的一侧处理工作负载,极大地提升了在云端的处理效率,因此备受用户青睐。  根据MarketsandMarkets数据分析显示:到2022年,边缘计算市场...【详细内容】
2021-04-07    IT168企业级  Tags:边缘计算   点击:(139)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条