在众说纷”云”的时代,怎么能少得了微软的身影呢?作为微软的公有云解决方案,Windows Azure指的是运行在微软数据中心的云计算平台。从结构上讲,Windows Azure平台分为两部分,即云计算操作系统和开发包SDK。对于开发人员来讲,它提供了熟悉的开发体验,以及良好的按需扩展性。
Windows Azure平台组件
下图为Windows Azure平台的体系结构图。如刚才所述,作为云计算平台,Windows Azure部署在如淡紫色的“云”端。
位于最下方的蓝色区域为Windows Azure。作为底层的云计算操作系统,Windows Azure为上层微软数据中心的应用程序的运行以及海量数据的存储提供Windows环境。简单来说,Windows Azure功能分为三大块,即:计算、存储、管理。下文有详细介绍。
位于中间的绿色区域为Windows Azure AppFabric。作为云端的基础服务提供商,Windows Azure AppFabric为云端的应用提供云端企业服务总线、跨网络边界、防火墙、控制验证、分布式缓存等各项云服务。
位于中间的红色区域为SQL Azure。众所周知,数据库服务是云端的一个非常重要的基础功能,SQL Azure为云端提供基于SQL Server的关系数据库服务,主要包括:云端关系数据库、持续的开发模型、自动化的管理等。
位于右方的紫色区域为Windows Azure Marketplace。作为微软云方案提供的在线服务接口,为客户提供各种各样的云端数据与云端应用付费服务。
有了上述这些操作系统与相关组件即接口的支撑,客户的应用程序与数据就可以灵活自如地腾“云”驾雾了。
Windows Azure云计算操作系统详解
如上所述,Windows Azure是微软的云计算操作系统,功能主要分为计算、存储、管理三大块。下面,我们结合Windows Azure的体系结构图,深入了解什么是Windows Azure。
左下角的小图是刚才所述的Windows Azure云计算平台体系结构图,右上方的椭圆形大图为放大的Windows Azure云操作系统体系结构图。
中间的蓝色“Compute”方块负责的是计算模块,指的是微软的应用服务器Windows Server为应用程序提供各种Windows Azure云计算服务。这些应用程序并不局限于基于.NET Framwork的C#,VB程序,同样适用于.NET Framework之外的C++,Java程序。对于开发人员,他们可以选择Visual Studio或者其它IDE。
中间的蓝色“Storage”方块负责的是存储模块,支持二进制大数据对象BLOB的存储,为Windows Azure应用之间的数据通讯提供数据队列服务。除此之外,Windows Azure的存储模块还提供简单的关系数据库的表查询功能,至于复杂的高级特性,则需要SQL Azure的支持。
除此之外的所有组件,笼统地说,我们成为Windows Azure的管理功能。下方的黑色区域所示,Windows Azure作为云计算系统,运行在成百上千的的云数据中心的机器集群,由下方的蓝色“Fabric Controlller”模块扮演着管理者的角色,对于上层来说,底层是透明的,所有机器的行为具有一致性,就像是一台机器。而右上方的蓝色“CDN”模块则提供的是数据的缓存服务。左方的蓝色“Connect“模块提供Windows Azure应用的连接服务。
下面,我们详细介绍Windows Azure的两个核心模块Windows Azure Compute,Windows Azure Storage。
1. Windows Azure Compute
Windows Azure的计算模块“Windows Azure Compute”支持三种Windows Azure 应用程序,如图所示,分别为Web Role程序,Worker Role程序,VM Role程序。简单可理解为:Web Role类型指的是基于Web的Application,Worker Role类型指的是基于Windows的Application,VM Role类型指的是Windows Server 2008 R2镜像。Windows Azure Application 由任意个以上三种类型的Role组合而成。