刘 旋,廖明潮,李 晶
(武汉工业学院数学与计算机学院,湖北武汉430023)
基础设施是企业架构的最基本元素,并且一直是以物理实体的形式呈现给用户。但随着虚拟化技术的发展和面向服务在基础设施的应用,现在它可以作为一种服务来提供。在业界,最开始将面向服务的原则运用于商业和应用架构领域,在反复成功的运用到应用架构之后,也逐渐被引入到基础设施领域。
用云端的服务和资源代替本地现有的服务和资源是十分有益的。比如低成本、可扩展、灵活、维护自由以及用弹性的支付模式代替过去昂贵的一次性资本支出。由于云计算能给企业带来这些潜在的利益,它已经成为了业界最热门的技术之一。
基础设施即服务IaaS是一个定义良好的、集成了若干面向服务组件的框架,使基础设施能以服务的形式提供。面向服务的云计算基础设施(SOCCI)[1]就是 IaaS在云端的具体实现。SOCCI为面向服务的组件提供了一个有利的框架,为基础设施提供SOA解决方案和云服务。使用SOCCI的组织可以在它的基础设施中合并基于云计算的资源和服务,提高敏捷性和规模。
美国国家标准和技术研究所(NIST)提供的云计算定义为:云计算使用按使用量付费的模型,它实现了通过网络访问的、可配置的计算资源池(如网络、服务器、存储、应用和服务等)的可达性、便携性和随需应变性,使得仅需最少量的管理工作或与服务提供商的沟通就能快速获得和释放资源[2]。云计算的显著特点如下。
随需应变的自助服务:消费者可以单方面地根据需求获得计算能力,如服务器时间和网络存储,而不需要与每个服务提供商进行人际交互。
广泛的网络接入:计算能力存在于网络中并且通过标准机制进行访问,这促进了在异构的瘦客户端或胖客户端平台中的使用,如手机、笔记本和PDA等。
位置无关的资源池:提供商的计算资源放在资源池中,使用多租户模式向所有消费者提供服务,根据消费者的需求对不同的物理资源和虚拟资源进行动态分配或再分配。客户端通常并不了解分配到的资源的物理位置,也无法控制资源的分配。这些资源包括存储、处理能力、内存、网络带宽和虚拟机。
快速而有弹性:能够快速而有弹性地提供计算能力以实现扩展,并且可以快速释放资源来实现收缩。对于消费者而言,可用于租用的计算能力似乎是无限的,并且可以在任何时间进行任意数量的购买。
按使用量付费:功能的收费使用按用量计算的有偿服务或使用基于广告的收费模式来提升资源使用率。比如度量存储、带宽和计算资源以及按月根据活动的用户数量收费。
SOI是指以服务的方式来提供基础设施的供给模型,是云计算服务的重要基础[3],同时也是SOA架构基础,其基本特性如下。
业务驱动随需而变的基础设施:SOI提供了一种方法,可以定义高层的业务服务、低层的基础设施服务以及实际的物理资源(如网络设备,存储和服务器等)的依赖关系,显然上层的变动会引起下层的变动。
运行透明性:利用基础设施服务诊断问题及分析根本原因是透明的,基础设施对业务服务也是透明的。
服务实现:SOI定义了服务功能以及实现该功能的具体方法。
供需模型:从服务消费者的视角来看,提供、维护和管理服务的风险明显地转移给了服务供应商,服务供应商需要确保必要的基础设施到位以满足需求。
云计算对IT基础设施及其管理提出了新的要求,它需要一个抽象方法来运行环境。云计算供应商不再单独为每个用户的运行环境进行分配。这意味着云计算供应商提供的是服务器、文件系统、存储、网络和数据库等的一个抽象,而不再仅仅是一个物理设备。此外,为了不断增加供应商的收益和最大化资源利用率,还要求使用多租户模式和动态分配资源。
与此同时用户期待的是方便实用,他们希望能够像用电一样按需使用资源并按使用量计费以维持他们的业务发展。所以新的基础设施应该是敏捷和弹性的,给用户营造一种可以无限且按需使用计算资源的假象。而SOI没能实现用户所期待的全部特性,但它成为了SOCCI的推动者。SOCCI可以被定义为面向服务、可管理和按需扩展的基础设施,它支持云计算最基本的特性、服务和部署模型。换句话说SOCCI是实施和管理IaaS运行环境的精髓,如图1所示。
图1 SOCCI即SOI采用云计算
从架构上看SOCCI是SOI和云计算的基础,其重点在于资源计量、计费和虚拟化管理。SOCCI借助于SOI的能力进行虚拟化,并在保留SOI的所有属性的同时公开基础设施服务,而云计算又为其增加了新特性。
SOCCI架构是由SOCCI元素和SOCCI管理构件组成[1],如图2所示。SOCCI元素通过SOCCI管理构件与用户交互。SOCCI管理构件分为运行为主和业务为主两类。这两者之间的区别依赖于所提供的服务类型。业务管理构件提供与业务相关的管理服务,能够创建、支持和消费IaaS所提供的服务,如计量管理、计费管理和分配管理等。运行管理构件提供与运行相关的管理服务,如虚拟化管理和服务供应管理等。
图2 SOCCI架构组成图
3.3.1 业务管理构件
计量管理构件根据汇总的数据(如网络设备的部署数量等信息)追踪、统计用户的虚拟网络等资源的使用量。它还可以进行分类计量和多租户计量,分类计量指的是测量某种SOCCI元素(如运算、存储、网络等)的总使用量,多租户计量指的是测量每个租户各个资源分别的使用量,并提供子集视图。
计费管理构件通常依赖于计量管理汇总的使用量信息,参照合同协议根据用户的虚拟网络和资源的使用量向用户收取一定的费用。根据合同的类型,每个用户可能有不同类型的账单,比如固定费用、折扣和使用优惠券等,这些也都是由计费管理构件负责的。它还能协助处理外部服务提供商提供的额外服务(作为虚拟网络的一部分)所产生的费用。计费管理构件负责管理一个计费周期内的账单、向用户通知账单并完成支付。
分配管理构件能够根据预定义规则、相关法律、成本限制以及服务等级协议(SLA)分配资源。
3.3.2 运行管理构件
虚拟化管理构件能够模拟物理基础设施组件,由云消费者使用和管理。它作为SOCCI的物理基础设施元素的管理器及物理和抽象基础设施的交互界面。
监测和事件管理构件能够实时监测各种服务的特定事件和消费者使用倾向以及检测基础设施间的冲突和故障。它支持所有的基础设施组件,如存储、网络、服务器和其他辅助设备。事件监测仅仅是报告需要处理的错误事件。使用倾向指的是消费者对于使用方式的偏好,如一周一次,一月一次还是一年一次。它还能测量平均故障间隔时间(MTBF)和平均修复时间(MTTR),同时还可以设置警报阈值予以触发通知和更新。
服务供应管理构件确保根据不同的需求分配适当的资源,并与虚拟化管理和平台管理组件交互以提供和部署基础设施服务、优化基础设施资源和满足用户对云服务的要求。
性能管理构件确保所分配的可用资源的数量是最合理的,既能满足服务供应管理的要求又能达到用户指定的性能。它测量和报告云计算环境中单个资源以确保到达最合理和承诺的性能水平。它还负责根据租户的SLA和权限确保租户的使用性能,并且根据操作规则追踪资源添加和删除的位置。
配置管理构件提供基础设施中设备的基本配置,同时支持基础设施中的服务供应管理构件和监测和事件管理构件以确保整个基础设施的集成。
虚拟化是云计算基础设施得以推广的助推器,它有效的阻止了服务器等资源的不断增加,使许多应用运行在同一个物理资源上,使得利用率比以前更高,同时为了方便配置和维护保持了操作系统和应用环境的分离,而对于每个应用而言它使用的物理资源是独立的。创建了一个的基础设施,操作起来像使用公共设备一样。
云计算基础设施通常包括以下四种资源[2],但不限于以下资源,可以根据用户的需求以服务的形式提供一种或更多。
运算资源(即信息处理资源)提供基于互联网的基本计算是最基本的需求,如处理指令、存储指令及其结果、在内部组件间或通过互联网远距离的与外部设备传送指令。
网络资源(即互连资源),即云计算网络,可以按需增加或减少带宽,服务器间的连通性促使虚拟机的自动化运行。云计算底层的网络自然是动态的,跨越实时优化的路由器集成了很多不同的增值实体。尽管从消费者的角度来看这些复杂的过程是透明的,但是控制和管理这些网络是必要的。实时的网络拓扑能够观察到云中互联情况和可能出现的问题、制约和瓶颈。
存储资源(即记录信息资源),这个基础设施能够在云中随时随地的存储和检索任何信息。它是符合按需分配和释放存储空间的弹性要求的实用模型。另外,还能够通过冗余和备份支持数据的可恢复,确保系统安全。
辅助资源(即供给和协助计算资源),云计算供给设施必须置放在一个安全和防范严密的位置,并且是最佳实践和符合安全标准的。需要开放资源的连接,以便设施外的资源能够按需利用设施内的资源。设施的网络带宽应符合云计算的弹性要求,即任意时刻能够增加或减少带宽。另一个要求是每年执行一次灾难恢复计划,能够在故障发生时确保用户能持续使用计算资源。
利用SOCCI对课题“果蔬农超对接供应链系统集成与应用示范”所开发的系统进行云架构。下面以云中信息追溯监管平台架构为例进行介绍。
云服务集成商(CSI)搭建了一个在线环境,主要为云服务消费者(CSC)提供三部分内容:首先,能够提供农产品原产地相关服务或信息,如农户、地块、作物等基本信息、种植计划、种植管理、环境数据信息、采收管理、质量检测管理等。其次,可以提供供应链过程管理服务,如发运需求管理、车辆管理、运输线路管理、运输批次管理、运输用具管理、车辆监控和跟踪、质量检测管理等。最后,能够提供可追溯信息查询服务,如商品批次的快速识别和可跟踪、流通环节中的质检和报告文件查询、产地监控信息查询等[4-6]。CSI利用云服务供应商(CSP)提供的基础设施、开发环境和软件服务以及第三方独立软件供应商(ISV)提供的技术软件搭建了这个网络环境平台。搭建这个在线环境需要许多服务,包括CSP提供的服务及CSI自身提供的服务。CSI关键任务是集成以不同的格式存储在不同的云端的服务和信息并提供给CSC。CSC根据与CSI或直接与CSP签订的协议条款付费。
CSI为供应链中各个成员提供服务,例如果蔬基地、配送中心及大型超市,同时满足每个租户关于安全和性能方面的要求。CSC可以使用计算机、手机或其他装置,通过一个标准的Web浏览器访问门户网站就能查看或管理农产品信息、物流信息及其他信息。CSI通过提供一个网络环境确保与CSC达成一致协议,在这个网络环境中CSP能提供其服务。CSP通过CSI将服务交付给CSC,如图3所示。
图3 云中信息追溯监控平台架构图
下面介绍在本架构中各类构件的作用。
运行管理构件:IaaS供应商使用虚拟化管理构件提供虚拟环境,模拟出一种能够提供各种所需资源的基础设施,同时要符合云消费者和云供应商或云集成商建立的服务等级协议(SLA)。任何使用这个环境的租户将要向组织支付费用,通过受控的私有方式获得服务。分配管理构件提供空间来存储这些租户共享的合法信息,同时遵守与租户间的协议,包括高级租户的私有访问策略。
业务管理构件:需求骤增促使监测和事件管理构件一直检测,达到一定的阈值就触发性能管理模块评估所需资源的质量。根据性能管理构件的评估值,供应管理构件分配资源给CSI和PaaS供应商,如服务器、网络和存储等。为了达到一定的服务质量,需要重新配置网络以均衡负载和带宽。当需求恢复到正常水平时,供应管理构件将被触发重新分配早期已分配的资源。性能管理构件及时评估所需资源的质量。然后供应管理构件分配符合条件的资源。SLA对于不同的服务供应商是必需的,它能保证每个服务供应商在适当的时候分配适当数量的资源。资源的使用费可以是固定的也可以是可变的。为了解决CSP满足不了骤增的服务需求,CSI需要确保有后备供应商(如多个IaaS供应商)使得平台能够持续的向CSC提供服务。根据合同协议和当地的政策管理多个租户(果蔬基地、配送中心和大型超市)的资源。各类服务供应商采用计量管理构件来追踪并统计服务消费者的服务器、网络、存储和其他辅助资源的使用情况。在本场景中IaaS服务供应商追踪统计CSI提供的这些资源使用情况。反过来CSI也可以追踪租户使用这些资源的方式。根据消费者资源消费的方式计费管理构件向消费者收取相应的费用。它适用于多租户的环境中,就像本案例中CSI构建的这样一个环境。CSI根据计费管理构件提供的相应费用来确定每个租户的账单。监测和事件管理构件持续的监测被消费的基础设施的数量,当达到预定义的阈值时触发并向性能管理发出通知。
详细描述了SOCCI的基本构成,使得组织可以更好地思考和定义协同,这种协同是通过同时应用基于SOA和云计算原则实现的,它促进了面向服务的原则在基础设施组件中的应用。运用SOCCI组织可以将基于云的资源和服务融进其基础设施,以提高灵敏度、扩大规模和降低维护成本。首次将其引入供应链领域,提出了云中信息追溯监管平台的系统框架,对供应链领域的发展拓展了新思路。
[1] The Open Group.Service-Oriented Cloud Computing Infrastructure(SOCCI)Framework[EB/OL].(2011-12-01) [2012-03-26].http://www.opengroup.org/soa/source-book/socci/intro.htm.
[2] David S Linthicum.云计算与SOA[M].北京:人民邮电出社,2011:7-8.
[3] 何剑虹,白晓颖,李润玲,等.基于SLA的面向服务的基础设施[J].电讯技术,2011(9):100-104.
[4] 李书谦,郑立新,王盛桥,等.湖北省农产品质量安全监控信息平台构建刍议[J].湖北农业科学,2011,50(19):4055-4058.
[5] 徐杰,刘鹏飞,周正,等.基于供应链的热带特色农产品物流跟踪管理系统的构建与实现[J].安徽农业科学,2010,38(32):18479-18482.
[6] 管华,廖明潮,蒋曹清,等.粮食物流服务信息集成平台研究[J].粮食流通技术[J],2011(3):4-8.