今天,云计算已经变得炙手可热,云的形式带来的全新的应用方式,企业用户部署大型应用既不再需要斥巨资修建自己的数据中心了,也不需要考虑设备的选型和采购了,甚至都不需要有自己的运维人员24小时的进行运维了,只需要花极少的钱就可以购买到相应的云计算服务,剩下的复杂而纷繁的数据中心选址,搭建,运营,维护等任务都交给微软来做。
微软为大家提供了完整而全面的云计算解决方案,让用户真正感受到云就在身边,而不是遥不可及的,可以让用用最熟悉的工具和语言,方便、可靠、快捷的迁移、使用云,用户只需要着力集中精神到具体业务的开发,此时IT行业的协作、沟通、成本控制、技术开发、运营管理等等都将会发生翻天覆地的变化:数万计的服务器随时可以听从调配,任意网络位置的服务器可以被选取,任意地方的访客都会通过微软的CDN网络最便捷的在和自己最快的网络节点取到用户的数据,超乎想象的计算资源任用户随时取用;
用户可以为业务发展的一切做好准备,却不再需要立马准备大笔的花费用于数据中心的搭建,完全可以以更少的投入,完成更多的业务,能耗、人力、办公环境都可以大幅缩减,在全球变暖的情况下,绿色的IT业务将会助力企业以低碳、高效、绿色的形式蓬勃发展;微软云计算能让企业随时调取数据、获取应用程序,沟通协作变得更加的紧密而高效灵活;在全球的任何角落都可以通过连接至云端的工具,以全新的工作方式,展开熟悉的业务。
1 什么是云计算?
云计算(或云)是一个演化中的词汇,它描述了很多现有的计算技术和方法朝各种不同方向的发展。云将应用和信息资源与底层的用以交付它们的基础设施和机制分开。云强化了协作、敏捷、扩展性、可用性,以及通过优化的、更有效率的计算来降低成本的潜能。
更具体地说,云描述了由“资源池”化的计算、网络、信息和存储等组成的服务、应用、信息和基础设施等的使用。这些组件可以迅速策划、置备、部署和退役,并且可以迅速扩充或缩减,提供按需的、效用计算类似的分配和消费模式。
本文的重点是从专门针对IT网络和专业人士的独特视角来裁剪的云的定义。可以用统一分类的一组公用的、简洁的词汇来描述云架构对企业管理架构的影响,在这个统一分类的方法中,云服务和架构可以被分解和细化,给用户一个详实而明确的概念,到底如何才能将云计算平稳的落地与企业的实际应用结合起来。
2 云计算是由什么组成的?
美国国家标准技术研究院(NIST)给云计算定义了五个关键特征、三个服务模型、四个部署模型。如下图1所示,后面将会有详细描述。
2.1 云计算的关键特征
云服务展现出的五个关键特征,代表了它与传统计算方法的关系和区别:
• 按需自服务: 用户可以在需要时自动配置计算能力,例如服务器时间和网络存储,的需要自动计算能力,而无需与服务供应商的服务人员交互。
• 宽带接入:服务能力通过网络提供,支持各种标准接入手段,包括各种瘦或胖客户端平台(例如移动电话、笔记本电脑、或PDA),也包括其它传统的或基于云的服务。
• 虚拟化的资源“池”:提供商的计算资源汇集到资源池中,使用多租户模型,按照用户需要,将不同的物理和虚拟资源动态地分配或再分配给多个消费者使用。虽然存在某种程度上的位置无关性,也就是说用户无法控制或根本无法知道所使用资源的确切物理位置,但是原则上可以在较高抽象层面上来指定位置(例如国家、州、省、或者数据中心)。资源的例子包括存储、处理、内存、网络带宽以及虚拟机等。即使是私有的“云”往往也趋向将资源虚拟“池”化来为组织的不同部门提供服务。
• 快速弹性架构:服务能力可以快速、弹性地供应——在某些情况下自动地——实现快速扩容、快速上线。对于用户来说,可供应的服务能力近乎无限,可以随时按需购买。
• 可测量的服务:云系统之所以能够自动控制优化某种服务的资源使用,是因为利用了经过某种程度抽象的测量能力(例如存储、处理、带宽或者活动用户账号等)。人们可以监视、控制资源使用、并产生报表,报表可以对提供商和用户双方都提供透明。
2.2 云服务模型
云服务的交付可以分为三种模式以及不同的衍生组合。这三种基本类型经常被称为“SPI”模型,其中SPI分别代表软件、平台和基础设施(作为服务)。它们的定义如下:
• 云软件作为服务 (SaaS):提供给用户的能力是使用服务商运行在云基础设施之上的应用。用户使用各种客户端设备通过“瘦”客户界面(例如浏览器)等来访问应用(例如基于浏览器的邮件)。用户并不管理或控制底层的云基础设施,例如网络、服务器、操作系统、存储、甚至其中单个的应用能力,除非是某些有限用户的特殊应用配置项。
• 云平台作为服务 (PaaS):提供给用户的能力是在云基础设施之上部署用户创建或采购的应用,这些应用使用服务商支持的编程语言或工具开发,用户并不管理或控制底层的云基础设施,包括网络、服务器、操作系统、或存储等,但是可以控制部署的应用,以及应用主机的某个环境配置。
• 云基础设施作为服务 (IaaS):提供给用户的能力是云供应了处理、存储、网络,以及其它基础性的计算资源,以供用户部署或运行自己任意的软件,包括操作系统或应用。用户并不管理或控制底层的云基础设施,但是拥有对操作系统、存储和部署的应用的控制,以及一些网络组件的有限控制(例如主机防火墙等)。
2.3 云部署模型
IaaS 是所有云服务的基础,PaaS建立在IaaS之上,而SaaS又建立在PaaS之上。不管利用了哪种服务模型(SaaS、 PaaS、或 IaaS),存在四种云服务部署模型,以及用以解决某些特殊需求而在它们之上的演化变形。
• 公共云。由某个组织拥有,其云基础设施对公众或某个很大的业界群组提供云服务。
• 私有云。云基础设施特定为某个组织运行服务。可以是该组织或某个第三方负责管理,可以是场内服务(on-premises),也可以是场外服务(off-premises)。
• 社区云。云基础设施由若干个组织分享,以支持某个特定的社区。社区是指有共同诉求和追求的团体(例如使命、安全要求、政策或合规性考虑等)。可以是该组织或某个第三方负责管理,可以是场内服务(on-premises),也可以是场外服务(off-premises)。
• 混合云。云基础设施由两个或多个云(私有的、社区的、或公共的)组成,独立存在,但是通过标准的或私有的技术绑定在一起,这些技术促成数据和应用的可移植性。
1. 云服务是如何部署的”与“云服务是在哪里提供的”这样的概念频繁混用所带来的困惑。例如,公共或私有可能被描述成外部或内部云,这种互换不是所有情况下都是准确的。
2. 云服务的使用方式经常被描述成与组织的管理或安全边界位置有关(通常定义在某个防火墙上)。虽然了解云计算中安全边界在哪里很重要,但是,“界限清晰的边界”的这一概念是一个时代性错误。
3. 在企业中正在上演的对信任边界的重组(re-perimeterization)及侵蚀,被云计算放大并加速。无处不在的连接、各种形式的信息交换、无法解决云服务动态特性的传统静态安全控制,这些都要求针对云计算的新思维。针对企业网络的边界重整,
下面的表格总结了这些要点:
私有云是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。该公司拥有基础设施,并可以控制在此基础设施上部署应用程序的方式。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所。
私有云可由公司自己的 IT 机构,也可由云提供商进行构建。在此“托管式专用”模式中,像微软、Sun、IBM这样的云计算提供商可以安装、配置和运营基础设施,以支持一个公司企业数据中心内的专用云。此模式赋予公司对于云资源使用情况的极高水平的控制能力,同时带来建立并运作该环境所需的专门知识。
2.4 私有云优点
1.数据安全 虽然每个公有云的提供商都对外宣称,其服务在各方面都是非常安全,特别是对数 据的管理。但是对企业而言,特别是大型企业而言,和业务有关的数据是其的生命线,是不能受到任何形式的威胁,所以短期而言,大型企业是不会将其至关重要的应用放到公有云上运行的。而私有云在这方面是非常有优势的,因为它一般都构筑在防火墙后。
2. SLA(服务质量)因为私有云一般在防火墙之后,而不是在某一个遥远的数据中心中,所以当公司员工访问那些基于私有云的应用时,它的SLA应该会非常稳定,不会受到网络不稳定的影响,比如上次“暴风影音”事件,导致大规模的断网。
3.充分利用现有硬件资源和软件资源 大家也知道每个公司,特别大公司都会有很多历史遗留的应用,而且历史遗留应用大多都是其核心应用。虽然公有云的技术很先进,但却对历史遗留的应用支持不好,因为很多都是用静态语言编写的,以Cobol,C,C++和Java为主,而现有的公有云对这些语言支持很一般。但私有云在这方面就不错,比如微软推出的AzureAppFabric就能有效地解决私有云落地的问题,以及IBM推出的cloudburst,通过cloudburst,能非常方便地构建基于Java的私有云。而且一些私用云的工具能够利用企业现有的硬件资源来构建云,这样将极大降低企业的花费。
4. 不影响现有IT管理的流程 对大型企业而言,流程是其管理的核心,如果没有完善的流程,企业将会成为一盘散沙。不仅有业务有关的流程非常繁多,而且IT部门的流程也不少,比如那些和Sarbanes-Oxley法案相关的流程,并且这些流程对IT部门非常关键。在这方面,公有云很吃亏,因为假如使用公有云的话,将会对IT部门流程有很多的冲击,比如在数据管理方面和安全规定等方面。而在私有云,因为它一般在防火墙内的,所以对IT部门流程冲击不大。
2.5 微软云技术
Windows Azure是一个“云服务操作系统”,可用作Windows Azure平台的开发、服务托管,以及服务管理环境。Windows Azure可通过Microsoft的数据中心,为开发人员提供按需计算和存储的主机,可缩放,并且可以直接在互联网上管理Web应用程序。 Windows Azure是一个灵活的平台,可支持多种语言,并可以和现有的内部环境整合。作为一个开放的平台,Windows Azure为开发人员提供了多种选择,开发人员可以使用不同语言(.NET、PHP、Ruby、Python,或Java)和开发工具(Visual Studio或Eclipse)构建运行在Windows Azure上的应用程序。通过这种基于标准并且可交互的方式,Windows Azure平台可支持多种互联网协议,包括HTTP、XML、SOAP,以及REST,这些都是数据可移植性的关键基石。Microsoft的Windows Azure服务的主要目标正是提供这一设施。作为庞大的Windows Azure平台的一部分,Windows Azure是在云中运行Windows应用程序以及存储数据的基础。
SSP 2.0 (Self-service portal 2.0)是微软针对企业级私有云而专门设计的产品,它提供基于Web的用户交互界面,功能包括:集中化配置和分配数据中心资源;定制化服务(如虚拟机的快速部署);内置的资源申请/审批流程;基础架构申请和变更管理;自服务管理支持。
微软的云计算战略:包括三大部分,目的是为自己的客户和合作伙伴提供三种不同的云计算运营模式:
第一、微软运营
微软自己构建及运营公有云的应用和服务,同时向个人消费者和企业客户提供云服务。例如,微软向最终使用者提供的Online Services和Windows Live等服务。
第二、伙伴运营
ISV/SI等各种合作伙伴可基于Windows Azure Platform开发ERP、CRM等各种云计算应用,并在Windows Azure Platform上为最终使用者提供服务。另外一个选择是,微软运营在自己的云计算平台中的Business Productivity Online Suite (BPOS)产品也可交由合作伙伴进行托管运营。BPOS主要包括Exchange Online, SharePoint Online, Office Communications Online和LiveMeeting Online等服务。
第三、客户自建
客户可以选择微软的云计算解决方案构建自己的云计算平台。微软可以为用户提供包括产品、技术、平台和运维管理在内的全面支持。
而微软Windows Azure Platform AppFabric的设计就是瞄准私有云而来的,通过消息总线可以很好的黏合各种业务应用。Windows Azure Platform AppFabric是微软继虚拟机组件Windows Azure、数据库组件SQL Azure之后推出的又一重要的云计算组件。Windows Azure支持Web Roles(用于托管Web站点)和Worker Role(用于后端处理),主要应用于云计算;SQL Azure基于SQL Server,具有很多相同的特性,强化了其基于云计算的功能,弱化了其作为客户端软件的身份。而Azure AppFabric作为消息总线,目标是简化身份验证和消息传递,尤其在跨防火墙的时候使其更容易,Azure AppFabric作为私有云,能够更加有效的组合企业应用中涉及到的多种应用,将云的作用发挥到极致,不得不称赞微软在云计算架构设计之初就能考虑到这一关键性的问题。
3 微软Azure AppFabric架构概述
Windows Azure Platform AppFabric是微软为开发者准备的构建和管理复合型应用程序,无论是在服务器或是在云环境中,Azure Appfabric是个消息总线,目标是简化身份验证和消息传递,尤其是在跨防火墙和NAT环境的时候使其更容易。
Azure Platform Appfabric的前身是“.NET Services”提供基于云的服务,帮助开发者通过Windows Azure、Windows Server、和众多其他平台连接至应用程序与服务。经过发展、演化和成熟之后,它包括了Service Bus和Access Control功能。
Windows Azure Platform Appfabric构建与Windows Azure之上, 将云服务与非云端的系统集成的服务,通过提供安全的联通性与访问控制,完成B2B的集成,或连接至远程设备。Service Bus在服务与应用程序之间允许安全的连通性(通过防火墙或网络界限),可以使用在大量通信模式。Access Control Service为网络访问提供了联合的、基于声明的访问控制,开发者可以使用这些服务构建分布式或混合式的应用程序或服务。
2.1 AppFabric 服务总线(Service Bus)概述
服务总线帮助开发者提供松散耦合的服务和应用程序的安全连接,使它们能够使用多种通信方式通过防火墙和网络边界。在服务总线上注册的服务能很容易通过各种网络拓扑被发现和访问。
服务总线的适用范围
用现有的能够和数据库连接Windows Azure应用和SQL Azure数据库
和各类无前提应用桥接
创建复合应用
使用服务总线的好处
能通过防火墙、NAT网关和其他未知网络边界公开程序和服务。
通过公开端点很容易创建很低限制的复合应用,支持多种连接选项和发布、订阅的多播。
友好的、轻量级开发者编程模型,支持标准协议和扩展的Windows Communication Foundation简单标准绑定。
帮助阻止恶意流量和保护用户服务免于拒绝服务攻击。
服务总线的特点
可以不考虑位置,通过稳定的、通过互联网可访问的URL发布服务。
发送者和接受者之间的单向信息服务支持单播和多播分发。
面向连接的全双工线程保证发送者和接受者之间支持双向通信。
面向连接的全双工线程支持点对点(pear-to-paer) 通过NAT创建终端对终端的直接连接。
多发布者与多用户可同时使用该服务的主题管理和事件分发系统。
支持非.NET平台的REST和HTTP访问。
通过DNS和透明无约束的等级分类实现全局命名空间。
在用于允许的情况下支持匿名用户对服务的访问。
2.2 AppFabric 访问控制(Access Control)概述
访问控制帮助用户在应用和服务中创建集成授权,无需复杂编程就能实现基于组织边界考虑的安全应用。凭借简单的规则和要求,访问控制规则可以轻松、灵活的进行配置,以涵盖不同的安全需求和身份管理的各种基础设施。
访问控制的适用范围
可基于现有的身份管理系统、Active Directory服务、其他目录服务或任何基于标准的基础认证机制创建用户帐号。
应用程序可定制的控制和访问级别,每个用户和组
应用与服务总线连接相同的安全级别
访问控制的好处
通过联合身份和访问控制规则为基础的授权使应用程序等同于本地用户帐号管理。
灵活的基于标准的服务,支持多种凭据和依赖方
友好的、轻量级开发者编程模型,基于Microsoft .NET Framework和Windows Communication Foundation。
访问控制的特点
通过简单Web界面或API编程实现安装发行的信任。
通过最小化的编码支持活动目录和其他认证机制。
支持对凭据,包括X.509证书
支持包括REST在内的标准协议
运行在组织边界内外的应用可以依靠服务存在
可验证从数据和连通服务传递的应用和用户请求
4 总结
在云计算的支持下,用户可以按使用付费,从而节省大量的前期投资。此外,在时间周期、灵活性上,用户也更加从容,不必为漫长的审批周期而伤神,从而加快业务的上市速度。就技术的角度而言,由于应用剥离了具体的硬件平台,不仅系统资源利用更加充分,更加节能高效;与此同时,系统管理难度大大降低,更能够充分释放系统的能量,使得系统更加富有弹性。较之通过Internet进行访问,供公众使用的公有云,私有云一般在防火墙之内,专为某企业提供运营服务,因此在安全性、法规遵从以及服务质量方面更加具有保障,也更加容易集成现有应用,降低运营成本。但是公有云成本更低,管理负担更轻,在容量分配等方面更具有优势。
微软认为,未来而互联网世界将会以“云”+“端”组合的形式存在,在这个与云为中心的世界里,用户可以便捷的使用各种形式的“端”访问自己部署在云端的数据和应用,或者访问和使用别人提供的数据和应用,届时数据,应用,甚至是计算能力都如同电力和自来水一样,随时随地接入,按需要使用,按使用付费,而不是事先花大量的资金购买自己都不知道用不用得着,能用多少的具体设备,而这些“端”可以是电脑和手机,甚至是电视等各种可以网络接入的电子设备。用户在使用各种设备访问云中的服务时,得到的也是完全无缝切换的服务体验。与此同时,云计算平台也随着现有的IT和互联网技术以及业务模式的逐渐演变,成功的云计算平台可以最大限度的使用和共享现有软件开发的经验、能力和各种资源。长期以来微软致力于云计算技术和服务的不断创新,在动态数据中心、私用云以及公有云方面开展了左右成效的探索和实践,并坚持让这一切的不懈努力,最终转化为企业切实可用、触手可及的东西。
作者: 付海军
版权:本文版权归作者所有
转载:欢迎转载,为了保存作者的创作热情,请按要求【转载】,谢谢
要求:未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
个人网站: http://txj.lzuer.com/