应用于云环境下应用系统混合部署的组件部署方法和装置的制造方法

文档序号:9251043阅读:256来源:国知局
应用于云环境下应用系统混合部署的组件部署方法和装置的制造方法
【技术领域】
[0001] 本发明属于计算机系统的云计算应用领域,具体的说,涉及到一种应用于云环境 下应用系统混合部署的组件部署方法和装置。
【背景技术】
[0002] 云计算是近年来新兴的一种计算能力交付服务模式,通过网络以按需、易扩展的 方式提供用户所需的计算资源或服务。自云计算的概念提出后,学术界和工业界都展开 了广泛的研宄,各大IT厂商也陆续推出了自己的云计算产品,例如微软公司提供Windows Azure云操作系统供应用系统迀移及部署,亚马逊公司的AWS(AmazonWebServices)中 的EC2以公有云IAAS的方式提供虚拟机为用户部署应用,Google公司的GAE(GoogleApp Engine)以公有云PAAS的方式为应用系统的部署提供开发和运行环境。
[0003] 尽管有提升资源利用率、动态调度资源、统一运营管理等显著的优点,公有云平台 普遍存在的在数据安全、运行性能等方面的不足以及用户对云环境下的管理、运维等方面 的接受程度,使得将复杂的应用系统部署到云计算平台上仍然是一个挑战。
[0004] 首先,由于不能对公有云的基础设施进行有效控制,以及目前缺乏严格的云计算 服务规范和安全标准,大型企业对来自互联网的公有云中的数据安全往往不太信任,而数 据安全对于企业至关重要。在这种情况下,企业在使用公有云服务时,倾向于把敏感数据 继续保留在本地,把其它应用程序迀移到公有云上,即采取混合部署方法。在混合部署模式 下,企业内部的数据中心继续用于支持企业的核心业务流程,而公有云则一般用于为那些 不太关键的应用程序提供按需服务能力,并且可以利用公有云按需付费的好处来面对突然 爆发的峰值环境下的计算需求。
[0005] 其次,在目前云计算技术的发展阶段,由于虚拟化技术的限制,公有云平台所能提 供的单台"云主机"的性能,尚不能很好满足计算密集型应用和1/〇(输入/输出)密集型 应用的运行要求。这在客观上使得复杂应用系统中的部分组件只能选择部署运行在本地以 充分满足业务需求。
[0006] 最后,对于"云计算"这个近年来新兴的事物,从了解概念到尝试使用再到熟练使 用,需要用户在管理、运维等方面做出很多调整,这是个逐渐的过程。
[0007] 基于上述诸多因素,混合部署作为复杂应用系统同时部署于本地和公有云的一种 有效解决方法,在研宄和实践中日益得到广泛重视。由于复杂应用系统通常包含很多组件, 在具体实施混合部署时,合理设计组件在本地和云平台的部署极为迫切。

【发明内容】

