云计算及计算资源管理技术内容摘要:

,回来要经过复杂的安装和试用阶段,而且要自己维护软件并进行更新等。 随着 Web 计算的发展,一些程序逐渐由软件服务提供商来提供,这也是早期典型的 ASP 模式,但对于软件服务提供商来说,可能需要去参与很多机房建设、运维保障的工作;在云计算环境中,网络化软件具有更为明确的任务分工,软件运营商将逐渐承担起软件运维的工作,当前 AppStore、 AppEngine等模式的逐渐成功在不断印证着这个理念。 图 2 云计算时代网络化软件转 变 北京航空航天大学计算机学院新技术研究所一直关注基于互联网的企业业务和软件服务模式,探索提高企业 IT 数据处理和服务运营能力的技术和系统,目前已经开发出了艾维网络计算平台 iVIC。 iVIC 平台包括 “虚拟化资源管理系统iVICvHaaS” [11][13][13]和 “软件服务运营支撑系统 iVICvSaaS” [12]。 iVICvHaaS在管理数据中心资源的基础上,提供弹性、可定制的虚拟机、虚拟网络与虚拟集群,以及绿色节能、高可用的可持续服务能力。 iVICvSaaS针对云 计算和移动互联网新型应用模式,旨在实现互联网软件 “按需分发、透明使用、集中运营 ”,实现云计算软件服务的虚拟桌面无缝融合,多类移动终端普适和流式软件及展现技术,为移动互联网软件提供服务化运营平台,并支持电信级的移动 OA企业应用。 图 3 网络计算平台 iVIC 技术结 构 四、小 结 云计算技术致力于实现计算公用化,有效聚合网络、服务器、存储、应用服务资源,形成共享资源池,以按需使用 (OnDemand)模式实现资源的动态分配和释放。 基于云平台提供网络化软件可服务,能够对计算任务进行动态和按需的资源分配,避免大量 资源闲置产生的浪费。 在云计算环境中,一方面为传统的中间件技术和产品能够更好服务用户提供了心的机遇,另一方面也对构建一套新的数据存储、弹性计算和高可用运维保障中间件提出挑战。 因此,虽然对计算机操作系统一旦完全被国外企业垄断,但国产中间件企业和研究机构在分布式系统的数据管理、网络管理、资源调度以及高可用技术等方面具有长期的技术研究积累,将对构建大规模可靠的云操作系统中占据先机。 参考文 献 [1] 怀进鹏,特邀报告:网络计算时代的软件技术思考与实践,中国计算机大会, 20201011 杭 州 [2] 怀进鹏,李沁,胡春明 , 基于虚拟机的虚拟计算环境研究与设计 ,软件学报, 2020,18(8):20202026 [3] 第 27 次中国互联网络发展状况统计报告 ,中国互联网络信息中心( CNNIC) . [4] Data, Data Everywhere. A special report on managing information. The Economist. Feb 25th 2020 [5] Tony Hey,Stewart Tansley,Kristin Tolle. The Fourth Paradigm: DataIntensive Scientific Discovery. [6] Robert Johnson, Scaling Facebook to 500 millions users and beyond: [7] The NIST Definition of Cloud Computing. cloud puting, /SNS/cloudputing [8] Report to Congress on Server and Data Center Energy Efficiency,. Environmental Protection Agency ENERGY STAR Program, August 2, 2020 ( partners/prod_development/downloads/) [9] M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, Above the Clouds: A Berkeley View of Cloud Computing, EECS Department, University of California, Berkeley, 2020. [10] Smith J., Ravi Nair. The architecture of virtual machines[J]. Computer, 2020, 38(5): 3238. [11] Yang Chen, Jianxin Li, Tianyu Wo, Chunming Hu, Wantao Liu, Resilient Virtual Network Service Provision in Network Virtualization Environments, icpads, , 2020 IEEE 16th International Conference on Parallel and Distributed Systems, 2020 [12] Liang Zhong, Tianyu Wo, Jianxin Li, Bo Li, A VirtualizationBased SaaS Enabling Architecture for Cloud Computing, icas, , 2020 Sixth International Conference on Autonomic and Autonomous Systems, 2020 [13] Jianxin Li, Bo Li, Tianyu Wo, Chunming Hu, Jinpeng Huai, Lu Liu, ..CyberGuarder: A Virtualization Security Assurance Architecture for Green Cloud Computing, Future Generation Computing System. Accepted. May., 2020. [14] Bo Li, Jianxin Li, Tianyu Wo, Chunming Hu, Liang Zhong. A VMMbased System Call Interposition Framework for Program Monitoring. In proceedings of 2020 Int’l Workshop on Interbased Virtual Computing Environment (iVCE’10), in conjunction with 16th International Conference on Parallel and Distributed Systems (ICPADS 2020), 706711. Shanghai, China. December 810, 2020. 支持面向服务软件开发与运行的云平 台 作者:王旭 孙海龙 刘旭东 周超 20200520 1 引 言 传统软件开发过程中,开发人员一般需要经过需求分析、系统设计、系统实现、系统测试等几个阶段。 这些阶段的完成要求开发人员必须购买和安装各种各样的开发工具。 除去开发工具在本地安装过程中繁琐的配置工作,开发人员在系统测试时一般还要自己负责购买和维护一个测试环境。 特别是在分布式软件的开发时,运行环境一方面要求开发者付出不小的经济代价,另一方面将不可避免的要进行繁琐的系统安装、配置以及后续的维护工作。 但是,从根本上来讲,开发人员应该专注于系统本身的逻辑实现,而不是深陷于开发工具以及运行环境的零碎工作中。 所以,如果存在一 种按需可取、即时可用的 “开发 ”服务,它把所有的开发工具和运行环境以一种能力的形式提供出来,那么将会把开发人员从繁琐的外部工作中解放出来,从而减轻开发人员的开发难度,减小整个软件的开发周期。 随着互联网的快速发展,企业应用呈爆发式增长。 由于业务需求的多样性和复杂性,企业之间开始寻求一种跨企业的应用集成方法。 面向服务的软件开发方法由此应运而生,它致力于制定企业应用的标准开放接口、通信协议,并以之为基础解决跨企业的应用集成问题。 随着面向服务软件开发方法的进一步发展,它逐渐演变为一种新的分布式软件开发方法[1]。 这 种开发方法讨论如何按需、动态的集成现有的服务组件,从而快速开发出满足新需求的分布式软件,这个过程也称之为服务组合。 以业务流程为核心的服务组合是面向服务软件开发方法的主流实现之一,类比传统的软件开发方法,它需要业务建模、组合服务编制、组合服务验证、组合服务测试等几个阶段。 同样的,以业务流程为核心的服务组合是一个相对复杂的过程,每个开发阶段都需要相应的开发工具的支持,在测试时也需要分布式部署和运行环境。 这就使得开发人员不可避免的需要自己处理开发工具和运行环境的问题。 而我们工作的目标就是提供一种即时的开发、部署和 运行环境,支持以业务流程为核心的服务组合的整个开发过程,使开发人员避免安装、配置、维护开发工具和运行环境的额外工作。 近年来,云计算 [2]无论在工业界还是在学术界都已经被公认为一种新的计算模式,它强调通过因特网来进行软件的透明分发,软件以服务的方式提供使用。 从服务模式的角度划分,云计算应用可以分为 SaaS(软件即服务)、 PaaS(平台即服务)、 IaaS(基础设施即服务)三种。 无论是那一种服务模式,用户都可以通过因特网透明的即时访问云计算应用,而不用关心后台的具体实现细节以及物理设施的具体位置。 在本文的工作中 ,将尝试采用云计算技术来构建一个支持面向服务软件开发和运行的云计算平台,目的是使开发过程变得更加轻松和容易。 目前在这个方向上已经有了一些相似的工作。 IBM 开发的 Smart Business Development and Test Cloud[3] 帮助用户设计和实现柔性的开发和测试私有云环境。 Hajjat 等 [4] 讨论如何将传统的企业应用程序迁移到云计算环境中。 另外,在以前的工作中,我们已经开发了一个面向服务的软件生产线系统 [5][6],它包括一个面向服务的软件开发工具集、支持组合服务运行的中间件以及用于 原子服务存储的服务库。 支持面向服务软件开发与运行的云平台的基本思路是将面向服务的软件生产线改造为云计算应用,实现在面向服务软件开发过程中的即时开发、部署和运行。 本文第二章讨论已有的面向服务的软件生产线系统的不足,分析工作的动机;第三章介绍支持面向服务软件开发与运行的云平台的体系结构、系统实现以及其中的关键问题;当前的研发进展在第四章给出;第五章将总结本文的工作。 2 问题分 析 面向服务的软件生产 线 面向服务的软件生产线是一个基于 Web 服务技术的面向服务软件的生产系统。 它可以支持面向服务软件开发的整个生命周期。 该系统着重解决了三个方面的问题:( 1)服务资源管理。 把分散的、无序的、自治的 Web 服务通过组织管理使之变得相对集中、便于发现和可信;( 2)组合服务设计和开发。 以业务流程为核心,通过业务建模、组合服务编制、组合服务验证和组合服务测试等阶段实现组合服务设计和开发;( 3)组合服务运行和演化。 实现基于 BPMN(业务流程模型标记 )规范的组合服务解析执行引擎,支持组合服务演化,并对组合服务的运行过程进行监控。 问题思考和分 析 即使面向服 务的软件生产线为面向服务软件的开发和运行提供了几乎全面的解决方案,但在实际使用中还是存在一些问题。 首先,软件开发人员必须在本地计算机上下载、安装以及配置开发工具,由于组合服务开发过程依据所开发的程序需求的复杂性一般由多个步骤组成,而每个开发人员也有其承担的开发角色,这使得开发工具的维护工作并不容易。 当开发人员需要更换开发用计算机时,开发工具的安装配置这一繁琐的工作又不得不重复一次。 而且某些开发工具的版本升级也可能会带来整体上的冲突。 其次,在测试阶段,开发者需要一个良好的测试环境。 由于面向服务程序的高度分 布式和动态性,搭建一个有效的测试环境将面临不小的挑战。 对开发人员来说,他们不仅要获得足够的物理基础设施(一般需要物理集群),而且需要动态确定每个原子服务和组合服务的部署策略。 对于第一个问题,可以把开发工具以 SaaS的方式提供给开发人员,开发人员无论何时何地、只要通过网络即可访问到最新版本的开发工具,也避免了工具的配置过程。 对于第二个问题,可以构建和维护一个集中的服务化软件应用引擎。 用户根本不必关心具体技术细节和物理实现,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。