云计算架构图分析

云通信与安全

5人已加入

描述

  云计算——至少作为虚拟化的一种延伸,影响范围已经越来越大。但是,目前云计算还不能支持复杂的企业环境。因此云计算架构呼之欲出,经验表明,在云计算走向成熟之前,我们更应该关注系统云计算架构的细节。基于对现有的一些云计算产品的分析和个人一些经验,总结出一套云计算架构,云计算架构主要可分为四层。

  云计算的架构层

  显示层

  多数数据中心云计算架构的这层主要是用于以友好的方式展现用户所需的内容和服务体验,并会利用到下面中间件层提供的多种服务,主要有五种技术:

  HTML:标准的Web页面技术,现在主要以HTML4为主,但是将要推出的HTML5会在很多方面推动Web页面的发展,比如视频和本地存储等方面。

  JavaScript:一种用于Web页面的动态语言,通过JavaScript,能够极大地丰富Web页面的功能,并且用以JavaScript为基础的AJAX创建更具交互性的动态页面。

  CSS:主要用于控制Web页面的外观,而且能使页面的内容与其表现形式之间进行优雅地分离。

  Flash:业界最常用的RIA(Rich Internet Applications)技术,能够在现阶段提供HTML等技术所无法提供的基于Web的富应用,而且在用户体验方面,非常不错。

  Silverlight:来自业界巨擎微软的RIA技术,虽然其现在市场占有率稍逊于Flash,但由于其可以使用C#来进行编程,所以对开发者非常友好。

  

  中间层

  这层是承上启下的,它在下面的基础设施层所提供资源的基础上提供了多种服务,比如缓存服务和REST服务等,而且这些服务即可用于支撑显示层,也可以直接让用户调用,并主要有五种技术:

  REST:通过REST技术,能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。

  多租户:就是能让一个单独的应用实例可以为多个组织服务,而且保持良好的隔离性和安全性,并且通过这种技术,能有效地降低应用的购置和维护成本。

  并行处理:为了处理海量的数据,需要利用庞大的X86集群进行规模巨大的并行处理,Google的MapReduce是这方面的代表之作。

  应用服务器:在原有的应用服务器的基础上为云计算做了一定程度的优化,比如用于Google App Engine的Jetty应用服务器。

  分布式缓存:通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached。

  基础设施层

  这层作用是为给上面的中间件层或者用户准备其所需的计算和存储等资源,主要有四种技术:

  虚拟化:也可以理解它为基础设施层的“多租户”,因为通过虚拟化技术,能够在一个物理服务器上生成多个虚拟 机,并且能在这些虚拟机之间能实现全面的隔离,这样不仅能减低服务器的购置成本,而且还能同时降低服务器的运维成本,成熟的X86虚拟化技术有 VMware的ESX和开源的Xen。

  分布式存储:为了承载海量的数据,同时也要保证这些数据的可管理性,所以需要一整套分布式的存储系统。

  关系型数据库:基本是在原有的关系型数据库的基础上做了扩展和管理等方面的优化,使其在云中更适应。

  NoSQL:为了满足一些关系数据库所无法满足的目标,比如支撑海量的数据等,一些公司特地设计一批不是基于关系模型的数据库。

  管理层

  这层是为横向的三层服务的,并给这三层提供多种管理和维护等方面的技术,主要有下面这六个方面:

  帐号管理:通过良好的帐号管理技术,能够在安全的条件下方便用户地登录,并方便管理员对帐号的管理。

  SLA监控:对各个层次运行的虚拟机,服务和应用等进行性能方面的监控,以使它们都能在满足预先设定的SLA(Service Level Agreement)的情况下运行。

  计费管理:也就是对每个用户所消耗的资源等进行统计,来准确地向用户索取费用。

  安全管理:对数据,应用和帐号等IT[6]资源采取全面地保护,使其免受犯罪分子和恶意程序的侵害。

  负载均衡:通过将流量分发给一个应用或者服务的多个实例来应对突发情况。

  运维管理:主要是使运维操作尽可能地专业和自动化,从而降低云计算中心的运维成本。

  微软

  云计算架构其中有三层是横向的,分别是显示层、中间件层和基础设施层,通过这三层技术能够提供非常丰富的云计算能力和友好的用户界面,云计算架构还有一层是纵向的,称为管理层,是为了更好地管理和维护横向的三层而存在的。

  显示层多数数据中心云计算架构的这层主要是用于以友好的方式展现用户所需的内容和服务体验,并会利用到下面中间件层提供的多种服务,主要有五种技术:HTML:标准的Web页面技术,现在主要以HTML4为主,但是将要推出的HTML5会在很多方面推动Web页面的发展,比如视频[1]和本地存储等方面。JavaScript:一种用于Web页面的动态语言,通过JavaScript,能够极大地丰富Web页面的功能,并且用以JavaScript为基础的AJAX创建更具交互性的动态页面。CSS:主要用于控制Web页面的外观,而且能使页面的内容与其表现形式之间进行优雅地分离。Flash[2]:业界最常用的RIA(Rich Internet Applications)技术,能够在现阶段提供HTML等技术所无法提供的基于Web的富应用,而且在用户体验[3]方面,非常不错。Silverlight:来自业界巨擎微软[4]的RIA技术,虽然其现在市场占有率稍逊于Flash,但由于其可以使用C#[5]来进行编程,所以对开发者非常友好。

  中间层这层是承上启下的,它在下面的基础设施层所提供资源的基础上提供了多种服务,比如缓存服务和REST服务等,而且这些服务即可用于支撑显示层,也可以直接让用户调用,并主要有五种技术:REST:通过REST技术,能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。多租户:就是能让一个单独的应用实例可以为多个组织服务,而且保持良好的隔离性和安全性,并且通过这种技术,能有效地降低应用的购置和维护成本。并行处理:为了处理海量的数据,需要利用庞大的X86集群进行规模巨大的并行处理,Google的MapReduce是这方面的代表之作。应用服务器:在原有的应用服务器的基础上为云计算做了一定程度的优化,比如用于Google App Engine的Jetty应用服务器。分布式缓存:通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached。

  基础设施层这层作用是为给上面的中间件层或者用户准备其所需的计算和存储等资源,主要有四种技术:虚拟化:也可以理解它为基础设施层的“多租户”,因为通过虚拟化技术,能够在一个物理服务器上生成多个虚拟 机,并且能在这些虚拟机之间能实现全面的隔离,这样不仅能减低服务器的购置成本,而且还能同时降低服务器的运维成本,成熟的X86虚拟化技术有 VMware的ESX和开源的Xen。分布式存储:为了承载海量的数据,同时也要保证这些数据的可管理性,所以需要一整套分布式的存储系统。关系型数据库:基本是在原有的关系型数据库的基础上做了扩展和管理等方面的优化,使其在云中更适应。NoSQL:为了满足一些关系数据库所无法满足的目标,比如支撑海量的数据等,一些公司特地设计一批不是基于关系模型的数据库。

  管理层这层是为横向的三层服务的,并给这三层提供多种管理和维护等方面的技术,主要有下面这六个方面:帐号管理:通过良好的帐号管理技术,能够在安全的条件下方便用户地登录,并方便管理员对帐号的管理。SLA监控:对各个层次运行的虚拟机,服务和应用等进行性能方面的监控,以使它们都能在满足预先设定的SLA(Service Level Agreement)的情况下运行。计费管理:也就是对每个用户所消耗的资源等进行统计,来准确地向用户索取费用。安全管理:对数据,应用和帐号等IT[6]资源采取全面地保护,使其免受犯罪分子和恶意程序的侵害。负载均衡:通过将流量分发给一个应用或者服务的多个实例来应对突发情况。运维管理:主要是使运维操作尽可能地专业和自动化,从而降低云计算中心的运维成本。云计算架构其中有三层是横向的,分别是显示层、中间件层和基础设施层,通过这三层技术能够提供非常丰富的云计算能力和友好的用户界面,云计算架构还有一层是纵向的,称为管理层,是为了更好地管理和维护横向的三层而存在的。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分