用于在计算资源上部署应用的计算机实现的方法、系统和计算机程序产品的制作方法

文档序号:9264690阅读:438来源:国知局
用于在计算资源上部署应用的计算机实现的方法、系统和计算机程序产品的制作方法
【专利说明】
【背景技术】
[0001]本发明涉及用于在计算资源上部署应用的计算机实现的方法、系统和计算机程序
τ?: 口广PR ο
[0002]软件即服务(SaaS)为一种递送模型,其基本思想在于:通过互联网按需提供应用至客户。与类似的但是更旧的方法相反,SaaS促进多租用作为开发规模经济的工具。这意味着应用的单个实例服务多个客户。客户(也称租户)例如是签约使用该应用的公司、俱乐部或私人。即使多个客户使用同一实例,其每一者均认为该实例仅针对自己。这是通过相互隔离租户的数据来实现的。与单租用相反,多租用在同一实例上控制多个租户。
[0003]然而,多租用应用的主要缺点之一在于,客户在与其他租户共享基础设施、应用代码、或数据中的犹豫。这是由于客户害怕由于系统差错、故障、或破坏性动作而使得其他租户可能访问其数据的事实。目前该问题仅通过在单个实例上实现和改进租户的隔离来处理。

【发明内容】

[0004]本发明的目标在于提供技术简单、有效并且特别低成本的用于提供软件服务的解决方案,其中应用的信息安全与产业标准相比较而言更高,由此优化计算资源的利用效率。
[0005]本发明的目标由用于在计算资源上部署应用的计算机实现的方法实现,其中该应用被远程地提供至用户的多个租户,其中该应用包含多个应用组件,该计算机实现的方法包含:
[0006]-定义租户组集合以用于分类该多个租户,
[0007]-将该多个租户中的每个租户指派给该租户组集合中的至少一个租户组,
[0008]-针对该多个应用组件中的应用组件和该多个租户中的租户的每个组合提供部署模型,
[0009]-根据该部署模型确定应用组件和租户的每个组合的约束信息,其中该部署模型被配置成使该多个租户中的每个租户能将整个租户组包括在共享一个或多个应用组件和/或计算资源的基础设施中和/或从共享一个或多个应用组件和/或计算资源的基础设施中排除,
[0010]-根据关联于该多个应用组件中的每个应用组件的约束信息确定该应用在该计算资源上的有效部署配置,
[0011]-根据所确定的有效部署配置在该计算资源上部署该应用。
[0012]本发明的目标还由计算机实现的用于在计算资源上部署应用的方法来实现,其中该应用被远程地提供至用户的多个租户,其中该应用包含多个应用组件,该计算机实现的方法包含:
[0013]-定义租户组集合以用于分类该多个租户,
[0014]-将该多个租户中的每个租户指派给该租户组集合中的至少一个租户组,
[0015]-对于该多个应用组件中的每个应用组件,将关联于该应用组件的部署模型提供至该多个租户中的每个租户,
[0016]-对于该多个应用组件的每个应用组件,根据关联于该应用组件的部署模型从该多个租户中的每个租户接收约束信息,
[0017]-根据关联于该多个应用组件中的每个应用组件的约束信息,确定该应用在计算资源上的有效部署配置,
[0018]-根据所确定的有效部署配置在该计算资源上部署该应用。
[0019]由此,根据本发明有利的是,通过多租用和单租用之间的混合解决方案(其还称为混合租用),应用的操作成本通过在多个租户之中共享计算资源而减少。该应用的提供商在本文中称为运营商或服务提供商。例如,与多租户感知的包括数据隔离、性能隔离或性能配置的SaaS应用框架形成对比,本发明的计算机实现的方法使租户给出关于其应用组件如何被部署并且和谁一起部署的输入。由此,因为租户不共享同一应用组件实例,因而达成相当高的数据安全性。该混合的租用部署具有的优点是:与单个租用部署相比较而言更加高效地使用基础设施、特别是计算资源,其中高效使用计算资源表示运行该应用所需的计算资源被最小化,例如所需存储器的大小和/或处理器的数量被最小化。同时,与多租用部署相比较,更好的信息安全被实现。特别地,多租用应用基于面向服务的架构的概念来构建,其中所谓的复合SaaS应用由多个应用组件组成,每个应用组件提供很小的功能性。可选地,特别地可以提供整体的多租用应用。特别地,整体软件系统表示功能上可区分的组件交织,而非在架构上与该应用分开。例如,根据本发明的方法包含使该客户或租户能选择该租户是否希望或与多个租户中的其他哪个租户共享特定应用组件。以这种方式,租户可面向其应用变量的部署来声明其需求。基于接收自该租户的约束信息,有利地,可以相当快的方式确定该应用的最高效部署配置,由此减少需要的计算资源。此外,该方法特别地包含使多个租户中的每个租户能够将整个租户组包括在共享相同计算资源中和/或从共享相同计算资源中排除。特别地,组集合的定义包括表示特定产业的组的建立,例如信息技术(IT)企业产业,电信产业和/或制药产业的公司。所定义的组集合然后可用于根据其操作的产业来指派租户。组集合例如以如下方式定义,即该产业的层次结构映射至组集合。例如,银行和保险均为金融产业的一部分,其中租户被允许从共享相同计算资源或应用中仅排除该银行产业或整个金融产业。特别地,将租户指派到各组中允许通过排除租户自己操作的所有产业来实现租户关于与竞争者共享IT基础设施或计算资源的约束要求。此外优选地,使租户能够明确包括或排除不是该应用的租户的其他租户,其中该客户库被保密。特别地,虚拟租户为真实存在但不是该应用的租户的租户,其中该方法包括用在该应用被部署之后成为该应用的租户的企业来替代该虚拟租户。例如,该虚拟租户通过保持先前由所有其他租户指定的所有约束有效而转换成租户。由此有利地,提供商可避免公开关于其客户或租户的身份的信息。
[0020]优选地,部署模型为部署约束的蓝图,其定义了租户是否或如何被允许表达其部署或特定应用组件和/或部署等级的部署约束。例如,部署模型是用于接收与租户、应用组件和/或部署等级的特定组合相关联的约束信息的接口。
[0021]部署约束(其在本文称为约束信息)是租户关于该计算资源的基础设施是否可共享或可与哪个(些)其他租户和/或租户组共享的描述。必要地,租户给出整个应用的部署的数个部署约束。
[0022]如果应用于由所有租户定义的所有部署约束,则部署配置是有效的。
[0023]优选地,针对应用组件、租户和部署等级序列中的部署等级的每个组合提供部署模型,其中在这种情况下,针对应用组件、租户和部署等级的这种组合中的每一个组合确定约束信息。
[0024]优选地,该计算资源包含用于该多租用应用的部署的一个或多个硬件和/或软件资源(基础设施)。特别地,在该上下文中,该计算资源的不同层可还理解为该计算资源的基础设施的栈或基础设施栈。
[0025]优选地,通过利用该部署模型来针对应用组件、租户和部署等级的每个组合确定约束信息。优选地,该部署模型被配置成使多个租户中的每个租户能够将整个租户组包括在共享一个或多个应用组件和/或部署等级(该计算资源的基础设施栈的等级)中和/或从共享一个或多个应用组件和/或部署等级(该计算资源的基础设施栈的等级)中排除。
[0026]特别地,部署等级(DL)被定义为运营商的基础设施栈的一部分一一也称为基础设施栈的片或等级。此类片优选地封装该基础设施栈的一个或多个层。根据本发明,优选地,租户不仅可表达关于应用组件的共享的约束,而且可表达关于底层的基础设施的约束。此类共享的示例可以是:安全意识很高的租户需要指定的应用组件实例,但愿意与来自特定地理区域的其他客户但不与竞争者共享该底层的虚拟机和物理服务器。
[0027]根据本发明优选的实施例,针对应用组件和租户的每个组合确定约束信息包含:
[0028]-从关联于多个应用组件中的进一步应用组件的进一步约束信息中推导关联于该应用组件的约束信息,该进一步应用组件与该应用组件呈阶层关系;或
[0029]-从多个租户中关联至该应用组件的租户接收该约束信息。
[0030]由此,有利地,可最小化描述所有部署约束所需的工作。特别地,租户仅需要定义与该应用组件呈阶层关系的进一步应用组件的约束信息。优选地,多个应用组件之间的阶层关系对应于不具有周期的定向图。优选地,该进一步应用组件关联于比该应用组件更高的等级,例如该进一步应用组件对应于更接近该定向图顶部的位置。优选地,根据本发明,该进一步约束信息是通过在该阶层中以自顶向下方向继承的方式从该约束信息中推导出的。由此,有利地,可保证较高等级的进一步应用组件(父应用组件)在从该进一步约束信息推导关联于较低等级应用组件(子应用组件)的约束信息之前已关联于该进一步约束信息。优选地,相对于进一步约束信息,该约束信息与等同限制性的或更具有限制性的部署约束有关。
[0031]根据本发明进一步优选的实施例,有效部署配置是通过优化方法确定的,其中在优化方法的第一步骤中,针对多个应用组件中的每个应用组件生成多个初始部署单元中的至少一个初始部署单元,该多个初始部署单元关联于部署等级序列的初始部署等级,其中在该优化方法的第二步骤中,针对部署等级序列中的每个进一步部署等级生成关联于进一步部署等级的多个进一步部署单元,该多个进一步部署单元根据与该部署等级序列的先前部署等级相关联的多个先前部署单元来生成。
[0032]由此,有利地,可针对该运营商和该租户实现优化的多租用应用。优选地,对于该运营商,成本和工作减少,特别地在计算资源的基础设施的利用方面。优选地,对于该租户,数据安全同时被改进。一旦部署配置已被创建,将有每个部署等级的一个或多个实例。这些实例称为部署单元(DU)。如果部署配置仅导致最小成本,则通过仅利用应用组件实例和底层基础设施层的最小数量的单元,该部署配置是最佳的。优选地,针对整个部署等级序列重复第二步骤。
[0033]根据本发明进一步优选的实施例,该优化方法的第二步骤包含根据该约束信息确定最小数目的部署单元,以在进一步部署等级上部署多个先前部署单元。
[0034]由此,有利地,可通过应用该优化方法以高效方式实现最佳多租用应用。优选地,根据与应用组件和租户的所有组合相关联的、与进一步部署等级有关或者与进一步部署等级和一个或多个先前部署等级有关的所有部署约束或约束信息,在该进一步部署等级上部署多个先前部署单元。
[0035]根据本发明进一步优选的实施例,该应用的有效部署配置通过最小化关联于所有部署等级的部署单元的总数来优化。
[0036]由此,有利地,可在相对较短的时间段内提供最佳部署配置,其中该租户的所有约束均被考虑。
[0037]根据本发明优选的实施例,该计算机实现的方法包含:
[0038]-使多个租户中的每个租户包括和/或排除多个应用组件中的个体应用组件的模块,其中特别地,该模块为密码模块,用于加密和/或解密关联于该应用组件的数据。
[0039]由此,有利地,可以使租户在不同的技术实现之间选择,例如通过包括和/或排除不同的模块或技术解决方案。模块例如为应用组件的实例或应用组件的可选择特征。通过提供密码模块,有利地,可以使租户或租户组能安全访问数据、使用应用组件和/或相互通信。特别地,利用该密码模块,可进一步增加通过未授权路径的信息安全。例如,通过增加密码强度,可以如下方式增加未授权人员的计算资源需求:高度不可能或甚至技术上不可能获取该租户的信息或数据。
[0040]根据本发明进一步优选的实施例,该计算机实现的方法包含:
[0041]-使多个租户中的每个租户包括和/或排除多个应用组件中的个体应用组件。
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1