多租户saas应用优化部署算法的研究.pdf_第1页
多租户saas应用优化部署算法的研究.pdf_第2页
多租户saas应用优化部署算法的研究.pdf_第3页
多租户saas应用优化部署算法的研究.pdf_第4页
多租户saas应用优化部署算法的研究.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

多租户saas应用优化部署算法的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硕硕士学位论文士学位论文 多租户 saas 应用优化部署算法的研究 research on multi tenant saas application optimizing deploy algorithm 曹祖凤曹祖凤 哈尔滨工业大学哈尔滨工业大学 2013 年年 6 月月 国内图书分类号 tp315 学校代码 10213 国际图书分类号 621 3 密级 公开 工工学学硕士硕士学位论文学位论文 多租户 saas 应用优化部署算法的研究 硕 士 研 究 生 曹祖凤 导 师 孟凡超副教授 申 请学位 工学硕士 学科 计算机科学与技术 所 在 单 位 计算机科学与技术学院 答 辩 日 期 2013 年 6 月 授予学位单位 哈尔滨工业大学 classified index tp315 u d c 621 3 dissertation for the master degree in engineering research on multi tenant saas application optimizing deploy algorithm candidate cao zufeng supervisor associate professor meng fanchao academic degree applied for master of engineering speciality computer science and technology affiliation school of computer science and technology date of defence june 2013 degree conferring institution harbin institute of technology 哈尔滨工业大学工学硕士学位论文 i 摘 要 软件即服务 software as a service 简称 saas 是云计算在应用层的架构 在这种模式下客户不需要购买完整的软件系统 也不需要配备相应的硬件系统 和维护人员 只需要通过互联网 按需租用应用软件即可 多租户 saas 模式下 通过多个租户共享单一应用实例 同时减少了 saas 服务提供商的运行维护成本 和客户的软件购买成本 逐渐被各大软件提供商采用 如何放置租户和部署应 用使系统资源得到合理的分配和利用 用最少的资源为更多的客户提供服务以 获得更大的利润 是 saas 服务提供商面临的主要问题 为了解决多租户 saas 优化部署和资源分配问题 本文从以下几个方面进行研究 首先 针对静态优化部署问题 提出了一个基于基准响应时间的资源计算 模型 用于计算用户和 saas 应用对服务器节点资源的消耗 针对服务提供商租 用基础设施和自有基础设施两种情形 对静态优化部署问题进行描述 分别给 出了不同的问题模型 然后采用了基于贪心策略的遗传算法和基于组编码的遗 传算法对两种情形的静态优化部署策略选择问题进行求解 并通过模拟实验进 行了验证 其次 针对动态优化部署问题 给出了详细的问题描述以及问题模型 分 析了欧式距离和 kld kullback leibler distance 距离在计算请求资源向量和 服务器剩余资源向量之间距离时的不同 并根据不同的距离计算方法设计了一 个适用于动态租户放置问题的启发式算法 采用欧式距离的基本最小剩余资源 算法和采用 kld 距离的最小剩余资源算法 并通过实验分析了两个算法的不同 结果 然后 针对资源消耗模型的建立和调整问题 设计了一个资源监测模型 用于获取服务器和 saas 应用运行时的资源消耗情况 反馈到资源监测中心 进 行分析和处理后对 saas 应用的资源消耗模型进行修正 最后 针对资源监测和 saas 应用优化部署问题 从体系结构 功能模块划 分 数据库等方面对一个部署原型系统进行设计与实现 具有租户注册 部署 策略生成 资源监测等功能 能够对部署的业务流程进行模拟 整合了基础信 息管理 算法构件和监测等功能 关键词 saas 应用 租户放置 资源模型 静态优化部署 动态优化部署 哈尔滨工业大学工学硕士学位论文 ii abstract software as a service saas is cloud computing architecture at the application layer under this mode customers do not need to purchase a complete software system and not need to be equipped with corresponding hardware and maintenance personnel only need to rent application software through the internet on demand in multi tenant saas model multiple tenants share an application instance as saas providers can simultaneously reduce operating costs and customer software purchase cost it s been gradually adopted by major software providers how to place tenants and deploy applications to make a reasonable system resource allocation and utilization provide services for more customers with the least resources to obtain greater profits is a major problem of saas providers in order to solve the multi tenant saas optimization deployment and resource allocation problems this paper studies the following aspects first aim to issues of static optimization deployment a resource calculation model based on the criteria response time is presented to calculate the resource consumption of a user and saas applications on the server node description of static optimizing deployment issues is proposed in both cases of saas provider rent infrastructure and use its own infrastructure for different problems we provide individual model and then use a genetic algorithm based on greedy strategy and group coded genetic algorithm to solve the static optimizing deployment strategy selection problem in two cases and verify them through simulation experiments second aim to dynamic optimization deployment issues a detailed description of the problem and the problem model are proposed then we analyze the difference of euclidean distance and kld kullback leibler distance distance in the calculation of the distance between the requested resource vector and server surplus resources vector we design two dynamic heuristic algorithms according to the distance calculation method the basic minimum remaining resources algorithm using euclidean distance and minimum remaining resources algorithm based on kld distance and both are verified and compared through experiment then aim to resource consumption model and its adjustment problem we design a monitoring model for acquiring runtime resource consumption of server and saas application then sends back to the resource monitoring center for analysis and processing for correction of resources consumption model of saas applications finally aim to resource monitoring and tenant optimizing deployment of saas application issues we design and implement a prototype system from the architecture functional modules databases and other aspects the system is 哈尔滨工业大学工学硕士学位论文 iii equipped with functioning of tenant registration deployment strategy generation resource monitoring and other functions it s a simulation system of deploying business process with the integration of basic information management monitoring component the algorithm functions and e t keywords saas application tenant placement resource model static optimizing deployment dynamic optimizing deployment 哈尔滨工业大学工学硕士学位论文 iv 目 录 摘 要 i abstract ii 第 1 章 绪论 1 1 1 课题来源 1 1 2 课题研究目的和意义 1 1 3 国内外研究现状 2 1 3 1 云计算与 saas 研究现状 2 1 3 2 saas 应用架构研究现状 3 1 3 3 saas 应用优化部署研究现状 7 1 4 当前存在的问题 11 1 5 主要工作内容 11 1 6 论文章节安排 12 第 2 章 静态优化部署算法 14 2 1 引言 14 2 2 资源计算模型 15 2 3 租用基础设施的静态优化部署 16 2 3 1 问题描述 16 2 3 2 基于贪心策略的遗传算法 17 2 3 3 实验参数设置 20 2 3 4 实验结果及分析 22 2 4 自有基础设施的静态优化部署 24 2 4 1 问题描述 24 2 4 2 算法设计与实现 26 2 4 3 实验结果及分析 30 2 5 本章小结 33 第 3 章 动态优化部署算法 34 3 1 引言 34 3 2 问题描述 35 3 3 动态优化部署策略选择算法 37 3 3 1 基本最小剩余资源算法 37 哈尔滨工业大学工学硕士学位论文 v 3 3 2 基于 kld 的最小剩余资源算法 38 3 4 实验分析 39 3 4 1 实验方法 39 3 4 2 实验结果及分析 41 3 5 本章小结 43 第 4 章 原型系统的设计与实现 44 4 1 系统设计 44 4 1 1 体系结构设计 44 4 1 2 功能模块设计 45 4 1 3 数据库设计 47 4 2 系统实现 51 4 2 1 相关技术简介 51 4 2 2 系统技术架构 53 4 2 3 主要功能界面 54 4 3 本章小结 60 结 论 61 参考文献 62 攻读硕士学位期间发表的论文及其它成果 67 哈尔滨工业大学学位论文原创性声明及使用授权说明 68 致 谢 69 哈尔滨工业大学工学硕士学位论文 1 第1章 绪论 1 1 课题来源 本课题来源于山东省科技攻关项目 基于模型驱动方法与面向服务体系结 构的企业应用软件开发平台 和威海 哈工大共建项目 大型复杂企业应用软 件动态演化技术研究与应用 1 2 课题研究目的和意义 saas 模式是云计算在应用层提供的服务 在 saas 模式下 客户不需要购 买完整的软件系统 也不需要配备相应的硬件系统和维护人员 只需要通过互 联网 按需租用应用软件即可 这对成本预算有限 技术条件不足的中小企业 来说 具有很强的吸引力 根据 idc internet data center 的调查报告 saas 模式在中国刚刚兴起 但是这种模式在国内引起了很大关注 而且具有良好的 发展前景 因为国内的企业数量庞大 大部分属于中小企业 而接近一半的中 小企业对 saas 服务模式感兴趣 调查还显示 已经采用 saas 模式的企业满 意度达到了 70 以上 1 多租户是 saas 模式的主要特点之一 多个租户通过服务提供商的统一平 台租用服务 共享服务提供商的软 硬件资源 多个租户共享相同的应用代码 和应用实例 大大降低 saas 服务提供商开发 部署 运行 维护 更新等运 营成本 另一方面 多个租户共同承担了软件服务的相关成本 而降低了各个 租户企业的服务购买成本 租用服务时 租户和软件供应商之间需要签订服务 水平协议 sla service level agreement sla 描述了客户所租用的云服务的 租期 用户数 服务质量 qos quality of service 需求等内容 软件供应 商就是根据 sla 来提供服务的 在多租户 saas 模式下 共享 saas 服务的租 户越多 付出的租用费用理论上会更少 多租户 saas 应用优化部署是 saas 模式的关键理论问题之一 一个 saas 服务提供商在构建 saas 服务平台时 通常需要具备一些服务器节点 租用或 者自备 以及基于 saas 模式的软件应用 当租户的租用请求到达时 需要根 据租户的需求确定部署哪些应用实例 部署应用实例的个数和使用的服务器节 点 从而确定资源的分配情况 优化部署就确定租户和 saas 应用实例 saas 应用实例和服务器之间的部署关系和资源分配情况 使得在满足租户 sla 的 同时 服务器的资源利用率最高 软件供应商的利益最大化 哈尔滨工业大学工学硕士学位论文 2 因此 本课题研究的主要目的就是研究多租户 saas 应用优化部署问题 从 saas 服务提供商的角度来分析其中的初始静态优化部署 运行时动态优化 部署和租户放置 saas 部署原型系统等关键问题 本课题的研究意义主要有 以下几点 首先 对多租户 saas 优化部署问题的算法研究 能够解决优化部署策略 选择和资源分配方法问题 目前专业的 saas 服务提供商都未公开其内部 saas 应用部署细节 本课题的研究试图探索和解决这方面的理论问题 其次 对多租户 saas 优化部署算法的研究 能够为以后 saas 服务平台的 研究奠定基础 确定了初始静态优化部署及运行时动态优化部署的策略 也就 确定了服务资源的需求 从而能够让服务提供商在软 硬件的投入上更加的合 理和有效 1 3 国内外研究现状 本文将从云计算与 saas 概述 saas 软件架构和 saas 软件的优化部署等 方面展开研究综述 1 3 1 云计算与 saas 研究现状 根据 ibm 的定义 云计算是一种新型的计算模型 把 it 资源 数据 应 用作为服务通过互联网提供给用户 2 3 云计算根据其服务类型可以分为 iaas infrastructure as a service paas platform as a service saas software as a service 分别对应于基础设施即服务 平台即服务和软件即服务 4 5 在商 业领域 具有大量计算资源 同时具有强大的软件研发能力和软件产品服务能 力的互联网公司 如 google 推出了自己的 paas 和 saas 产品 在云服务领 域占据不可比拟的市场地位 s 和八百客等也是比较成功的提供 商 saas 是一种新的软件发布方式 6 与传统的购买软件许可并安装到各自 服务器的方式不同 saas 模式下 用户通过互联网按需购买和使用服务提供 商的软件服务 saas 具有多租户 按需求租用服务等特点 服务提供商统一 对软件服务进行部署和维护 用户无需投入购买整个软件许可和运行维护的成 本 从而能够降低服务购买企业的成本 也能减少服务提供商的运营投入 目 前 saas 模式已经在许多行业得到了应用 在市场上已经形成了一批专业的 saas 服务提供商 主要的专业 saas 服务提供商 7 如表 1 1 所示 哈尔滨工业大学工学硕士学位论文 3 表 1 1 saas 服务提供商 分类 软件商 服务内容 国外厂商 salesforce crm 托管测试环境 rightnow blueroads software crm 渠道 crm 24sevenoffice 小型企业 erp crm netsuite crm erp 电子商务 openair 专业服务自动化软件 eproject 项目管理工具 journyx 工资 账单 会计 国内厂商 用友在线 移动商务 金算盘 9i erp crm oa 800crm crm xtoolscrm crm 51sales cn crm 国富通 供应链管理 许多学者也对基于 saas 模式的应用软件进行了大量研究 文献 8 11 研究 了 saas 模式在不同领域的应用 涵盖了应用设计实现的相关技术和框架 说 明了 saas 模式应用的广泛性和可实现性 文献 8 探讨了可配置性 数据延伸 性 数据安全策略等实现 saas 模式的关键问题和技术 采用 soa service oriented architecture 开发了一个 erp enterprise resource planning 子系统 文献 9 研究了 saas 模式软件实现中的数据安全 服务建模和安全性等关键问 题 设计和实现了一个 crm customer relationship management 系统 文 献 10 分析了实施 saas 模式对中小企业的意义和价值 给出了 crm 逻辑体系 结构 概括了 saas 模式的前后端交互模型 文献 11 研究了 saas 模式在数据 采集中的应用 提出了数据采集系统的 saas 体系结构 后台采用了线程池实 现信息采集 通过网络提供给需要数据的用户 从 saas 的应用领域来看 saas 模式主要的应用于 crm erp 等企业信 息管理系统中 而 saas 的按需获取和成本低等特点使得其在中小企业中受到 很大的关注 1 3 2 saas 应用架构研究现状 saas 服务应用模式除了考虑多租户外 还有服务个性化配置 服务质量 扩展性 据此 saas 成熟度模型被分成了四个等级 通常被称为 成熟度 其中 各级成熟度的特性逐级递增 如表 1 2 所示 哈尔滨工业大学工学硕士学位论文 4 表 1 2 saas 四级成熟度模型比较 12 成熟度 可配置性 高性能 可伸缩性 第一级 无 无 无 第二级 有 无 无 第三级 有 有 无 第四级 有 有 有 表 1 2 显示了不同成熟度模型的特性差异 在 saas 应用架构上 每一级 成熟度采用不同的架构实现 如图 1 1 所示 租户租户租户 实例 i1 实例 i3 实例 i2 代码 c1 代码 c3 代码 c2 租户租户租户 实例 i1 实例 i3 实例 i2 代码 可配置 c1 租户租户租户 实例 元数据 i1 代码 可配置 c1 租户租户租户 实例 i1 实例 i2 代码 可配置 c1 负载均衡 a 第一级成熟度模型 b 第二级成熟度模型 c 第三级成熟度模型 d 第四级成熟度模型 图 1 1 saas 成熟度模型 其中 图 1 1 a 显示了第一级成熟度模型的架构 这一级成熟度的 saas 软件除了交付模式以外 与传统软件并无大的区别 此时需要为每个租户编 写不同的代码和部署各自的运行实例 第二级成熟度模型能够根据客户的需 要 进行个性化的配置 此时多个客户的不同运行实例共用一套代码 利用 代码复用 能够降低开发成本 如图 1 1 b 所示 第三级成熟度模型实现 哈尔滨工业大学工学硕士学位论文 5 了多租户共享单一实例 能够有效的控制 saas 提供商的软 硬件投入 如图 1 1 c 所示 第四级成熟度模型为多个租户部署了同种应用不同的运行实 例 这一级成熟度模型中 随着物理设备的无限制增加 租户数量的增长也 是不受限制的 因此具有无限扩展的能力 如图 1 1 d 所示 在不同成熟度模型架构应用和实现上 许多学者进行了大量研究 文献 13 19 研究了不同 saas 应用架构的关键实现技术和领域实践 文献 13 sungjoo kang 等提出了一种单实例多租户应用平台的概念架构设计 该 平台支持可配置性 包括 saas 软件的组织结构 用户接口 数据模型 工作 流 业务逻辑等 文中以一个 bpm business process management 应用为 例对可配置部分做了详细的介绍 其概念架构主要由客户端应用程序 配置 器 运行时引擎 元数据管理系统 文献 14 等研究了多租户单实例 saas 模 式中租户间的数据独立性和个性化需求 提出了一种元数据索引方法 采用 键值对的方式 将用户的业务数据分解细化存储并建立索引策略 根据索引 能够迅速得到用户的数据集 文献 15 对第三级成熟度模型的用户个人定制 需求实现进行了研究 为了实现 level 3 级别的定制 文中对 portlet 技术中 的相关接口进行了扩展 以实现为满足不同租户的功能性需求而对 portlet 组 件进行自主组合 文献 16 提出了一种适用于多种客户终端的多租户 saas 体 系结构 支持服务接入 租用和个性化定制 不同的客户具有不同的权限和 服务功能 文献 17 对多租户的实现方法进行了研究 对应每一种成熟度模 型 都有一种多租户实现的方法 租户间的数据隔离也体现出不同的层次 应用实例级 模式级 数据表级等 每一级别的隔离方式决定了数据安全的 程度和不同的资源成本 文献 18 以一个供应业务管理系统为例 研究了第 四级成熟度 saas 应用的实现方法和关键技术 在提出的系统架构设计中 主 要包括元数据文件 共享数据库 目录服务 安全服务 元服务等 这些技 术实现使得系统具备了可配置性 可延伸性和多租户特性 文献 19 在医疗 行业的业务背景下 研究了多租户多实例的第四级 saas 应用架构 分别从配 置协作 访问控制和系统集成进行实现 使得租户和应用的可访问性 可配 置性和可扩展性得到保证 以上就是 saas 应用架构的相关研究 当前 saas 的主流应用架构是第三级 成熟度的架构 也有部分研究涉及第四级成熟度 saas 应用的实现 综合现有 的 saas 应用架构研究 能够得出一种可伸缩多租户 saas 架构 如图 1 2 所示 哈尔滨工业大学工学硕士学位论文 6 主机主机主机主机 物理服 务器 虚拟机 服务器 认证服务器 数据数据数据 应用服 务器 数据服 务器 应用 实例 web服务器 服务提供商 internetinternet 客户 监控服务器 图 1 2 可伸缩多租户 saas 架构 从图 1 2 可以看出 在 saas 架构中两个最主要的角色就是 saas 服务提 供商和企业租户 所有的物理资源和虚拟资源都由提供商统一构建和管理 服务提供商负责应用的部署 租户请求认证和资源状态监测等 租户唯一能 参与的活动就是通过网络进行服务租赁和使用 下面对服务提供商各个层次 的资源进行介绍 物理服务器 物理服务器就是服务器实体设备 为了充分利用资源 通 常采用一定的虚拟化技术实现进行虚拟机化 一个物理服务器可以虚拟出多 个虚拟机 每个虚拟机是具有独立的系统管理 虚拟机之间互不干扰 物理 服务器的个数理论上可以随着需求的变化而进行动态的增加或者减少 虚拟机服务器 提供基础设施服务 应用 数据服务器运行在虚拟机上 哈尔滨工业大学工学硕士学位论文 7 saas 服务提供商可以租用基础设施服务商的虚拟机来提供服务 也可搭建自 己的基础设施服务 在可伸缩架构下 随着租户需求的增加 可以动态的创 建或者删除虚拟机 做到按需使用 节约资源 应用 数据服务器 应用服务器可以是 web 服务器如 tomcat jboss 等 负责处理部署在其上的应用程序用户的业务请求 数据服务器提供租户 用 户 业务数据等数据服务 一个应用服务器上可以运行多个 saas 应用 资源监测 可从物理服务器 虚拟机服务器 应用服务器 应用程序等层 次对资源消耗情况进行监测 物理服务器监测能够获得各个物理服务器的资源 状态 以便进行虚拟机调度 实现物理资源的负载均衡 虚拟机监测能够获得 虚拟机的当前资源消耗情况 在进行租户负载均衡时 需要根据租户的需求和 虚拟机的资源状态确定是否能分配到该虚拟机 应用服务器和应用程序的监控 能够为资源消耗模型的建立和调整提供数据依据 是资源度量的重要支撑 在可伸缩多租户架构中 理论上随着 saas 服务提供商的物理资源无限扩 展 其能支持的租户和用户数也是没有限制的 但是如何进行资源分配和规划 使资源得到更加的合理使用 这就是优化部署所要解决的问题 1 3 3 saas 应用优化部署研究现状 saas 软件优化部署就是在租约 saas 应用和虚拟机之间建立映射关系 进行资源合理分配 确定软 硬件资源的使用数量 以达到优化利用的目的 saas 优化部署在 saas 服务平台中有着重要的作用 但现有的 saas 服务提供 商都未对其内部的部署策略进行公开 因此 对 saas 优化部署进行研究 对 saas 服务平台的构建具有重大意义 现有的研究主要有静态优化部署和动态优化部署两方面 静态优化部署指 在构建 saas 服务平台之初 采用一定的策略来确定需要投入的软 硬件资源 在传统软件供应商向 saas 供应商迁移 原有用户也转向 saas 服务时 进行初 始资源规划和分配 从而进行合理初始投入 是具有现实意义的 动态优化部 署是指在 saas 运行平台工作过程中 接到租户的租用服务请求 此时根据当 前的系统资源状态和应用实例状态将租户的服务请求分派到合适的服务器上 同样应该采用一种优化策略使得系统资源能够得到最大的利用 从而使得服务 提供商的利益最大化 文献 20 24 对静态优化部署问题进行了研究 以找到合理的优化部署方 案 进行资源分配 达到资源优化利用 降低运营成本等目的 其中 文献 20 提出了一种云架构环境下大型 saas 应用基于多租户的资源分配模型 文中提 出了一种虚拟资源度量方法 用于 saas 应用在云基础设施上的部署和资源分 哈尔滨工业大学工学硕士学位论文 8 配 同时考虑了多租户 构造了一个低成本的可扩展环境 在比较资源不足和 资源过剩的测试结果后 javier espadas 等提出了新的负载分配模型 综合了 基于租户的隔离 基于租户的 vm virtual machine 分配和基于租户的负载 均衡三种方法的优势 文献 21 zeratual izzah 研究了构件化的 saas 应用部署 问题 首次考虑了 saas 软件数据构件的部署 提出优化部署方法 考虑服务 失败的惩罚因子 并给出了遗传算法的求解模型 综合了数据传输时间 组件 处理时间 执行时间 saas 总时间等 给出了工作流关键路径计算方法和染 色体编码方法 文献 22 christof momm 提出了一种用于多租户的商业应用中 的混合双层工作负责计划和优化方法 详细分析了量化服务器的容量 用户资 源消耗 asi application server instance 实例个数决策 把问题简化成一个 特殊的装箱问题 文中提出了时间槽的概念 用户的资源需求被细化到各个时 间槽 租户的任务主要为批处理作业 加入了超过 deadline 的处罚 对批作业 进行优化以使处罚最小 文献 23 rajeshwari ganesan 等研究了给定应用实例 的工作负载数据 确定相关的虚拟机容量和相关部署策略的问题 给出了一个 决策工具 用于确定一系列虚拟机的容量以及它们的组合关系 最后通过典型 的应用工作负载实验 证明了该工具给出的部署策略能够使得虚拟机的资源利 用率到达 70 文献 24 zeratul izzah 等研究了构件化 saas 应用的在服务提 供商自有基础设施和 saas 应用情况下的初始放置和资源的优化利用问题 以 提高 saas 应用的性能和减少资源的使用 为了解决资源的组合优化问题 文 中提出了两种进化算法 rgga repair based grouping genetic algorithm 和 pgga penalty based grouping genetic algorithm 最后通过实验验证了这 两个算法的可行性以及性能上的比较 文献 25 35 从动态优化部署方面进行了研究 探索在满足租户的服务请求 的同时 如何充分的利用系统资源 其中 文献 25 young choon lee 等也从 saas 应用的任务组合方面着手 为了解决最大资源利用率 最大利润和服务 质量之间的冲突 提出一种动态创建服务实例的服务调度算法 利用云共享处 理器给出了定价模型 并将该模型应用到具有依赖关系的组合服务上 同时确 定了一种优先策略使数据服务的利润最大化 文献 26 thomas kwokd 等指出 了实现利用多租户的 saas 商业模式来降低软件个性化 部署 运作等运营成 本的技术难点 包括计算共享应用实例资源的多租户资源需求 租户和 saas 实例的优化部署使得成本最低且不违反 sla 等 文中提出了一种分布式环境 下应用程序的多租户部署工具 在 saas 实例的优化部署方面 文献 27 yi zhang 等提出了一个新颖的多租户资源消耗计算模型 并运用到租户调度中 文中提出了一种高效的启发式租户调度算法 使得有限的资源能够支持最大的 哈尔滨工业大学工学硕士学位论文 9 租户数 还给出了每个 saas 实例上的某类资源消耗模型 使得算法具有很好 的扩展性 该算法还能用于运行时的租户调度 而文献 28 hongyong yu 从多 租户 saas 模式资源利用率上进行了研究 提出了一种支持用户需求的系统数 据资源分配模型 在高资源利用率的同时保证 qos 水平 文中用启发式算法 和遗传算法来解决这个问题 并进行了比较 文献 29 xiaojun chen 等研究了 物理资源与逻辑资源之间的映射 提出了一种资源虚拟化方法 在此基础上给 出了一种动态资源分配算法 使得系统用户资源拒绝率最低而资源满足率最 高 文献 30 linlin wu 等从客户和服务提供商的角度考虑 提出了一种启发式 saas 优化部署算法用于降低基础设施成本和减少租户 sla 违反率 服务提供 商能够管理客户的动态请求 将租户的服务请求参数转换成基础设施层的参 数 文献 31 enfeng yang 研究了多租户 saas 应用的租户放置问题 提出了应 用实例资源消耗模型 用于计算租户和实例对系统资源的消耗 文中还给出了 一个具有服务选择功能的租户放置框架 根据租户的请求能够选择合适的服务 组合 并通过加权欧氏距离选择剩余资源最小的服务器节点用于放置租户 文 献 32 对应用程序的性能模型在私有云系统中的动态更新问题进行了研究 在 优化循环中 应用的性能模型能够根据实时的运行状态而进行调整 从而使得 资源的优化更加准确 为服务提供商带来更大的利益 文中提出了一种基于资 源分配的 qos 模型 在此基础上给出了带反馈的动态优化部署模型 在满足 用户 sla 需求的同时 使得资源的利用率最大 并且能够将资源消耗信息反 馈并据此对应用的性能模型 资源消耗模型 进行调整 文献 33 chen tian 等研究了大型应用集群中的动态应用放置问题 提出并定义了一个新的优化目 标 限定每个服务器资源利用率的最坏情况 建立最小 最大问题模型 提出 了一个应用集群的资源分配框架 用于提高服务器集群的负载均衡 文献 34 danilo ardagna 研究了租用基础设施的动态 saas 优化部署问题 部署所需 的虚拟机向 iaas 提供商动态的申请 提出了一个动态分派算法 用于租户和 应用的资源分配 使得 saas 服务提供商能够获得最大的收益 文献 35 研究 了多租户 saas 的系统资源分配问题 分析了系统资源分配的优化目标 给出 了问题的数学模型 提出了用户需求支撑系统的资源分配算法 基于启发式的 算法和遗传算法 最后通过比较这两个算法给出的解的质量和执行时间 选择 其中较好的算法用于系统资源的分配 使得在满足租户 qos 需求的同时 saas 服务提供商获得最大的收益 以上就是 saas 应用优化部署的相关研究现状 从以上分析可知 多租户 saas 应用优化部署主要涉及资源消耗模型 资源分配 租户 sla 需求转换等 方面的研究 从基础设施来看 有自有基础设施和租用基础设施两种部署环境 哈尔滨工业大学工学硕士学位论文 10 从部署时机来看 主要有静态优化部署和动态优化部署 为了更好的利用 saas 服务提供商的软 硬件资源和确保客户的服务质量 有必要对系统中资源和应用性能进行监测 性能是一种用于衡量系统达到一定 质量需求程度的指标 系统不同层次的人员所关心的层面也各不相同 对于用 户而言 最直观的指标就是系统的响应时间 即从发出请求到获得响应结果的 时间 而对于系统管理员而言 除了响应时间之外 更加关心系统资源的使用 状况 例如 cpu 内存 带宽等硬件资源利用率 以及给定的系统资源能够 支持多少用户数等 目前 软件性能监测方面存在较多研究 但 saas 应用软 件的性能监测方面专门的研究并不多 通常将性能监测的模块嵌入到软件中 以此达到应用监控的目的 文献 36 研究了单租户多实例应用的性能监测模型 提出了一种基于元数 据的多租户层次架构 用于实现业务逻辑上的应用负载均衡 该架构能够随着 用户需求的变化而动态维持服务器资源 具有较好的可扩展性 文献 37 分析 了共享应用实例和系统中间件 saas 模式下多个租户的性能保证问题 为了不 造成互相干扰 需要采用一定的隔离方法 文中提出了一种 kalman 滤波方法 用于对 cpu 资源进行度量 同时给出了 cpu 利用率的计算模型和资源监测策 略 在 saas 服务平台中 通常需要编写自己的监控程序 来实现对 saas 应用 和硬件资源的监控 文献 38 提出了 saas 软件和硬件设备实时数据模型 设 计了一个用于监控 saas 软件的集成监控软件 该监控程序能够快速的将所需 监控信息从被监控对象读取并展示给管理员 文献 39 研究了开源的 paas 平 台 appscal 的资源监控机制 针对 appscal 只能对虚拟机 服务器粒度实施监 控的不足 对 appscal 的代码进行了扩展 使得平台能够对应用级别的运行实 例即进程进行跟踪和监控 获得应用实例的资源消耗情况 saas 服务提供商是根据 sla 为租户提供满足一定 qos 的服务 40 然而 sla 的指标通常与系统资源不一定是一一对应的 系统资源通常有 cpu 内 存 带宽等硬件指标 41 42 43 而 saas 软件关注的是服务质量指标 如用户数 响应时间 可用性 吞吐量 可用带宽等 需要把 sla 的质量指标转换为资 源消耗 因此 资源消耗的量化研究要找到 sla 与资源消耗直接的关系 努 力建立一个资源消耗模型 针对每一个 sla 指标 尽量得出它与每一种系统 资源之间的量化关系 例如要达到某个响应时间 需要占用多少 cpu 消耗 多大的内存 通过实验测量获取测试数据 然后利用数学的方法进行建模分析 最终建 立一个资源消耗模型 在 saas 软件部署运行过程中 对系统资源进行监测度 哈尔滨工业大学工学硕士学位论文 11 量 并根据获取的运行时参数修正之前的资源消耗模型 使得模型的正确性得 以提高 1 4 当前存在的问题 通过对 saas 优化部署的研究现状分析来看 目前存在的主要问题有 1 资源限制 适用范围窄 现有的优化部署方案 大多限制了资源数 量 是在已知资源数量的前提下进行的 21 24 27 例如已知服务器的个数 运 行实例的个数等信息时 再去从不同的优化目标确定分配方案 真实的应用 环境中 往往是先确定了租户的数量和需求 才能确定对资源的消耗 2 侧重点不同 一方面从租户到 saas 实例的分配关系 26 31 另一方 面从 saas 实例到虚拟机服务器的部署关系 20 30 32 35 虽然都取得了较好的运 算结果 但较少有把整个的部署关系综合起来考虑 以求达到提高 saas 供应 商利益的目的 3 缺少资源消耗度量方案 现有的优化部署方案都会给出一个资源消 耗模型 26 但通常都是一个假设的模型 并且考虑的参数也各不相同 目前 关于怎么确定资源消耗度量方案的研究不多 36 39 本文主要从问题 1 和问题 2 进行研究 解决资源数量不确定时的多 租户 saas 应用静态优化部署和动态优化部署问题 包括其中的租户放置问题 实例部署问题和资源消耗模型建立等 在资源消耗度量方面 从资源监测模型 和技术实现方面进行研究 1 5 主要工作内容 本文的主要研究内容为 首先研究了多租户 saas 架构的相关理论 分析 现有 saas 软件优化部署中存在的问题 对静态优化部署和动态优化部署分别 进行了相关研究 针对不同的应用场景设计了不同的算法 用于求解 saas 软 件优化部署策略选择问题 并通过模拟实验对算法进行了验证和对比分析 随 后建立了一个资源监测模型 用于监测模拟环境中各个服务器的资源消耗状 况 为资源消耗模型的建立和调整提供依据 最后设计了一个 saas 软件优化 部署的原型系统 模拟了静态和动态优化部署的业务流程 开发了一个仿真部 署工具 1 静态优化部署算法 在静态优化部署的研究中 首先提出多租户 saas 的资源消耗模型 然后 对租用基础设施和自有基础设施的静态优化部署两种情况进行了研究 给出问 哈尔滨工业大学工学硕士学位论文 12 题模型并且采用遗传算法对所提出的问题进行求解 最后给出了实验验证和结 果分析 2 动态优化部署方法 在动态优化部署的研究中 首先给出了动态优化部署的问题模型 确定动 态情况下的优化目标 然后提出了基本最小剩余资源算法和基于 kld 的最小 剩余资源算法对租户放置问题进行求解 最后通过模拟实验对算法进行了验证 分析 对两个算法的性能和解的质量进行了比较 3 原型系统设计实现 为了模拟静态和动态情况下的租户放置问题 本文开发了一个仿真的部署 工具 即原型系统 利用该工具 能够对部署的业务流程进行模拟 在不同的 情况下 调用合适的算法 将得出的优化部署策略直观的展现出来 在原型系 统设计实现的研究中 分别从系统体系结构 功能模块 数据库等方面进行设 计 最后采用一定的技术对系统进行实现 1 6 论文章节安排 论文的研究思路如图 1 3 所示 课题中需要解决的问题主要是资源消耗模 型的建立 初次部署时如何确定服务器 应用实例等软硬件资源的需求 在系 统运行过程中 新租户请求到来时如何根据各服务器节点的运行状态 给出合 理的部署方案 最后是如何通过一个部署策略选择工具方便地进行部署策略选 择 经过问题提取 建模分析后 运用合适的算法进行求解 从问题需求到得 到部署策略结果的业务过程最终整合到原型系统 资源消耗计 算模型 问 题 空 间 方 法 空 间 算 法 空 间 应 用 验 证 动态优化 部署策略 优化部署原型系统 初次部署 资源需求 部署策略选择 工具 静态优化部署算法 静态优化 部署策略 动态租户放置 资源监 测度量 动态优化部署算法 问题模型问题模型 图 1 3 论文研究思路图 哈尔滨工业大学工学硕士学位论文 13 论文结构安排如下 第 1 章主要阐述了课题的来源 研究的目的和意义 从云计算 saas 模 式的国内外研究现状 分析多租户 saas 模式的相关问题 总结出现有部署策 略选择算法中存在的问题 第 2 章主要阐述了静态部署策略的研究 在这一章给出了资源计算模型 分析了 saas 服务提供商自有基础设施和租用基础设施两种情形下的不同部 署策略选择算法 分别给出了两种环境下的问题描述 算法设计和模拟实验 结果及分析 第 3 章主要 saas 软件动态优化部署进行研究 首先 对动态优化部署问 题进行了描述 其次研究了基本最小剩余资源算法和基于 kld 的最小剩余 资源算法 最后采用模拟的方法对提出的两个算法进行了实验验证 分析和 比较了两个算法对问题的求解效果 第 4 章主要对原型系统的设计与实现进行了研究 首先介绍了原型系统 工作的业务流程 主要是静态优化部署和动态优化部署策略生成流程 其次 根据系统的业务流程对系统的功能模块进行了设计 然后着重分析了原型系 统监测模块的设计与原理 最后给出了原型系统的数据库设计和系统实现 哈尔滨工业大学工学硕士学位论文 14 第2章 静态优化部署算法 saas 服务提供商在未向租户提供服务之前的初次部署称为静态优化部署 静态优化部署的研究主要是静态优化部署策略选择算法的研究 本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论