[0008] 针对现有技术的不足,本发明实施方式的目的在于提供一种应用于云环境下应用 系统混合部署的组件部署方法和装置,旨在解决现有技术中缺乏合理地将组件部署在本地 和云平台的方法的技术缺陷。
[0009] 为此,本发明实施例提供了一种应用于云环境下应用系统混合部署的组件部署方 法,包括:
[0010] 步骤SlO:根据预设规则将所述应用系统的组件中部署在云端的组件归为第一组 件集、部署在本地的组件归为第二组件集,不属于所述第一组件集和第二组件集的组件归 为第三组件集;
[0011] 步骤S20 :计算所述第三组件集中的组件与所述第一组件集中的组件和第二组件 集中的组件的通讯流量值;
[0012] 步骤S30 :选择所述第三组件集中通讯量最大的组件,如果该组件与所述第一组 件集中的组件通讯量最大,则将该组件部署在云端,否则部署在本地。
[0013] 优选地,所述步骤S20包括:根据通讯流量的大小按照从大到小的方向将所述第 三组件集中的组件进行排序,形成组件队列;以及,
[0014] 所述步骤S30包括:选择所述组件队列中位于首位的组件作为通讯量最大的组 件。
[0015] 优选地,在所述步骤S30后,还包括:判断所述第三组件集中是否还有组件,如果 有,则进入步骤S20。
[0016] 优选地,在步骤SlO之前,还包括:计算所述应用系统的资源需求,所述资源需求 包括所述应用系统的带宽资源,所述带宽资源为所述应用系统的内部组件通信的需求值与 所述应用系统向外通信的需求值之和。
[0017] 优选地,所述预设规则包括:涉及敏感数据的组件归为所述第一组件类,以及,所 述应用系统进行负载均衡应对爆发峰值下的计算需求较大的组件归为第二组件集。
[0018] 一种应用于云环境下应用系统混合部署的组件部署装置,包括:
[0019] 归类模块,用于根据预设规则将所述应用系统的组件中部署在云端的组件归为第 一组件集、部署在本地的组件归为第二组件集,不属于所述第一组件集和第二组件集的组 件归为第三组件集;
[0020] 计算模块,用于计算所述第三组件集中的组件与所述第一组件集中的组件和第二 组件集中的组件的通讯流量值;
[0021] 部署模块,用于选择所述第三组件集中通讯量最大的组件,如果该组件与所述第 一组件集中的组件通讯量最大,则将该组件部署在云端,否则部署在本地。
[0022] 优选地,所述计算模块还包括:排序模块,用于根据通讯流量的大小按照从大到 小的方向将所述第三组件集中的组件进行排序,形成组件队列;
[0023] 所述部署模块还包括:选择模块,用于选择所述组件队列中位于首位的组件作为 通讯量最大的组件。
[0024] 优选地,还包括:判断模块,用于判断所述第三组件集中是否还有组件,如果有,则 调用所述计算模块。
[0025] 优选地,还包括:资源需求获取模块,用于计算所述应用系统的资源需求;
[0026] 其中,所述资源需求包括所述应用系统的带宽资源,所述带宽资源为所述应用系 统的内部组件通信的需求值与所述应用系统向外通信的需求值之和。
[0027] 与现有技术相比,本发明实施例提供的组件部署方法和装置对应用系统中的组件 根据预设规则进行部署,对不能根据预设规则进行部署的组件,则根据组件的通讯量进行 部署。这样,既考虑到数据安全、系统性能等对应用系统的限制条件,又能最大程度减小网 络通讯流量,能较好地满足在具体实施复杂应用系统混合部署的需求。
【附图说明】
[0028] 图1是本发明实施例所述一种应用于云环境下应用系统混合部署的组件部署方 法中应用系统的架构图;
[0029] 图2是本发明实施例一种应用于云环境下应用系统混合部署的组件部署方法的 流程图;
[0030] 图3是本发明实施例一种应用于云环境下应用系统混合部署的组件部署方法中 应用系统的架构图;
[0031] 图4是本发明实施例一种应用于云环境下应用系统混合部署的组件部署方法中 对应用系统进行归类的示意图;
[0032] 图5a和图5b是本发明实施例一种应用于云环境下应用系统混合部署的组件部署 方法中对应用系统的第三类组件集归类的示意图;
[0033] 图6是本发明实施例一种应用于云环境下应用系统混合部署的组件部署装置的 中结构示意图。
【具体实施方式】
[0034] 下面结合附图,对本发明的实施方式做进一步说明。
[0035] 参见图1,图1是本发明实施例所述一种应用于云环境下应用系统混合部署的组 件部署方法中应用系统的架构图。作为一个示例,图1可以是多租户精品课程网站群应用 系统和品高云计算平台。品高云(BingoCloud)是品高软件自主研发、国内首个商用级基 础架构云产品,主要面向政府和企业客户,帮助其构建Amazon式的弹性、按需、自助的云服 务平台,主要架构同Eucaplytus类似。多租户精品课程网站群应用系统是作者所在的云计 算团队以Jeecms项目技术为基础,开发的具有多租户架构的精品课程网站群应用系统,系 统以一门课程作为一个租户,在多个租户间共享系统的软、硬件资源。该应用系统共分为四 大组件:内容管理服务器30、FTP服务器20、web应用服务器40和数据库服务器10。
[0036] 参见图2,图2是本发明实施例一种应用于云环境下应用系统混合部署的组件部 署方法的流程图。图2示出的部署方法包括步骤S10-S30。在本实施方式中,假设云平台可 提供的虚拟资源远大于应用系统需求的虚拟资源,即云平台总能满足应用系统中各组件的 资源需求。
[0037] 在步骤SlO中,根据预设规则将所述应用系统的组件中部署在云端的组件归为第 一组件集、部署在本地的组件归为第二组件集,不属于所述第一组件集和第二组件集的组 件归为第三组件集。其中,所述预设规则包括:
[0038] 规则1 :涉及敏感数据的组件归为所述第一组件类,以及,
[0039] 规则2 :所述应用系统进行负载均衡应对爆发峰值下的计算需求较大的组件归为 第二组件集。
[0040] 图1示出的应用系统包括内容管理服务器30、FTP服务器20、web应用服务器40 和数据库服务器10。为了方便描述,下面将web应用服务器40用组件Cl表示,数据库服务 器10用组件C2表示,FTP服务器20用组件C3表示,内容管理服务器30用组件C4表示。
[0041]根据规则I,把应用系统中的组件C2放到本地组件集合中,初步建立第一组件集L 为:
[0042] L= {C2};
[0043] 根据规则2,把组件Cl放到第二组件集中,初步建立第二组件集M为:
[0044] M= {C1
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1