基于成本优化的多租户SaaS应用优化放置算法
2014-08-10孟凡超周学权曹祖凤初佃辉战德臣
孟凡超,周学权,曹祖凤,初佃辉,战德臣
(哈尔滨工业大学(威海)企业与服务智能计算研究中心,山东 威海 264209)
0 引言
随着云计算的出现,IT领域正在进行着一场深刻的变革。云计算是一种新型的计算模型,它将IT资源、数据和应用作为服务,通过互联网提供给用户[1]。云计算根据其服务类型可分为基础设施即服务(Infrastructure as a Service,IaaS)、平台即服务(Platform as a Service,PaaS)和软件即服务(Software as a Service,SaaS)。在SaaS模式下,客户不需要购买完整的软件系统,也不需要配备相应的硬件系统和维护人员,只需通过互联网按需租用应用软件即可,这对成本预算有限、技术条件不足的中小企业来说,具有很强的吸引力[2]。
在云计算环境下,SaaS主要涉及客户(也称为租户)、SaaS提供商和云基础设施提供商[3]三类角色。租户租用SaaS提供商所提供的SaaS应用来满足自己的业务需求,每个租户可以租用一个或多个SaaS应用。SaaS提供商通过向租户提供SaaS应用服务来获取利润,每个SaaS应用可以部署多个实例,这些实例被部署在云基础设施提供商所提供的虚拟机上,例如,Amazon的弹性计算云EC2,或者部署在自己的服务器或虚拟机上,本文主要研究前者,即租用云基础设施提供商的虚拟机,此时SaaS提供商需要向云基础设施提供商支付相应的租金[4]。云基础设施提供商对外提供一组虚拟机模板,由同一模板所生成的虚拟机具有相同的资源配置和价格,例如,亚马逊提供的虚拟机模板有m1.small,m1.large和 m1.large等[5]。
基于成本优化的SaaS应用放置是指在SaaS应用部署的初始阶段,SaaS提供商根据已有……
