CN117215797A - 应用部署方法、装置、设备及计算机可读存储介质 - Google Patents
应用部署方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN117215797A CN117215797A CN202311301005.3A CN202311301005A CN117215797A CN 117215797 A CN117215797 A CN 117215797A CN 202311301005 A CN202311301005 A CN 202311301005A CN 117215797 A CN117215797 A CN 117215797A
- Authority
- CN
- China
- Prior art keywords
- physical machine
- deployed
- application
- determining
- candidate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 125000002015 acyclic group Chemical group 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及一种应用部署方法、装置、设备及计算机可读存储介质。本公开通过根据待部署应用的物理机需求自动从多个预设物理机中客观选择出与待部署应用最匹配的目标物理机,从而将待部署应用部署至目标物理机上,实现了应用部署的自动化,提高了应用部署的效率与准确性,极大降低人工成本。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种应用部署方法、装置、设备及计算机可读存储介质。
背景技术
私有化部署是指将产品对应的成百个应用部署在多台物理机,以支持产品的运行。
通常情况下,每个应用对于中央处理器(Central Processing Unit,CPU)和内存等物理机资源的需求不同,同时各个应用之间还存在亲和性与反亲和性等问题,因此将应用部署在物理机时需要综合考虑每个应用的各项需求。
但是,现有的应用部署过程通常是由人工进行部署操作,使得部署效率低下且无法保证准确性。
发明内容
为了解决上述技术问题,本公开提供了一种应用部署方法、装置、设备及计算机可读存储介质,以提高应用部署的效率与准确性。
第一方面,本公开实施例提供一种应用部署方法,包括:
获取每个预设物理机分别对应的物理机信息;
确定待部署应用的物理机需求;
根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;
根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;
确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;
将所述待部署应用部署至所述目标物理机上。
在一些实施例中,所述确定待部署应用的物理机需求之前,所述方法还包括:
确定多个待部署应用以及每个待部署应用之间的依赖关系;
根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序。
在一些实施例中,所述根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序,包括:
根据所述每个待部署应用之间的依赖关系,计算得到由所述多个待部署应用构成的有向无环图;
基于所述有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,确定所述多个待部署应用的部署信息计算顺序。
在一些实施例中,所述待部署应用的物理机需求至少包括下列几项:
所述待部署应用的物理机占用需求、所述待部署应用的资源占用需求、所述待部署应用的亲和性需求、所述待部署应用的反亲和性需求、所述待部署应用的端口占用需求。
在一些实施例中,所述根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度,包括:
获取所述物理机需求中每个需求项分别对应的预设权重;
针对每一个候选物理机,根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度。
在一些实施例中,所述根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度,包括:
根据所述物理机信息,确每个需求项对应的需求项分值与所述需求项对应的预设权重之积,得到每个需求项分别对应的权重分值;
计算所述每个需求项分别对应的权重分值,得到所述候选物理机的匹配分数,所述匹配分数表征所述候选物理机与所述待部署应用的匹配程度。
在一些实施例中,所述将所述待部署应用部署至所述目标物理机上,包括:
对所述每个预设物理机分别对应的物理机信息进行更新,得到更新后的物理机信息;基于更新后的物理机信息以及所述部署信息计算顺序确定下一个待部署应用及其对应的目标物理机,直到确定每个预设物理机分别对应的目标物理机;
将所述每个待部署应用分别部署至对应的目标物理机上。
第二方面,本公开实施例提供一种应用部署装置,包括:
获取模块,用于获取每个预设物理机分别对应的物理机信息;
第一确定模块,用于确定待部署应用的物理机需求;
第二确定模块,用于根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;
第三确定模块,用于根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;
第四确定模块,用于确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;
部署模块,用于将所述待部署应用部署至所述目标物理机上。
第三方面,本公开实施例提供一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的应用部署方法。
本公开实施例提供的应用部署方法、装置、设备及计算机可读存储介质,通过根据待部署应用的物理机需求自动从多个预设物理机中客观选择出与待部署应用最匹配的目标物理机,从而将待部署应用部署至目标物理机上,实现了应用部署的自动化,提高了应用部署的效率与准确性,极大降低人工成本。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的应用部署方法流程图;
图2为本公开实施例提供的一种应用场景的示意图;
图3为本公开实施例提供的一种有向无环图示意图;
图4为本公开另一实施例提供的应用部署方法流程图;
图5为本公开实施例提供的应用部署装置的结构示意图;
图6为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
本公开实施例提供了一种应用部署方法,下面结合具体的实施例对该方法进行介绍。
图1为本公开实施例提供的应用部署方法流程图。该方法可以应用于图2所示的应用场景,该应用场景中包括预设物理机集群21和终端设备22,终端设备22具体可以是任意的具有数据处理功能的设备,例如,智能手机、掌上电脑、平板电脑、带显示屏的可穿戴设备、台式机、笔记本电脑、一体机、智能家居设备等。可以理解的是,本公开实施例提供的应用部署方法还可以应用在其他场景中。
下面结合图2所示的应用场景,对图1所示的应用部署方法进行介绍,该方法包括的具体步骤如下:
S101、获取每个预设物理机分别对应的物理机信息。
以单个产品为例,该产品对应多个待部署应用,在应用部署方法中需要将每个待部署应用分别部署至多个预设物理机中的一个。
物理机是一种高性能、高可用、稳定的服务器,能够支持应用的运行。对于某个产品,预先确定该产品对应的多个预设物理机,在部署过程中会将该产品对应的多个待部署应用部署在这些预设物理机上。
在一些实施例中,物理机信息反映了预设物理机上的资源可用程度,例如预设物理机上可用的中央处理器(Central Processing Unit,CPU)资源、内存资源等等,当然并不仅限于此。物理机信息还可以包括预设物理机的属性信息,如预设物理机的标识、端口、IP地址等等,本公开实施例对此不作限定。
获取每个预设物理机分别对应的物理机信息,即获取每个物理机的资源情况,用于对待部署应用的部署方案提供参考。
S102、确定待部署应用的物理机需求。
本步骤中的待部署应用可以是从某个产品对应的多个待部署应用中根据预设规则确定的。
物理机需求即待部署应用对于其所需要部署的预设物理机的需求。对于每个待部署应用,根据待部署应用的执行的任务以及作用不同,其所对应的物理机需求也就不同,例如某些待部署应用需要部署至特定的一个或几个物理机上、某个待部署应用需要与指定待部署应用部署于同一个物理机上、某个待部署应用不能与指定待部署应用部署于同一个物理机上等等。
S103、根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机。
获取每个预设物理机分别对应的物理机信息,以及待部署应用的物理机需求后,就能够从多个预设物理机中筛选出符合待部署应用的物理机需求的一个或多个候选物理机。
S104、根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度。
S105、确定所述匹配程度最高的物理机为所述待部署应用的目标物理机。
每个候选物理机都能够满足待部署应用的物理机需求,但这些候选物理机之间的物理机信息可能有所不同,导致将待部署应用部署至不同的候选物理机上所得到的效果或是部署合理性有所不同。
因此,可以对候选物理机进行进一步的筛选,以得到对于待部署应用来说最合适的候选物理机,具体的,可以根据每个候选物理机分别对应的物理机信息以及待部署应用的物理机需求确定每个候选物理机与待部署应用的匹配程度,将匹配程度最高的物理机作为待部署应用对应的目标物理机。
S106、将所述待部署应用部署至所述目标物理机上。
具体的,若存在多个待部署应用,可以确定每个待部署应用分别对应的目标物理机后,对多个待部署应用进行统一部署。
本公开实施例通过获取每个预设物理机分别对应的物理机信息;确定待部署应用的物理机需求;根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;将所述待部署应用部署至所述目标物理机上,通过根据待部署应用的物理机需求自动从多个预设物理机中客观选择出与待部署应用最匹配的目标物理机,从而将待部署应用部署至目标物理机上,实现了应用部署的自动化,提高了应用部署的效率与准确性,极大降低人工成本。
在上述实施例的基础上,所述确定待部署应用的物理机需求之前,所述方法还包括:确定多个待部署应用以及每个待部署应用之间的依赖关系;根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序。
具体的,所述根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序,包括:根据所述每个待部署应用之间的依赖关系,计算得到由所述多个待部署应用构成的有向无环图;基于所述有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,确定所述多个待部署应用的部署信息计算顺序。
如上所述,通常情况下一个产品对应多个待部署应用,而每个待部署应用之间均可能存在依赖关系。依赖关系表示至少两个应用之间的联系。
根据依赖关系可以将一个产品对应的多个待部署应用组织成特定的结构,例如有向无环图(Directed Acyclic Graph,DAG)。在由多个待部署应用构成的有向无环图中,每个待部署应用分别作为一个节点,节点之间的有向边表示了相应两个待部署应用之间存在依赖关系,有向边从最顶层待部署应用开始,依次指向下一层的待部署应用,最终指向最底层的待部署应用。
部署信息计算顺序是指确定待部署应用对应的目标物理机的顺序,对于一个待部署应用,其在部署信息计算顺序中越靠前,则越先确定该待部署应用对应的目标物理机。按照最底层待部署应用到最顶层待部署应用的排列顺序,确定多个待部署应用的部署信息计算顺序,即按照最底层待部署应用到最顶层待部署应用的排列顺序,依次确定每个待部署应用对应的目标物理机。
在一些实施例中,若同一层存在多个待部署应用,则对同一层的多个待部署应用进行随机排列。
图3为本公开实施例提供的一种有向无环图示意图。如图3所示,应用A、应用B、应用C、应用D、应用E、应用F代表六个待部署应用,应用F为最底层待部署应用,应用A为最顶层待部署应用;应用D与应用E为应用F的上一层待部署应用,应用B与应用C为应用D与应用E的上一层待部署应用。对于同一层应用,例如应用B与应用C,它们之间的部署信息计算顺序是随机的。在一种可能的实现方式中,根据如图3所示的有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,能够得到部署信息计算顺序为应用F、应用D、应用E、应用B、应用C、应用A。可以理解的是,由于应用B与应用C、应用D与应用E之间的部署信息计算顺序是随机的,根据如图3所示的有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,能够得到部署信息计算顺序并不仅限于如上所述的一种,此处不再赘述。
本公开实施例通过根据多个待部署应用之间的依赖关系依次确定每个待部署应用对应的目标物理机,进一步提高了应用部署方法的合理性。
图4为本公开另一实施例提供的应用部署方法流程图,如图4所示,该方法包括如下几个步骤:
S401、获取每个预设物理机分别对应的物理机信息。
S402、确定多个待部署应用以及每个待部署应用之间的依赖关系。
S403、根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序。
具体的,根据所述每个待部署应用之间的依赖关系,计算得到由所述多个待部署应用构成的有向无环图;基于所述有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,确定所述多个待部署应用的部署信息计算顺序。
S404、根据所述部署信息计算顺序,确定下一个待部署应用及其物理机需求。
可以理解的是,首次执行此步骤时,下一个待部署应用即在部署信息计算顺序中排位最靠前的待部署应用。
S405、根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机。
S406、获取所述物理机需求中每个需求项分别对应的预设权重。
具体的,待部署应用的物理机需求至少包括下列几项:所述待部署应用的物理机占用需求、所述待部署应用的资源占用需求、所述待部署应用的亲和性需求、所述待部署应用的反亲和性需求、所述待部署应用的端口占用需求。
其中,所述待部署应用的物理机占用需求表示该待部署应用是否有特定物理机的部署需求,以及若该待部署应用有特定物理机的部署需求时特定物理机的标识;所述待部署应用的资源占用需求表明了待部署应用所需要的CPU、内存、磁盘等资源;所述待部署应用的亲和性需求表明的该待部署应用是否需要和特定待部署应用部署在同一物理机上,以及若该待部署应用需要和特定待部署应用部署在同一物理机上时特定部署应用的标识;所述待部署应用的反亲和性需求表明的该待部署应用是否不能和特定待部署应用部署在同一物理机上,以及若该待部署应用不能和特定待部署应用部署在同一物理机上时特定部署应用的标识;所述待部署应用的端口占用需求表明该待部署应用所需要占用的端口。
可以理解的是,物理机需求还可以包括其他的需求项,技术人员可以根据实际需要进行设置。
针对每一个需求项,分别设置相同或不同的预设权重。例如,对于所述待部署应用的物理机占用需求、所述待部署应用的亲和性需求、所述待部署应用的反亲和性需求、所述待部署应用的端口占用需求可以设置较大的预设权重,因为这些需求项是必须满足的;而对于待部署应用的资源占用需求可以根据预设物理机的剩余比例赋予不同的权重。
S407、针对每一个候选物理机,根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度。
具体的,根据所述物理机信息,确每个需求项对应的需求项分值与所述需求项对应的预设权重之积,得到每个需求项分别对应的权重分值;计算所述每个需求项分别对应的权重分值,得到所述候选物理机的匹配分数,所述匹配分数表征所述候选物理机与所述待部署应用的匹配程度。
需求项分值表征物理机信息与相应需求项的满足程度。例如,对于待部署应用的资源占用需求,在候选物理机能够满足所述待部署应用的资源占用需求的情况下,候选物理机剩余的可用资源越多,这一需求项对应的需求项分值则越高。需求项分值与所述需求项对应的预设权重之积即为此需求项对应的权重分值,每个需求项对应的权重分值之和即为候选物理机的匹配分数。
例如,某一候选物理机对于四个需求项分别对应的需求项分值,分别记为a、b、c、d,相应的四个需求项分别对应的预设权重分别记为u、v、x、y,则该物理机对应的匹配分数w计算过程如下:
w=a*u+b*v+c*x+d*y
S408、确定所述匹配程度最高的物理机为所述待部署应用的目标物理机。
具体的,确定匹配分数最高的物理机为所述待部署应用的目标物理机。
S409、对所述每个预设物理机分别对应的物理机信息进行更新,得到更新后的物理机信息。
在确定某一待部署应用对应的预设物理机后,需要对每个预设物理机分别对应的物理机信息进行更新。例如,对于刚刚确定的目标物理机来说,需要将待部署应用所需要占用的计算资源从该物理机的物理机信息中去除相应部分。
在确定下一个待部署应用对应的目标物理机时,即可根据更新后的物理机信息执行相应的步骤。
S410、判断是否存在未确定目标物理机的待部署应用。若是,执行S404;若否,执行S411。
循环执行上述S404~S409,直到确定所有待部署应用对应的目标物理机。
S411、将所述每个待部署应用分别部署至对应的目标物理机上。
本公开实施例通过根据多个待部署应用之间的依赖关系依次确定每个待部署应用最匹配的目标物理机,并将每个待部署应用分别部署至对应的目标物理机上,在保证应用部署效率的同时,还能够保证应用部署的合理性。
图5为本公开实施例提供的应用部署装置的结构示意图。该应用部署装置可以是如上实施例所述的终端设备,或者该应用部署装置可以是该终端设备中的部件或组件。本公开实施例提供的应用部署装置可以执行应用部署方法实施例提供的处理流程,如图5所示,应用部署装置50包括:获取模块51、第一确定模块52、第二确定模块53、第三确定模块54、第四确定模块55、部署模块56;其中,获取模块51用于获取每个预设物理机分别对应的物理机信息;第一确定模块52用于确定待部署应用的物理机需求;第二确定模块53用于根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;第三确定模块54用于根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;第四确定模块55用于确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;部署模块56用于将所述待部署应用部署至所述目标物理机上。
可选的,应用部署装置50还包括第五确定模块57,第五确定模块57包括第一确定单元571、第二确定单元572;第一确定单元571用于确定多个待部署应用以及每个待部署应用之间的依赖关系;第二确定单元572用于根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序。
可选的,第二确定单元572用于根据所述每个待部署应用之间的依赖关系,计算得到由所述多个待部署应用构成的有向无环图;基于所述有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,确定所述多个待部署应用的部署信息计算顺序。
可选的,所述待部署应用的物理机需求至少包括下列几项:所述待部署应用的物理机占用需求、所述待部署应用的资源占用需求、所述待部署应用的亲和性需求、所述待部署应用的反亲和性需求、所述待部署应用的端口占用需求。
可选的,第三确定模块54包括获取单元541、计算单元542;获取单元541用于获取所述物理机需求中每个需求项分别对应的预设权重;计算单元542用于针对每一个候选物理机,根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度。
可选的,计算单元542用于根据所述物理机信息,确每个需求项对应的需求项分值与所述需求项对应的预设权重之积,得到每个需求项分别对应的权重分值;计算所述每个需求项分别对应的权重分值,得到所述候选物理机的匹配分数,所述匹配分数表征所述候选物理机与所述待部署应用的匹配程度。
可选的,部署模块56包括更新单元561、部署单元562;更新单元561用于对所述每个预设物理机分别对应的物理机信息进行更新,得到更新后的物理机信息,基于更新后的物理机信息以及所述部署信息计算顺序确定下一个待部署应用及其对应的目标物理机,直到确定每个预设物理机分别对应的目标物理机;部署单元562用于将所述每个待部署应用分别部署至对应的目标物理机上。
图5所示实施例的应用部署装置可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6为本公开实施例提供的电子设备的结构示意图。该电子设备可以是如上实施例所述的终端设备。本公开实施例提供的电子设备可以执行应用部署方法实施例提供的处理流程,如图6所示,电子设备60包括:存储器61、处理器62、计算机程序和通讯接口63;其中,计算机程序存储在存储器61中,并被配置为由处理器62执行如上所述的应用部署方法。
另外,本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的应用部署方法。
此外,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的应用部署方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种应用部署方法,其特征在于,所述方法包括:
获取每个预设物理机分别对应的物理机信息;
确定待部署应用的物理机需求;
根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;
根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;
确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;
将所述待部署应用部署至所述目标物理机上。
2.根据权利要求1所述的方法,其特征在于,所述确定待部署应用的物理机需求之前,所述方法还包括:
确定多个待部署应用以及每个待部署应用之间的依赖关系;
根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序。
3.根据权利要求2所述的方法,其特征在于,所述根据所述每个待部署应用之间的依赖关系,确定所述多个待部署应用中每个待部署应用的部署信息计算顺序,包括:
根据所述每个待部署应用之间的依赖关系,计算得到由所述多个待部署应用构成的有向无环图;
基于所述有向无环图中最底层待部署应用到最顶层待部署应用的排列顺序,确定所述多个待部署应用的部署信息计算顺序。
4.根据权利要求1所述的方法,其特征在于,所述待部署应用的物理机需求至少包括下列几项:
所述待部署应用的物理机占用需求、所述待部署应用的资源占用需求、所述待部署应用的亲和性需求、所述待部署应用的反亲和性需求、所述待部署应用的端口占用需求。
5.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度,包括:
获取所述物理机需求中每个需求项分别对应的预设权重;
针对每一个候选物理机,根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度。
6.根据权利要求5所述的方法,其特征在于,所述根据所述候选物理机分别对应的物理机信息以及所述预设权重,计算得到所述候选物理机与所述待部署应用的匹配程度,包括:
根据所述物理机信息,确每个需求项对应的需求项分值与所述需求项对应的预设权重之积,得到每个需求项分别对应的权重分值;
计算所述每个需求项分别对应的权重分值,得到所述候选物理机的匹配分数,所述匹配分数表征所述候选物理机与所述待部署应用的匹配程度。
7.根据权利要求2所述的方法,其特征在于,所述将所述待部署应用部署至所述目标物理机上,包括:
对所述每个预设物理机分别对应的物理机信息进行更新,得到更新后的物理机信息;基于更新后的物理机信息以及所述部署信息计算顺序确定下一个待部署应用及其对应的目标物理机,直到确定每个预设物理机分别对应的目标物理机;
将所述每个待部署应用分别部署至对应的目标物理机上。
8.一种应用部署装置,其特征在于,包括:
获取模块,用于获取每个预设物理机分别对应的物理机信息;
第一确定模块,用于确定待部署应用的物理机需求;
第二确定模块,用于根据所述每个预设物理机分别对应的物理机信息,确定符合所述物理机需求的至少一个候选物理机;
第三确定模块,用于根据所述至少一个候选物理机中每个候选物理机分别对应的物理机信息,分别确定所述每个候选物理机与所述待部署应用的匹配程度;
第四确定模块,用于确定所述匹配程度最高的物理机为所述待部署应用的目标物理机;
部署模块,用于将所述待部署应用部署至所述目标物理机上。
9.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311301005.3A CN117215797A (zh) | 2023-10-09 | 2023-10-09 | 应用部署方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311301005.3A CN117215797A (zh) | 2023-10-09 | 2023-10-09 | 应用部署方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117215797A true CN117215797A (zh) | 2023-12-12 |
Family
ID=89040680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311301005.3A Pending CN117215797A (zh) | 2023-10-09 | 2023-10-09 | 应用部署方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117215797A (zh) |
-
2023
- 2023-10-09 CN CN202311301005.3A patent/CN117215797A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10310850B2 (en) | Methods and systems for determining relevant changes in an API | |
US9081618B2 (en) | Method and apparatus for the scheduling of computing tasks | |
AU2017268599B2 (en) | Method, device, server and storage medium of searching a group based on social network | |
US9218177B2 (en) | Techniques to optimize upgrade tasks | |
CN109165158B (zh) | 测试用例的调度方法、装置、计算设备及计算机存储介质 | |
CN106371889B (zh) | 一种调度镜像的高性能集群系统实现方法及装置 | |
CN110928739B (zh) | 一种进程监控方法、装置以及计算设备 | |
CN110300130B (zh) | 一种资源调度方法、装置、电子设备及存储介质 | |
JP2008502067A (ja) | コンピュータ装置においてプラグイン・コード・モジュールを選択する方法 | |
CN111459677A (zh) | 请求分配方法、装置、计算机设备和存储介质 | |
CN106980571A (zh) | 一种测试用例集的构建方法和设备 | |
CN111506406A (zh) | 工作流调度方法、装置、系统与计算机可读存储介质 | |
JP2018194919A (ja) | 学習プログラム、学習方法及び学習装置 | |
CN111026765A (zh) | 严格平衡二叉树的动态处理方法、设备、存储介质及装置 | |
CN107766528B (zh) | 瀑布流页面的数据加载方法、终端和计算机可读存储介质 | |
CN110958138A (zh) | 一种容器扩容方法及装置 | |
CN110389817B (zh) | 多云系统的调度方法、装置和计算机可读介质 | |
US20170104683A1 (en) | Dynamically segmenting traffic for a/b testing in a distributed computing environment | |
KR102205686B1 (ko) | 후보 문자 순위화 방법 및 장치와 문자 입력 방법 및 장치 | |
CN117215797A (zh) | 应用部署方法、装置、设备及计算机可读存储介质 | |
CN108228355A (zh) | 任务处理方法及装置、任务调度方法及装置 | |
CN112306452A (zh) | 归并排序算法处理业务数据的方法、装置及系统 | |
CN107247784A (zh) | 一种分布式事务的控制方法及事务管理器 | |
WO2015110867A1 (en) | A pattern based configuration method for minimizing the impact of component failures | |
CN106844377B (zh) | 多维数据库的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |