阿里云服务器ECS    
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新 [咨询更多]
阿里云存储OSS
简单易用、多重冗余、数据备份高可靠、多层次安全防护安全性更强、低成本 [咨询更多]
阿里云数据库RDS
稳定可靠、可弹性伸缩、更拥有容灾、备份、恢复、监控、迁移等方面的全套解决方案 [咨询更多]
阿里云安全产品
DDoS高防IP、web应用防火墙、安骑士、sll证书、态势感知众多阿里云安全产品热销中 [咨询更多]
阿里云折扣优惠    
云服务器ECS、数据库、负载均衡等产品新购、续费、升级联系客服获取更多专属折扣 [咨询更多]
云计算的系统架构
2020-8-25    点击量:
  云计算的系统架构     虽然业界对云计算系统的表述有多种不同的观点,但是从本质看,“云”可以被视作一台能力超强的大型计算机。这台依托在网络之上的计算机,拥有海量的硬件资源,具有强大的资源管理能力和应用承载能力,能够高效地运行应用软件。因此,云计算系统和传统的PC系统具有可类比性,如图2-2所示。
  云计算的系统架构
  图2-2 云计算系统和传统PC系统架构对比
  
  通过借鉴传统的PC系统架构特征并进行相关功能的类比,就可以建立云计算系统的层次化架构。图2-2中的两个架构的最底层都是用于支撑上层软件执行的硬件资源层。但与传统PC系统不同的是,云计算系统在这一层中除了具有传统的物理硬件资源外,还具有另外一类特别重要的虚拟化资源。这些基础资源以“池”的方式存在,这意味着它们是“取之不尽,用之不竭”的,能够实现资源的按需配给。传统PC系统的硬件资源组织形态是彼此隔离、相对独立的,每台PC都具有独享的、通过总线在系统内部互连的处理器、内存、磁盘等资源。而云计算系统的目标则是资源规模最大化。它通过网络连接了大量的计算资源和存储资源,进而对它们进行统一的管理。相比物理硬件资源,虚拟化资源在管理上更具有便利性和灵活性,在构建云计算资源池时担当了非常重要的角色。
  
  无论是传统的PC系统还是云计算系统,在硬件资源层之上都需要一个承上启下的层次来提供对底层硬件资源的管理和对上层应用软件执行的支持,这就是操作系统层。和传统的操作系统一样,云操作系统的主要功能包括云基础资源组织与调度、云软件任务管理与控制、云文件系统管理等。
  
  相比传统的操作系统,为满足对系统中的“池”化资源进行统一管理的需求,云操作系统对下层的云基础资源的管理更具复杂性。海量的资源(包括物理硬件资源和虚拟化资源)是云计算系统的优势。特别是虚拟化资源,因为它屏蔽了底层硬件的实现细节,所以更便于管理。这些资源在被使用时可以具有多种灵活的组织方式,总的说来可以分为两类:一类是虚拟机,即将相关的计算资源和存储资源按照传统PC系统的硬件资源层的构成方式组建成一个相对封闭的虚拟机硬件环境;另一类是分布式集群,它在多台物理机或者虚拟机的基础上,进一步利用网络资源将这些资源互连,构成分布式集群,然后通过部署相关管理软件对集群进行统一管理。这两类不同的资源组织方式具有不同的粒度和不同的资源呈现方式,能够实现对硬件资源的有效管理,并为上层云软件的运行提供相应的支持。
  
  云操作系统对软件任务的管理和控制受底层基础资源组织形式的影响。对于虚拟机而言,它的硬件环境在使用上与传统PC系统的硬件环境没有任何差异,通过安装传统的操作系统就可以支持上层传统软件的运行并对其进行管控;对于分布式集群而言,为了提高效率,其上的软件往往是分布式地运行在集群中的不同节点上的,并能通过网络进行通信,因此管控软件运行的复杂度更高。云操作系统对分布式软件的管控除了包括传统的软件任务生命周期管理外,还需要额外关注软件在分布式集群内的调度、通信、同步等问题,而云操作系统在解决这些问题时采用的方法会直接影响分布式集群上软件模型的设计与实现。
  
  为了方便用户对存储资源进行访问和操作,与传统操作系统类似,文件系统也是云操作系统中不可或缺的重要组成部分。同样,根据底层云基础资源在组织形式上的差异,云操作系统的文件系统也有不同的类型。在虚拟机环境中,每台虚拟机的文件系统可以是传统PC操作系统中的文件系统,它在操作系统的控制下管理和应用本台虚拟机所属的磁盘资源;而在分布式集群中,则需要使用分布式文件系统对集群中所有的底层存储资源进行抽象,进而形成统一的文件资源视图供用户使用。无论是哪种形式的文件系统,都是一种对存储资源的管理机制,同时,还要为上层软件提供与文件访问、编辑相关的应用程序接口。
  
  在如图2-2所示的架构中,云操作系统之上是云软件层。与传统的PC系统类似,云软件层也可以被更细地划分为云系统软件和云应用软件。
  
  云系统软件层与传统操作系统中的系统软件层类似,都是由直接支持上层云应用软件执行的功能软件组成的。根据云操作系统层对基础资源进行管理时采用的不同的资源组织方式,云系统软件层的实现也有差异:对虚拟机而言,它提供的硬件环境和操作系统等软/硬件支持与传统PC系统相同,因此部署在其中的系统软件可以包括传统PC系统中的各类系统软件资源,例如应用服务器、数据库等;对分布式集群而言,它所呈现的是由多台传统PC连接而成的分布式集群,因此部署在其上的系统软件主要是用于支持分布式应用软件运行的分布式系统软件,例如分布式数据库等。分布式系统软件强调的是可扩放性,能够根据上层应用的规模进行动态的调整,依赖于底层云基础资源和云操作系统的支持。
  
  云应用软件层也与传统操作系统中的应用软件层类似,它们的上面都运行着用户所需的应用软件。但是,传统PC系统中的应用软件往往只是利用本机资源,或者通过网络,在一个有限的范围内获取一些执行所需的数据。而在云计算系统中,随着硬件部署、资源组织、执行环境及用户需求的变化,应用软件的设计与实现都与传统PC系统有所差异。特别是用户需求的改变,对云计算系统中运行的应用软件产生了深刻的影响。
  
  在参考传统PC系统架构的基础上建立云计算系统的层次化架构是行之有效的方法。根据图2-2的类比,可以发现,两个架构的相应层次在功能上具有相似性,同时,云计算系统具有很多自己的特点。层次化的架构可以帮助读者对云计算系统产生更全面、更清晰的认识,特别是有助于读者理解本书后续对云计算系统的服务模式和关键技术体系的更深入的剖析。
联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