机房360首页
当前位置:首页 » 云计算平台 » 微软的云计算平台:Windows Azure platform

微软的云计算平台:Windows Azure platform

来源:机房360 作者:scarlett编辑 更新时间:2013-3-16 10:34:02

摘要:Microsoft公司的软件产品覆盖操作系统、软件开发平向、数据库、办公软件等领域。面对云计算这个可能改变IT产业格局的新机遇,Microsoftt推出的技术主要面向平台层和应用层。在平台层,该公司于2008年10月正式推出了云计算产品Windows Azure platform。Windows Azure platform是运行在Microsoft数据中心,为互联网用户提供的一组云计算服务的集合,这些服务可以被单独使用,也可以被组合使用。

  Microsoft公司的软件产品覆盖操作系统、软件开发平向、数据库、办公软件等领域。面对云计算这个可能改变IT产业格局的新机遇,Microsoftt推出的技术主要面向平台层和应用层。在平台层,该公司于2008年10月正式推出了云计算产品Windows Azure platform。Windows Azure platform是运行在Microsoft数据中心,为互联网用户提供的一组云计算服务的集合,这些服务可以被单独使用,也可以被组合使用。在应用层,Microsoft提供Live服务,包括提供Internet应用的Windows Live和提供办公应用的MiCrosoft Office Live 。下面分别介绍这些产品和服务。

  l·概述

  Windows Azure platform运行在微软的数据中心中,它即是云计算应用的开发平台,又是部署平台,同时也是微软的云计算运营平台。Windows Azure platform由Windows Azure及一组平台层服务构成。Windows Azure platform的基础设施层组件是Windows Azure,它作为云平台的操作系统被安装在提供云服务的数据中心的每台服务器上。WindowsAzure管理着数据中心所有的服务器、存储和网络等资源。Windows Azure platform给云应用层提供的平台层服务包括:(1)Windows Azure platform AppFahric,为基于.NET的云应用和本地应用的开发提供了支持:(2)SOL Azure,方便用户以服务的方式访问和使用云和的Microsoft SOL Server数据库。由于采用了如SOAP初REST等标准的Web通信协议,这些服务能够很好地和用户的应用及其他云平台进行集成。下面将介绍Windows Azure platform平台中的核心组件。

  2·Windows Azure

  Windows Azure是Microsoft云平台上的操作系统,运行在Microsoft的数据中心中。操作系统作为基础设施的调度和管理软件,对构建高效、可靠、可伸缩的云计算平台起着重要的作用。Windows Azure由三部分组成:Fahr;。ControIler、存储服务、计算服务。Fahric ControIler类似虚拟化中虚拟饥监视器的资源管理功能,它能够将数据申心的服务器、网络相存储等资源组成一个逻辑的资源池,统一管理云中资源。存储服务相计算服务是Windows Azure对外提供的服务,它们相互独立,开发者可以根据需要选择自己需要的服务。采用存储服务应用可以从Microsoft公司获得可靠的数据存取及管理服务。计算服务为应用提供了一个可靠、可伸缩的运行环境。开发人员通过使用开发环境,可以快速、高效地开发基于用Windows Azure平台的应用。下面分别介绍Windows Azure中的几个关键部分:Fahric ControIler、存储服务、计算服务。

  Fahric ControIler负责Windows Azure平台所管理的云中各种资源,包括存储设备、服务器、交换机和负载均衡设备的分配、部署、监控、管理、维护和回收。应用被上传到Windows Azure platform后,Fahric ControIler通过读取应用的配置文件,为应用创建虚拟机,并根据硬件资源优化调度策略分配物理资源。每个应用包括至少两个配置文件:服务定义和服务配置。这两个文件描述了应用所需的账户信息、认证信息、存储配置信息及其他资源的需求信息,如需要多少虚拟机实例来运行Web Role Instance服务器,以及需要多少虚拟机实例运行Web Role Instance服务器等。应用部署完成后,Fahric Controller,便立即开始监控应用的状态,以保证应用可靠、稳定地运行。为了使Fabric Controller能够实时地获取应用的状态,所有的虚拟机都预先安装了

  Fabric代理,然后通过这个代理与Fabric Controller进行通信,从而获取应用的实时情况。当检测到虚拟机故障时,Fabric Controller启动新的包含同样服务的虚拟机实例对外提供服务。同样,如果检测到物理机故障导致无法提供服务,Fabric Controller会立即将运行在这台物理机上的所有的虚拟机实时迁移到其他物理机上。

  在存储服务部分,Windows Azure提供的不是一个关系数据库系统,而是提供了针对四种数据结构的存储服务以满足应用的不同需求,这四种数据结构是Blob、表(Table)、队列(Queue)和驱动器(Drive)。Blob存储服务能够支持用户存储数据量大的数据集合,例如图片文件、声音文件等。在Blob存储服务申,每个用户的数据都是按照层次结构存储在和自己账户关联的逻辑存储空间中。每个Blob存储服务用户的数据首先以容器(Container)的粒度进行划分,一个数据容器通常代表了用户对数据的一个分类;每个容器中又可以存储一个或诸多个Blob,一个BIob可能达到几个甚至儿十个GB,为了提高Blob的数据传输效率,每个Blob又可以分为多个Block。在Blob的传输过程中,如果发生数据丢失,只需要重传对应的Block而不是整个Blob。表存储服务用于满足应用存储结构化数据的需求。表由实体(Entity)和属性组成,同样采用层次化的存储结构。每个表包含若干实体,每个实体又由一组属性组成。实体的属性可以是不同的类型,如整数类型、字符串、布尔类型和日期类型等。通过采用虚拟机进行规模伸缩,每个表可以存储数十亿计的实体,表的大小可以达到TB级别。队列存储服务是Windows Azure提供的第三种存储服务,它用于为不同的应用之间或者应用的不同模块之间提供可靠的、持久化的消息服务,例如用于计算服务中Web RoleInslmce和Worker RoIe Instance的通讯。而Drive数据结构是为应用程序和用户提供一个NTFS文件卷,使得应用程序和用户可以通过NTFSAPI来进行文件操作,这样用户可以方便地将已有的基于文件操作的应用迁移到Windows Azure中。

  Windows Azure的存储服务还提供了很多特性来进一步保证数据的可靠性、访问效率和可扩展性。为了保证数据的可靠性,Windows Azure存储的每份数据都会在至少三个物理服务器上进行冗余备份,当某份数据失效的时候,应用可以通过访问备份继续访问数据,同一数据的不同备份之间的一致性是由系统自动维护的。为了提高数据访问的性能,Windows Azure将数据表的数据内容进行分割,分别存储到不同的节点上,并采用并行机制进行访问,从而提高数据的访问效率。为了提高存储的可扩展性,方便不同类型应用的访问需求,WindowsAzure的存储服务支持通过RESTful方式进行访问,以便这些存储服务不仅能够被Azure应用使用,也能更容易地被其他技术平台的应用进行集成。

  Windows Azure提供了一个可伸缩的计算环境。由于虚拟机可以容易地实现资源伸缩调整,因此Windows Azure采用了虚拟机作为Windows Azure平台上应用的运行环境。每个虚拟机中运行的是Microsoft的操作系统Windows Server 2008(64位版本),而虚拟机管理软件是基于Microsoft公司的Hyper-V针对云计算环境进行改造来实现的。Microsoft公司目前提供的Windows Azure 版本支持三种虚拟机类型:一种是Web Role Instance,负责接收客户端的HTTP请求;一种是Web Role Instance,负责从Web Role Instance或者存储队列中接收输人和执行计算,并将计算结果返回给Web Role Instance或者写到指定的存储位置。为了支持应用的伸缩,Web Role Instance被限定为无状态的,从而使得应用能够在负载较重的时候,非常方便地增加Web Role Instance的数量,提高应用文持的并发访问最;当应用负载变小时,也可以方便地减少Web Role Instance而不会对应用的运行产生影响。第三种是VM Instance,类似于一个标准的虚拟机环境,从而使得用户可以直接对虚拟饥进行控制和管理,提供很高的灵活性私通用性,用户也方便把现有的应用非常方便快速地迁移到Windows Azure环境中。

  Windows Azure应用的开发也比较方便。目前Azure提供了集成的开发环境,如Visual Studio或者添加了Windows Azure开发插件的Eclipse,通过这些工具,开发者可以快速地构建Windows Azure应用程序。熟悉Visual Studio的开发者会发现,开发一个Windows Azure上的应用和开发其他熟悉的项目是非常类似的,都需要选择熟悉的语言创建一个新的项目,实现应用的逻辑、调试,以及最后打包发布。不同的是,基于Windows Azure的应用是分布式的(可能包括多个Web Role Instance相Workers Role Instance),所以调试的方式有所不同。目前,系统支持通过日志的方式调试,通过调用系统API来记录应用的状态信息。除此之外,开发者还需要理解,本地环境是一个模拟的环境,当应用开发完成后,需要对服务的配置信息进行修改,如将存储账户和地址等信息替换成生产环境的信息。修改完成后,应用才能进行打包,然后发布到Windows Azure platform上,对外提供服务。

  3·Microsoft Azure platform AppFabric

  Microsoft Azure platform AppFabric是一个基于Web的服务,它是Microsoft 公司对传统单机上的.NET框架的扩展,目标是为用户提供基于标准网络协议的.NET Web应用开发平台,并通过对常规操作及底层细节的封装,简化用户的开发工作,使用户更多地关注于应用的功能和业务流程。Microsoft Azure platform AppFabric服务目前提供的核心模块有两个:访问控制服务(Accees Control Service)和服务总线(Service Bus),这两个模块一个保证了应用之间连接时的安全,一个保证了应用之间的信息的共享和传递。AppFabric还有更多的模块即将推出。

  访问控制服务为Web应用程序提供了用户身份认证相授权的功能,使应用可以定制访问资源的策略。访问控制服务主要有以下优点:(1)提供了SOAP和REST接口,从而可以灵活地与其他云应用或传统的身份机制进行集成,例如企业名录、Windows Live ID等;(2)采用了基于规则的访问控制(Rule Based Access Control)策略,通过不同的规则可以组合出复杂的访问控制策略,满足各种各样的访问控制需求;(3)提供了访问控制策略映射的功能,使得不同的认证和授权服务能够更好地协同工作。

  服务总线类似于SOA架构中的企业服务总线(Enterprise Service Bus,ESB),因此熟悉SOA的用户可以很快地学习并使朋。服务总线提供了服务的注册、查找和访问功能。由于企业内都不同的应用可能会运行在不同的机淋上,因此服务总线还要提供网络地址转换及穿透防火墙的功能。服务总线主要有以下优点:(l)Web服务管理简单高效,通过服务总线统一管理企业内部的Web服务,可以简化服务访问地址和防人墙策略的管理;(2)便于Web服务的共享,用户可以通过服务总线非常容易地查询Web服务的信息,并根据服务总线提供的信息对Web服务进行访问;帕)高安全性,相比于直

  接将提供服务的服务器地址暴露在互联网上,服务总线通过与访问控制服务结合,隐藏服务器的真实地证,从而降低Web服务可能受到的威胁。

  责任编辑:scarlett

  更内容请关注机房360,www.jifang360.com,中国绿色数据中心

本文地址:http://www.jifang360.com/news/2013316/n519445993.html 网友评论: 阅读次数:
版权声明:凡本站原创文章,未经授权,禁止转载,否则追究法律责任。
相关评论
正在加载评论列表...
评论表单加载中...
  • 我要分享
更多
推荐图片