深度解读:微软云计算战略面面观云和虚拟化
在21世纪初始的互联网时代,没有人怀疑云计算时代已经在地平线上露出了第一道曙光。然而,对于云计算将最终以怎样的姿态进入人们的工作和生活,却是莫衷一是。
在云计算领域,已经有一些企业开始提供云计算服务,其中包括业界知名的公司。在云计算的模式最终成熟之前,任何一方都有权利来解释它认为即将来临的云计算是什么样子。然而,有一点却是现实的——虽然云计算是一种新兴的计算模式,但它走向成熟是一个演变的过程,它的技术应用也并不是在瞬间横空出世。一句话,云计算必定是从历史中走来。
作为提供信息技术服务的全球领先企业,微软在过去30多年经历了信息技术的每一次重要变革,能够更真切地感受到用户需求的变化,并据此为用户提供基于先进信息技术的产品和服务。这也进一步推动微软与时俱进、坚持投身于信息技术的不断创新,并正在全心全意地致力于推动云计算变革时代的早日来临。
作为全面的云计算解决方案提供商,微软拥有领先的技术、产品和服务,能以成熟的软件平台、丰富的互联网服务经验及多样化的商业运营模式提供全面的云计算解决方案,真正做到让云触手可及。
第一部分 微软的云计算战略与方案
一、微软的新愿景
在互联网时代,微软的愿景是希望借助互联网和软件的力量,为用户创造跨越不同设备的无缝体验。云计算时代的开启加速了这个新愿景的实现。
微软认为,未来的互联网世界将会是“云+端”的组合,在这个以“云”为中心的世界里,用户可以便捷地使用各种终端设备访问云中的数据和应用,这些设备可以是电脑和手机,甚至是电视等大家熟悉的各种电子产品,同时用户在使用各种设备访问云中的服务时,得到的是完全相同的无缝体验。云计算平台是现有IT和互联网技术以及业务模型逐渐演变的结果,而一个成功的云计算平台可以最大限度地发挥现有软件开发经验、能力和各种资源。长期以来,微软致力于云计算技术和服务的不断创新,在动态数据中心、私有云以及公共云等方面开展了卓有成效的探索和实践。
2008年10月,微软发布了自己的公共云计算平台——Windows Azure Platform,由此拉开了微软的云计算大幕。
二、微软的云计算战略及特点
1、微软的云计算战略
微软的云计算战略包括三大部分,目的是为自己的客户和合作伙伴提供三种不同的云计算运营模式:
第一、微软运营:微软自己构建及运营公共云的应用和服务,同时向个人消费者和企业客户提供云服务。例如,微软向最终使用者提供的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等服务。
第三、客户自建:客户可以选择微软的云计算解决方案构建自己的云计算平台。微软可以为用户提供包括产品、技术、平台和运维管理在内的全面支持。
2、微软云计算战略的特点
和其他公司的云计算战略不同,微软的云计算战略有三个典型特点:即软件+服务、平台战略和自由选择。
(1)软件+服务
在云计算时代,一个企业是否就不需要自己部署任何的IT系统,一切都从云中计算平台获取?或者反过来,企业还是像以前一样,全部的IT系统都自己部署,不从云中获取任何的服务?
很多企业认为有些IT服务适合从云中获取,如CRM、网络会议、电子邮件等;但有些系统不适合部署在云中,如自己的核心业务系统、财务系统等。因此,微软认为理想的模式将是“软件+服务”,即企业既会从云中获取必需的服务,也会自己部署相关的IT系统。
“软件+服务”可以简单描述为两种模式:
(一)软件本身架构模式是软件加服务。例如,杀毒软件本身部署在企业内部,但是杀毒软件的病毒库更新服务是通过互联网进行的,即从云中获取。
(二)企业的一些IT系统由自己构建,另一部分向第三方租赁、从云中获取服务。例如,企业可以直接购买软硬件产品,在企业内部自己部署ERP系统,而同时通过第三方云计算平台获取CRM、电子邮件等服务,而不是自己建设相应的CRM和电子邮件系统。
“软件+服务”的好处在于,既充分继承了传统软件部署方式的优越性,又大量利用了云计算的新特性。
(2)平台战略
为客户提供优秀的平台一直是微软的目标。在云计算时代,平台战略也是微软的重点。
在云计算时代,有三个平台非常重要,即开发平台、部署平台和运营平台。Windows Azure Platform是微软的云计算平台,其在微软的整体云计算解决方案中发挥关键作用。它既是运营平台,又是开发、部署平台;上面既可运行微软的自有应用,也可以开发部署用户或ISV的个性化服务;平台既可以作为SaaS等云服务的应用模式的基础,又可以与微软线下的系列软件产品相互整合和支撑。事实上,微软基于Windows Azure Platform,在云计算服务和线下客户自有软件应用方面都拥有了更多样化的应用交付模式、更丰富的应用解决方案、更灵活的产品服务部署方式和商业运营模式。
(3)自由选择
为用户提供自由选择的机会是微软云计算战略的第三大典型特点。这种自由选择表现在以下三个方面:
用户可以自由选择传统软件或云服务两种方式
自己部署IT软件、采用云服务、或者两者都用,无论是用户选择哪种方式,微软的云计算都能支持。
用户可以选择微软不同的云服务
无论用户需要的是SaaS、PaaS还是IaaS,微软都有丰富的服务供其选择。微软拥有全面的SaaS服务,包括针对消费者的Live服务和针对企业的Online服务;也提供基于Windows Azure Platform的PaaS服务;还提供数据存储、计算等IaaS服务和数据中心优化服务。用户可以基于任何一种服务模型选择使用云计算的相关技术、产品和服务。
用户和合作伙伴可以选择不同的云计算运营模式
微软提供多种云计算运营模式。用户和合作伙伴可直接应用微软运营的云计算服务;用户也可以采用微软的云计算解决方案和技术工具自建云计算应用;合作伙伴还可以选择运营微软的云计算服务或自己在微软云平台上开发云计算应用。
三、微软的云计算解决方案
1、微软云计算参考架构
总体而言,云计算可以采用以下的参考架构。
同时,微软提供两种云计算部署类型,即公共云和私有云。
公共云:由微软自己运营,为客户提供部署和应用服务。在公共云中,Windows Azure Platform是一个高度可扩展的服务平台,提供基于微软数据中心的随用随付费的灵活的服务模式。
私有云:部署在客户的数据中心内部,基于客户个性化的性能和成本要求、面向服务的内部应用环境。这个云平台基于成熟的Windows Server和System Center等系列产品,并且能够与现有应用程序兼容。
2、微软的云计算解决方案
微软主要有三类云计算解决方案,即Live和Online解决方案、Windows Azure平台解决方案,以及动态数据中心解决方案。
(1)Live和Online解决方案
微软的云计算应用既有针对消费者的服务,也有针对企业的服务。对于用户而言,这些云计算解决方案对应的客户自有软件(即客户自己购买或构建的软件并安装运行在自己的环境中)都是需求最广、用户最熟悉的应用软件,微软提供相应的云计算应用模式,为用户提供更多的应用模式选择,让应用这些软件服务的用户可以缩减系统建设投资、降低软件升级运维成本、随需随用,而这恰恰是云计算模式的应用优势。微软当前提供的云计算解决方案已包括操作系统、办公软件、即时通讯、邮件、中间件、应用管理软件等系列产品,为消费者和企业用户提供了全面的云计算应用选择。
. 微软针对消费者的服务:
微软针对消费者提供了包括Windows Live、Office Live、Live Messenger、Bing以及Xbox Live等在内的多种服务。上述服务用户都已在大量使用,比如Live Meeting每年用户使用的在线会议时长达50亿分钟;Windows Live ID每天用户登录使用人数达10亿人;Exchange Hosted Services每天处理电子邮件信息20至40亿条等。
. 微软针对企业的服务:
微软针对企业用户的服务为Microsoft Online Services,这是一整套由微软托管运维的向用户提供订阅服务的企业沟通协作解决方案,该企业级服务解决方案能够帮助各种经营规模的企业提高业务经营效率,而无需企业自己维护管理复杂的IT基础架构。针对企业的服务主要包括 Exchange Online, Sharepoint Online, Office communicator Online, Office Live Meeting, Dynamics CRM Online等。
(2)Windows Azure Platform解决方案
Windows Azure Platform 是一个运行在微软数据中心的云计算平台。它包括一个云计算操作系统和一个为开发者提供的服务集合。开发人员创建的应用既可以直接在该平台中运行,也可以使用该云计算平台提供的服务。相比较而言,Windows Azure platform延续了微软传统软件平台的特点,能够为客户提供熟悉的开发体验,用户已有的许多应用程序都可以相对平滑地迁移到该平台上运行。另外Windows Azure Platform还可以按照云计算的方式按需扩展,在商业开发时可以节省开发部署的时间和费用。
Windows Azure platform包括Windows Azure、SQL Azure和Windows Azure platform AppFabric。Windows Azure可看成一个云计算服务的操作系统;SQL Azure是云中的数据库;AppFabric是一个基于Web的开发服务,它可以把现有应用和服务与云平台的连接和互操作变得更为简单。AppFabric让开发人员可以把精力放在他们的应用逻辑上而不是在部署和管理云服务的基础架构上。
Windows Azure
Windows Azure是一个云服务的操作系统,它提供了一个可扩展的开发环境、托管服务环境和服务管理环境,这其中包括提供基于虚拟机的计算服务和基于Blobs、Tables、Queues、Drives等的存储服务。Windows Azure为开发者提供了托管的、可扩展的、按需应用的计算和存储资源,还为开发者提供了云平台管理和动态分配资源的控制手段。Windows Azure是一个开放的平台,支持微软和非微软的语言和环境。开发人员在构建Windows Azure应用程序和服务时,不仅可以使用熟悉的Microsoft Visual Studio,Eclipse等开发工具,同时Windows Azure还支持各种流行的标准与协议,包括SOAP、REST、XML、和HTTPS等。
Windows Azure主要包括三个部分,一是运营应用的计算服务;二是数据存储服务;三是基于云平台进行管理和动态分配资源的控制器(Fabric Controller)。
.计算服务
计算服务能够运行多种不同的应用,并支持大量并发用户的应用。Windows Azure提供计算服务的方式是根据需要把计算任务同时分配到多台虚拟服务器上。Windows Azure虚拟机运行64位的Windows Server 2008,由Hyper-V产品进行云中改造而来。开发者只要通过浏览器接入Windows Azure门户,用Windows Live ID进行注册登录,就可以开始使用平台提供的服务。
Windows Azure应用包括Web Role Instance,Worker Role Instance和VM Instance,他们各自运行在不同类型的虚拟机中。
Web Role Instance可以接受来自HTTP或HTTPS的需求,它运行在一个包括互联网信息服务(Internet Information Services,简称IIS)的虚拟机中,开发者能够运用ASP.NET、WCF、或其他与IIS相兼容的.NET技术创建Web Role Instance。同时,开发者也可以运用其他非.NET架构技术来创建、上传和运行应用,比如PHP。此外,Windows Azure提供负载均衡来实现基于Web Role Instance的相同应用的需求扩展。
Worker Role Instance与Web Role Instance不同,它不能直接接受来自外部网络的连接,但它能读取来自Queue存储的信息。Worker Role Instance可被视为一个批处理任务,通过一个具体方法来实现。开发者可以同时使用Web Role Instance和Worker Role Instance或二者之一来创建一个Windows Azure应用。
为了给用户提供更多的控制,同时也降低把部分现有应用迁移到Windows Azure的难度,Windows Azure还提供了一个VM Role。VM Role可以让用户自己直接控制和管理VM的环境,同时又可以充分利用Windows Azure平台带来的各种好处。
. 存储服务
Windows Azure 存储不是一个关系型数据系统,并且它的查询语言也不是SQL,它主要被设计用来支持建于Windows Azure上的应用,它提供更简单容易扩展的存储。存储服务应用可以通过很多不同方式来运用数据,Windows Azure Storage服务提供了多种选择,包括Blobs、Tables、Queues和Drives。
Windows Azure存储数据最简单的方法是运用Blobs。Blobs非常便于存储二进制数据,比如JPEG图片或MP3文档等多媒体数据。Blobs适用于部分应用,但它对数据缺乏结构化,为了让应用能够以更易获取的方式来使用数据,Windows Azure Storage服务提供了Tables。它最大的不同之处是可扩展存储,通过多个虚拟机对分布式数据进行扩展和收缩,这比使用一个标准的关系型数据库更为有效。Blobs和Tables都是用于存储和接入数据,Queues则不同,Queues的主要功能是提供一种Web Role Instance和Worker Role Instance沟通的方式。而Drives的主要作用是为Windows Azure应用程序提供一个NTFS文件卷,这样应用程序可以通过NTFS API来访问存储的数据。提供这种Drives存储方式使得迁移已有应用程序到Windows
Azure的过程变得更为平滑。无论数据以Blobs、Tables、Queues或Drives任何方式存储,Windows Azure Storage都会将所有数据复制三次,任何一个拷贝的丢失都不是致命的,任何一个应用都能够保证立即准确读取原始数据信息。
Windows Azure platform AppFabric
Windows Azure platform AppFabric为本地应用和云中应用提供了分布式的基础架构服务。在云计算中存储数据与运行应用都重要,但是我们还需要一个基于云的基础架构服务。这个基础架构服务应该既可以被客户自有软件应用,又能被云服务应用。Windows Azure platform AppFabric就是这样一个基础架构服务。AppFabric能够使客户自有应用与云应用之间进行安全联接和信息传递。它使得在云应用和现有应用或服务之间的联接及跨语言、跨平台、跨不同标准协议的互操作变得更加容易,并且与云提供商或系统平台无关。AppFabric目前主要提供互联网服务总线(Service Bus)和访问控制(Access Control)服务。
SQL Azure
SQL Azure是一个云的关系型数据库,它可以在任何时间提供客户数据应用。SQL Azure基于SQL Server技术构建,由微软基于云进行托管,提供的是可扩展、多租户、高可用的数据库服务。SQL Azure Database帮助简化多数据库的供应和部署,开发人员无需安装、设置数据库软件,也不必为数据库打补丁或进行管理。SQL Azure为用户提供了内置的高可用性和容错能力,且无需客户进行实际管理。SQL Azure Database支持TDS和Transact - SQL(T - SQL),客户可以使用现有技术在T – SQL上进行开发,还可以使用与现有的客户自有数据库软件相对应的关系型数据模型。SQL Azure Database提供的是一个基于云的数据库管理系统,它能够整合现有工具集,并提供与客户自有软件的对应性。
(3)动态云解决方案
动态云解决方案是微软提供的基于动态数据中心技术的云计算优化和管理方案。企业可以基于该方案快速构建面向内部使用的私有云平台,服务提供商也可以基于该方案在短时间内搭建云计算服务平台对外提供服务。微软动态云能够让用户自己动态管理数据中心的基础设施(包括服务器、网络和存储等),包括开通、配置和安装等。其核心价值在于,它可以帮助用户提高IT基础设施资源的利用效率,提升基础设施的应用和管理水平,实现计算资源的动态优化。
微软动态云解决方案能够帮助企业创建虚拟环境来运行应用,用户可以按照需要弹性分配适当的应用配置,并且支持动态扩展。具体功能特点包括部署、24×7监控、优化、保护和灵活适配五个方面。其中,部署功能包括部署服务器、网络和存储服务等资源;灵活的自我管理。24×7监控功能包括收集运行情况数据来更好地满足SLA需要,监控资源利用情况;客户自我监控。优化功能包括持续监控和在不影响或少影响应用运行的情况下主动根据运行需要来调整和迁移服务器;根据需要分配“合适”的资源,不超配和低配。保护功能包括防病毒、垃圾访问过滤和防火墙等;应用和数据备份;保证99.9%正常运行时间和基础设施的物理安全。灵活适配功能包括容易调整环境、部署新资源;存储、带宽等根据需要可以动态调整;支持不同虚拟技术,并可以管理不同类型的虚拟机。
具体而言,微软动态云解决方案包括面向两类不同对象的解决方案:
面向企业客户方案(基于Dynamic Data Center Toolkit for Enterprise等产品)
面向服务提供商方案(基于Dynamic Data Center Toolkit for Hoster等产品)
Dynamic Data Center Toolkit for Enterprise 是微软提供给企业自己应用的动态数据中心管理工具。无论这些企业是最终用户、系统集成商、还是独立软件开发商,该产品的功能都是将用户数据中心优化为一个动态资源池,分配和管理以服务形式提供的IT资源。其所提供的价值和优势包括:
架构路线图、部署指南和最佳实践
使用现有开发工具和技术开发应用
示例代码
Dynamic Data Center Toolkit for Hoster 是微软提供给合作伙伴——服务提供商的动态数据中心管理工具,该产品能令服务提供商帮助其客户构建虚拟化的IT基础架构、并提供可管理的服务。其所提供的价值和优势包括:
部署指南:构建可伸缩的、虚拟化的基础架构
示例代码和最佳实践
使用现有开发工具和技术开发应用
上述解决方案中包含了配置、数据保护、部署、监控等四大基础设施功能模块,用户应用时可从自助服务Web门户或管理Web门户接入。微软动态云解决方案基于从上到下四层结构提供相关资源和功能支持。
最上层是服务层,提供账户管理、服务目录、部署服务和用户报告等;下面一层是管理层,提供资源管理和负载均衡;再下面一层是虚拟化层,提供硬件虚拟化和应用虚拟化;最底层是包括服务器、网络和存储等在内的资源层。最终帮助用户实现动态数据中心的以下功能:
资源池管理:集中管理中心的硬件资源,包括服务器,存储,网络等
动态分配服务:平台可以动态分配服务资源
自助服务门户:用户可以根据需求自助申请计算资源;平台根据SLA和用户付费情况,决定审批结果
应用和服务管理:应用管理;服务度量计费,SLA等;数据存储和灾备服务
除此之外, 微软还建立“动态数据中心联盟“(Dynamic Data Center Alliance)。该联盟成员企业围绕上述两大动态数据中心管理产品,利用微软的Hyper-V(硬件虚拟化产品)、App-V(应用程序虚拟化产品)和System Center管理套件等技术产品进行多样化的增值开发,从而构建以微软技术产品为核心的动态数据中心生态系统。
联盟企业可获得:
1)共享使用、测试、定义技术内容,加快应用开发的市场化时间
2)可以优先应用微软提供的新技术
3)在微软门户网站上获得市场推广的机会,还可参加新技术实践和试用