谈谈我对云计算的认识之基本概念(一)

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010278923/article/details/69666562

云计算这个概念估计已经对于IT人士来说,估计已经是烂大街了。但对于外行来说听起来还是挺模糊的,好像和天上的云有啥关系似的,考虑到部分对云计算不太了解的人,我这里大概说一下基本概念。

什么是云计算

云计算是一种基于互联网的运算,在其中共享资源、软件和信息以一种按需的方式提供给计算机和设备。这些服务被划分成三个层次:基础设施即服务(IAAS)、平台即服务(PAAS)、软件即服务(SAAS)。它们落实到底层软件上面如下图所示:
云计算层级结构
IAAS提供一个完整的操作系统运行环境,完成OS以下全部东西,提供虚拟的CPU、内存、虚拟网卡和虚拟磁盘等,提供操作系统运行的完整的虚拟硬件环境。最出名莫过aws,国内也有像阿里云、腾讯云等IAAS运营商,提供计算、存储和网络服务,开软软件平台有openstack、cloudstack、eucalyptus和opennebula等,当然在社区活和厂商支持下openstack是当下最火的一个管理平台,在后面的blog中会详细介绍。PAAS是最近一两年比较火的一个概念,其实google的App Engine已经做了很多年了,它是一个托管云,用户按照它定义的规范在上面开发,使用它的编程框架和数据库等服务,其实最近PAAS比较火还必须得力于当下另一个东西就是容器,在国内Docker似乎成了容器的代名词,容器技术的发展推动了PAAS,当下开源的平台包括kubernetes、mesos+marathon、swarm、rancher等各种容器管理平台,这些平台或多或少都具有PAAS平台部分特点,但还不能完全称得上是PAAS平台。最后一个是SAAS,它一般是基于浏览器的,提供应用服务,终端用户无须关心数据的存储以及操作系统,由于PAAS到现在还没有具体案例,我用下面这个图介绍了
PAAS
企业不需要单独购买office软件,在浏览器中就可以编辑office并保存到云端而且还可以共享,狭义的理解,如果做到极致应该是用户的电脑只需要一个浏览器就可以完成所有的办公,用户电脑不需要高性能CPU和大存储的硬盘,本地没有任何数据。综合上述,我觉得云计算的发展必须有两个条件:第一是足够的带宽,如果没有通畅网络就不能及时使用云;第二是快速的硬件,只有在硬件有富余的情况下才有必要云化,试想一个已经满负荷的高性能计算场景去云化只能是浪费资源,毕竟云化软件(主要是虚拟化软件)本身也是消耗资源的。

云计算分类

云计算的分类有很多种,可以按照使用者群体划分为行业云,如:金融云、教育云;我个人更倾向按照使用者和提供者的方式划分为:公有云、私有云和混合云。
公有云就是像亚马逊一样提供给全球云计算服务,用户再也无须关心机器运维,在亚马逊数据中心里面的一台服务器可能运行着不同国家的用户的云主机,不得不说亚马逊实际上已经成为公有云的一个标准。私有云是为企业内部构建的云环境,需要企业有自己的运维人员维护这套云环境,但对企业内的用户是透明的,这种环境往往是建立在防火墙之内的,不和其它企业共享资源,这种云一般对安全要求高,如金融企业。混合云就是既有私有云也有公有云,当前应用场景并不多,部分公司会将自己的公共服务放到公有云中,如:培训系统、分享系统,而关乎企业重要数据的放到私有云中。

相关概念

其实云计算不是突然冒出来的一个概念,它之前已经有很多相似的构想以及相关理念了,就像lxc在Docker之前很多年就已经提出有了。
并行计算
并行计算是是大化小,就是将一个大的复杂的任务拆分成多个小简单的任务,分发到不能机器上面并行执行。关于并行和并发简单的理解就是:并行是软件层面提供,并发是多核同时执行,详细的在以后慢慢细说。并行计算一般用于科学计算如:石油探测、仿真模拟等因此属于高性能计算的范畴。常见的并行计算结构包括共享存储的对称多处理器SMP、松耦合的工作站集群COW以及分布式存储的大规模并行机MPP,并行计算需要算法支持,需要解决任务调度以及任务间如果通信等问题。并行计算往往是单数据中心级别的,如国内的天河或者太湖之光等在一个数据中心聚集几万台机器,而云计算的数据中心往往是互通的,亚马逊在全球有多个数据中心,并且一个数据中心有个多个zone,保持物理隔离,防止因机房断电等造成服务不可用。下图是一个并行计算任务运行的示意图
并行计算
网格计算
大家可能对网格计算比较陌生,这个概念比较老。他是将不同类型的资源进行整合,提供一个大的计算机。有个专业的解释:通过利用大量异构计算机(通常为台式机)的未用资源(CPU周期和磁盘存储),将其作为嵌入在分布式电信基础设施中的一个虚拟的计算机集群,为解决大规模的计算问题提供一个模型。所以网格计算更强调是网络连接各种资源,提供一个虚拟集群,而云计算并不关心任何计算模型,一个云平台可以供多个用户使用,而且一个用户可以有多个独立的系统。

展开阅读全文

没有更多推荐了,返回首页