CN115729645A - 微服务配置方法、装置、电子设备及可读存储介质 - Google Patents

微服务配置方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN115729645A
CN115729645A CN202211520063.0A CN202211520063A CN115729645A CN 115729645 A CN115729645 A CN 115729645A CN 202211520063 A CN202211520063 A CN 202211520063A CN 115729645 A CN115729645 A CN 115729645A
Authority
CN
China
Prior art keywords
information
node
environment
capacity
service
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
Application number
CN202211520063.0A
Other languages
English (en)
Inventor
赵昭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Sinosun Technology Co ltd
Original Assignee
Shenzhen Sinosun Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Sinosun Technology Co ltd filed Critical Shenzhen Sinosun Technology Co ltd
Priority to CN202211520063.0A priority Critical patent/CN115729645A/zh
Publication of CN115729645A publication Critical patent/CN115729645A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本申请公开了一种微服务配置方法、装置、电子设备及可读存储介质,微服务配置方法包括:获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在配置需求信息中查找具备相同预部署节点的目标微服务;根据服务配置信息,生成节点需求信息;若节点需求信息与硬件环境信息相匹配,则将硬件环境信息分配至各目标微服务,其中,节点需求信息指示目标微服务进行节点部署;在目标微服务进行节点部署完毕之后,获取剩余节点资源信息;根据剩余节点资源信息,在各目标微服务中进行剩余节点资源再分配;根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。本申请解决了微服务配置可靠性低且配置过程繁琐的技术问题。

Description

微服务配置方法、装置、电子设备及可读存储介质
技术领域
本申请涉及微服务技术领域,尤其涉及一种微服务配置方法、装置、电子设备及可读存储介质。
背景技术
对于互联网产品,其运行的环境资源信息通常是不一样的,这里说的资源通常指硬件系统的CPU(central processing unit,中央处理器)、内存、硬盘。尤其是互联网服务微服务化后,针对每个微服务需要的CPU、内存、硬盘也不相同,通过统计发现对环境的运维配置错误通常是系统出现问题的首要原因,目前对微服务软件配置的方法一般有两种,一种是不考虑运行的环境直接部署软件,另一种是考虑运行的环境手动调节各节点配置的微服务,过程繁琐且可靠性不高,容易导致软件配置错误,所以目前软件的微服务配置存在可靠性低且配置过程繁琐的技术问题。
发明内容
本申请的主要目的在于提供一种微服务配置方法、装置、电子设备及可读存储介质,旨在解决现有技术中微服务配置可靠性低且配置过程繁琐的技术问题。
为实现上述目的,本申请提供一种微服务配置方法,所述微服务配置方法包括:
获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
根据所述目标微服务的服务配置信息,生成节点需求信息;
若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
为实现上述目的,本申请还提供一种微服务配置装置,所述微服务配置装置包括:
获取模块,用于获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
配置需求模块,用于根据所述目标微服务的服务配置信息,生成节点需求信息;
配置模块,用于若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
资源剩余模块,用于在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
再配置模块,用于根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
推荐配置模块,用于根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
本申请还提供一种电子设备,所述电子设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述微服务配置方法的程序,所述微服务配置方法的程序被处理器执行时可实现如上述的微服务配置方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有实现微服务配置方法的程序,所述微服务配置方法的程序被处理器执行时实现如上述的微服务配置方法的步骤。
本申请还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的微服务配置方法的步骤。
本申请提供了一种微服务配置方法、装置、电子设备及可读存储介质,所述微服务配置方法包括,获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;根据所述目标微服务的服务配置信息,生成节点需求信息;若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。由于能在待部署软件的配置需求信息中查找具备相同预部署节点的目标微服务,进而确定待部署软件的各节点需求信息,当节点需求信息与硬件环境信息之间匹配时,进而将硬件环境信息分配到节点需求信息对应的目标微服务上,从而保证了目标微服务部署的正确性,提高了软件微服务配置的可靠性,又因为能自动对剩余节点资源信息进行再分配,无需手动分配,从而简化了微服务配置的过程,提高微服务配置的可靠性,还充分利用了目标环境的硬件资源,提高了软件的部署效率。所以本申请解决了微服务配置可靠性低且配置过程繁琐的技术问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,表示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请微服务配置方法第一实施例的流程示意图;
图2为本申请微服务配置方法第二实施例的流程示意图;
图3为本申请微服务配置方法第三实施例的流程示意图;
图4为本申请微服务配置装置一实施例的结构示意图;
图5为本申请实施例中微服务配置方法涉及的硬件运行环境的设备结构示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,均属于本申请保护的范围。
实施例一
参照图1,本申请实施例提供一种微服务配置方法,在本申请微服务配置方法的第一实施例中,所述微服务配置方法包括:
步骤S10,获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
步骤S20,根据所述目标微服务的服务配置信息,生成节点需求信息;
步骤S30,若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
步骤S40,在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
步骤S50,根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
步骤S60,根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
在本实施例中,需要说明的是,所述硬件环境信息包括多个环境节点信息,用于描述目标环境的硬件配置,所述环境节点信息至少包括节点标识、CPU个数、内存容量以及硬盘容量,所述配置需求信息包括多个目标微服务,目标微服务有对应的服务配置信息,所述服务配置信息用于描述微服务的硬件配置需求,所述服务配置信息至少包括命名空间、微服务标识、预部署节点、副本数、CPU个数、内存容量以及硬盘,所述节点需求信息是由预部署节点相同的目标微服务组成的,待部署软件可以包括多个节点需求信息,所述节点需求信息是满足目标微服务的最低配置需求,所述剩余节点资源信息用于描述目标环境对应的资源经过初次分配后剩余的资源,所述剩余节点资源信息至少包括环境CPU剩余个数、环境内存剩余容量以及环境硬件剩余容量中的一种,所述微服务推荐配置信息用于描述待部署软件在目标环境下的推荐的硬件配置,所述微服务推荐配置信息至少包括命名空间、微服务标识、部署节点、CPU推荐配置信息、内存容量推荐配置信息以及硬盘容量推荐配置信息,其中,所述硬件环境信息、所述配置需求信息以及所述微服务推荐配置信息可以为表格。
作为一种示例,步骤S10至步骤S60包括:获取目标环境的硬件环境信息以及待部署软件的配置需求信息;在所述配置需求信息中查找预部署节点相同的目标微服务;根据目标微服务对应的服务配置信息,对同一预部署节点的各所述服务配置信息进行求和,得到各节点需求信息;判断所述节点需求信息与所述硬件环境信息之间是否相匹配;若判定所述节点需求信息与所述硬件环境信息之间相匹配,则将所述硬件环境信息分配到所述节点需求信息对应的各目标微服务;在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及硬件环境信息确定剩余节点资源信息;根据所述剩余节点资源信息,在各所述目微服务中对所述剩余节点资源信息进行再分配,根据资源再分配后的各目标微服务的资源占用信息,生成微服务推荐配置信息。其中,所述节点需求信息是由预部署节点相同的一个或多个目标微服务组成的,所述硬件环境信息对应多个环境节点信息,环境节点信息有对应的剩余节点资源信息,待部署软件的可以有多个节点需求信息,目标环境的环境节点信息分配到对应的节点需求信息之后生成的剩余节点资源信息,该剩余节点资源信息进行再分配也是分配到节点需求信息对应的目标微服务上。
其中,所述根据所述目标微服务的服务配置信息,生成节点需求信息的步骤包括:
步骤A10,根据预部署节点相同的各目标微服务对应的CPU个数,确定所述CPU需求个数;
步骤A20,根据预部署节点相同的各目标微服务对应的内存容量,确定所述内存需求容量;
步骤A30,根据预部署节点相同的各目标微服务对应的硬盘需求容量,确定所述硬盘需求容量;
步骤A40,根据所述CPU需求个数、所述内存需求容量以及所述硬盘需求容量,生成所述节点需求信息。
在本实施例中,需要说明的是,所述服务配置信息至少包括微服务标识、预部署节点、CPU个数、内存容量以及硬盘容量中的一种,其中,所述CPU个数至少包括CPU最低配置个数和CPU最佳配置个数,所述内存容量至少包括内存最低配置容量以及内存最佳配置容量中的一种,所述节点需求信息是根据CPU最低配置个数以及内存容量最低配置容量进行计算的,从而能满足待部署软件的最低配置要求,所述节点需求信息至少包括CPU需求个数、内存需求容量以及硬盘需求容量,所述各节点需求信息用于描述待部署软件所需的最低配置,所述服务配置信息还包括副本数,所述副本数用于描述同一个目标微服务的个数,其中,副本数不为0,目标微服务中的CPU个数、内存容量以及硬盘容量要由副本数确定,例如,当目标微服务的副本数为2,CPU个数为1、内存容量为1024MB以及硬盘容量为10G时,在确定节点需求信息之前,该目标微服务需要配置的CPU为2,内存容量为2048MB以及硬盘容量为20G,也即副本数与CPU个数的乘积、副本数与内存容量的乘积以及副本数硬盘容量的乘积,为满足目标微服务的最低配置需求的CPU个数、内存容量以及硬盘容量。
作为一种示例,步骤A10至步骤A40包括:获取预部署节点相同的各目标微服务一一对应的副本数;根据所述副本数确定各所述目标微服务对应的CPU个数、内存容量以及硬盘容量;计算预部署节点相同的各目标微服务一一对应的各CPU个数,得到所述CPU需求个数;计算预部署节点相同的各待部署为服务一一对应的各内存容量,得到所述内存需求容量;计算预部署节点相同的各待部署为服务一一对应的各硬盘容量,得到所述硬盘需求容量;根据所述CPU需求个数、所述内存需求容量以及所述硬盘需求容量,生成所述节点需求信息,其中,可以对预部署节点相同的各目标微服务对应的各CPU个数进行求和,得到所述CPU需求个数,可以对预部署节点相同的各待部署为服务一一对应的各内存容量进行求和,得到所述内存需求容量;可以对预部署节点相同的各待部署为服务一一对应的各硬盘容量进行求和,得到所述硬盘需求容量。
本申请提供了一种微服务配置方法,所述微服务配置方法包括,获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;根据所述目标微服务的服务配置信息,生成节点需求信息;若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。由于能在待部署软件的配置需求信息中查找具备相同预部署节点的目标微服务,进而确定待部署软件的各节点需求信息,当节点需求信息与硬件环境信息之间匹配时,进而将硬件环境信息分配到节点需求信息对应的目标微服务上,从而保证了目标微服务部署的正确性,提高了软件微服务配置的可靠性,又因为能自动对剩余节点资源信息进行再分配,无需手动分配,从而简化了微服务配置的过程,提高微服务配置的可靠性,还充分利用了目标环境的硬件资源,提高了软件的部署效率。所以本申请解决了微服务配置可靠性低且配置过程繁琐的技术问题。
实施例二
进一步地,参照图2,基于本申请上述实施例,在本申请另一实施例中,与上述实施例相同或相似的内容,可以参考上文介绍,后续不再赘述。在此基础上,所述若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务的步骤包括:
步骤B10,将所述节点需求信息与所述硬件环境信息进行匹配,得到所述节点需求信息对应的所述环境节点信息;
步骤B20,若判定所述节点需求信息满足所述环境节点信息,则将所述环境节点信息分配至节点需求信息对应的所述目标微服务。
在本实施例中,需要说明的是,所述硬件环境信息可以包括多个环境节点信息,所述环境节点信息至少包括节点标识、CPU个数、内存容量以及硬盘容量,用于描述目标环境的节点的硬件配置情况,另外,当所述节点需求信息不满足所述环境节点信息时,会生成提示信息,提示信息用于提示运维人员目标环境的硬件配置不满足目标微服务的最低配置,运维人员可以在目标环境申请新的硬件配置,运维人员可以是在目标环境下部署待部署软件的人员。
作为一种示例,步骤B10至步骤B20包括:获取节点需求信息对应的预部署节点以及硬件环境信息对应的各环境节点信息;根据所述预部署节点在硬件环境信息中匹配对应的环境节点信息,得到节点需求信息对应的环境节点信息;判断所述节点需求信息是否满足所述环境节点信息;若不满足,则生成提示信息;若满足,则将环境节点信息分配到节点需求信息对应的目标微服务。
其中,所述若判定所述节点需求信息满足所述环境节点信息,则将环境节点信息分配至节点需求信息对应的目标微服务步骤包括:
步骤C10,若判定所述CPU需求个数未超过所述环境CPU个数且所述内存需求容量未超过所述环境内存容量且所述硬盘需求容量未超过所述环境硬盘容量,则将所述环境节点信息分配至节点需求信息对应的目标微服务。
在本实施例中,需要说明的是,所述环境节点信息至少包括环境CPU个数、环境内存容量以及环境硬盘容量中的一种,所述节点需求信息至少包括CPU需求个数、内存需求容量以及硬盘需求容量中的一种,当所述节点需求信息不满足所述环境节点信息时,会生成提示信息,所述提示信息至少包括CPU提示信息、内存提示信息以及硬盘提示信息中的一种。
作为一种示例,步骤C10包括:判断所述CPU需求个数是否超过所述环境CPU个数;若判定超过,则生成CPU提示信息;判断所述内存需求容量是否超过所述环境内存容量;若判定超过,则生成内存提示信息;判断所述硬盘需求容量是否超过所述环境硬盘容量;若判定超过,则生成硬盘提示信息;若所述CPU需求个数未超过所述环境CPU个数且所述内存需求容量未超过所述环境内存容量且所述硬盘需求容量未超过所述环境硬盘容量,则环境节点信息分配至节点需求信息对应的各目标微服务。
其中,所述在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息的步骤包括:
步骤D10,根据所述CPU需求个数以及所述环境CPU个数,确定所述环境CPU剩余个数;
步骤D20,根据所述内存需求容量以及所述环境内存容量,确定所述环境内存剩余容量;
步骤D30,根据所述硬盘需求容量以及所述环境硬盘容量,确定所述环境硬盘剩余容量;
步骤D40,根据所述环境CPU剩余个数、所述环境内存剩余容量以及所述环境硬盘剩余容量,确定所述节点剩余信息。
在本实施例中,需要说明的是,所述CPU需求个数是同一部署节点的各目标微服务的总的CPU个数,所述内存需求容量是同一部署节点的各目标微服务的总的内存容量,所述硬盘容量是同一部署节点的各目标微服务的总的硬盘容量,所述环境CPU个数是环境节点信息对应能分配的最多CPU个数,所述环境内存容量是环境节点信息对应能分配的最大内存容量,所述环境硬盘容量是环境节点信息对应能分配的最大的硬盘容量,所述环境CPU剩余个数是环境节点对应的环境CPU个数分配给节点需求信息对应的CPU需求个数后剩余的CPU个数,所述环境内存剩余容量是环境节点对应的环境内存容量分配给节点需求信息对应的内存需求容量后剩余的内存剩余容量,所述环境硬盘剩余容量是环境节点对应的环境硬盘容量分配给节点需求信息对应的硬盘需求后剩余的硬盘容量。
作为一种示例,步骤D1O至步骤D40包括:对所述CPU需求个数和所述环境CPU个数做差,得到所述环境CPU剩余个数;对所述内存需求容量和所述环境内存容量做差,得到所述环境内存剩余容量;对所述硬盘需求容量和所述环境硬盘容量做差,得到所述环境硬盘剩余容量;根据所述环境CPU剩余容量、所述环境内存剩余容量以及所述环境硬盘剩余容量,确定所述节点剩余信息。
在本申请实施例中通过判断节点需求信息是都满足环境节点信息,进而将环境节点信息分配到节点需求信息对应的目标微服务上,保证了目标环境能满足目标微服务所需的最低配置要求,进而减少了因环境的资源配置错误而导致软件出现问题的情况,又因为满足了目标微服务所需的最低配置需求后,能确定剩余节点资源信息,进而充分利用剩余节点资源信息,提高了目标环境资源配置的利用率。
实施例三
进一步地,参照图3,基于本申请上述实施例,在本申请另一实施例中,与上述实施例相同或相似的内容,可以参考上文介绍,后续不再赘述。在此基础上,所述根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配的步骤包括:
步骤E10,获取所述目标微服务对应的依赖系数;
步骤E20,根据各所述目标微服务以及各所述依赖系数,将所述剩余节点资源信息分配到各目标微服务。
在本实施例中,需要说明的是,所述依赖系数至少包括CPU依赖系数以及内存依赖系数中的一种,所述依赖系数用于描述目标微服务对硬件配置的依赖程度,当目标微服务的依赖系数越高时,当配置的CPU个数或内存容量越多,该目标微服务的执行效率越快,所述推荐配置信息包括了多个目标微服务的推荐配置信息,具体的所述推荐配置信息至少包括CPU推荐配置信息、内存推荐配置信息以及硬盘配置信息中的一种,所述推荐配置信息用于描述待部署软件在目标环境下的最佳配置信息,推荐配置信息可以用表格表示,推荐配置信息可以导入配置中心,运维人员可以在配置中心中配置待部署软件。
作为一种示例,步骤E10至步骤E20包括:获取所述目标微服务对应的依赖系数;根据所述各依赖系数,确定各目标微服务对应的依赖系数比;根据各所述目标微服务以及各所述依赖系数比,将剩余节点资源信息分配到各目标微服务。其中,依赖系数比用于描述同一预部署节点上的各目标微服务在该预部署节点上所占的依赖系数比。
其中,所述根据各所述目标微服务以及各所述依赖系数,将剩余节点资源信息再分配到目标微服务的步骤包括:
步骤F10,根据所述CPU依赖系数,将所述环境CPU剩余个数分配到各所述目标微服务;
步骤F20,根据所述内存依赖系数,将所述环境内存剩余容量分配到各所述目标微服务;
在本实施例中,需要说明的是,所述依赖系数至少包括CPU依赖系数以及内存依赖系数中的一种,所述CPU依赖系数用于描述目标微服务对CPU的依赖程度,所述内存依赖系数用于描述目标微服务对内存的依赖程度,当CPU依赖程度越高,对目标微服务配置更多CPU个数时,性能更优,当内存依赖程度越高,对目标微服务配置更多内存容量时,性能更优,同一个目标微服务对应的CPU依赖系数和内存依赖系数不一定都高。对剩余节点资源信息进行再分配是在满足了目标微服务的最低配置要求下再分配的,可以优化目标微服务的配置。
作为一种示例,步骤F10至步骤F20包括:根据各所述CPU依赖系数,确定各目标微服务所占的CPU依赖系数比,根据所述CPU依赖系数比将所述环境CPU剩余个数分配到各目标微服务;根据各所述内存依赖系数,确定各目标微服务所占的内存依赖系数比,根据所述内存依赖系数比将所述环境内存剩余个数分配到各目标微服务。例如,有目标微服务A,目标微服务B,A和B的预部署节点都是节点1,A的CPU依赖系数为3,内存依赖系数为2,B的CPU依赖系数为2,内存依赖系数为4,环境CPU剩余个数为10,环境内存剩余容量12×1024MB时,对环境剩余信息进行再分配,则再分配6个CPU和4×1024MB的内存容量到目标微服务A,再分配4个CPU和8×1024MB的内存容量到目标微服务B。
在本申请实施例中通过获取各所述目标微服务对应的CPU依赖系数以及内存依赖系数,将剩余节点资源信息再分配到同一预部署节点对应的目标微服务,无需手动对剩余的节点资源进行再分配,从而根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息,提高了目标环境的硬件资源的利用率以及待部署软件配置的可靠性,简化了目标微服务的配置过程,提高了软件部署的效率。
实施例四
参照图4,本申请实施例还提供一种微服务配置装置,所述微服务配置装置包括:
获取模块10,用于获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
配置需求模块20,用于根据所述目标微服务的服务配置信息,生成节点需求信息;
配置模块30,用于若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
资源剩余模块40,用于在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
再配置模块50,用于根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
推荐配置模块60,用于根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
可选地,所述配置需求模块20还用于:
将预部署节点相同的各目标微服务对应的CPU个数进行求和,得到所述CPU需求个数;
根据预部署节点相同的各目标微服务对应的内存容量,确定所述内存需求容量;
根据预部署节点相同的各目标微服务对应的硬盘需求容量进行求和,确定所述硬盘需求容量;
根据所述CPU需求个数、所述内存需求容量以及所述硬盘需求容量,生成所述节点需求信息。
可选地,所述配置模块30还用于:
将所述节点需求信息与所述硬件环境信息进行匹配,得到所述节点需求信息对应的环境节点信息;
若判定所述节点需求信息满足所述环境节点信息,则将所述环境节点信息分配至节点需求信息对应的各目标微服务。
可选地,所述配置模块30还用于:
若判定所述CPU需求个数未超过所述环境CPU个数且所述内存需求容量未超过所述环境内存容量且所述硬盘需求容量未超过所述环境硬盘容量,则将所述环境节点信息分配至节点需求信息对应的各目标微服务。
可选地,所述资源剩余模块40还用于:
根据所述CPU需求个数以及所述环境CPU个数,确定所述环境CPU剩余个数;
根据所述内存需求容量以及所述环境内存容量,确定所述环境内存剩余容量;
根据所述硬盘需求容量以及所述环境硬盘容量,确定所述环境硬盘剩余容量;
根据所述环境CPU剩余个数、所述环境内存剩余容量以及所述环境硬盘剩余容量,确定所述节点剩余信息。
可选地,所述再配置模块50还用于:
获取所述目标微服务对应的依赖系数;
根据各所述目标微服务以及各所述依赖系数,将所述剩余节点资源信息分配到各目标微服务。
可选地,所述再配置模块50还用于:
根据各所述CPU依赖系数,将所述环境CPU剩余个数分配到各所述目标微服务;
根据各所述内存依赖系数,将所述环境内存剩余容量分配到各所述目标微服务。
本申请提供的微服务配置装置,采用上述实施例中的微服务配置方法,解决了微服务配置可靠性低且配置过程繁琐的技术问题。与现有技术相比,本申请实施例提供的微服务配置方法的有益效果与上述实施例提供的微服务配置方法的有益效果相同,且该微服务配置装置中的其他技术特征与上述实施例方法公开的特征相同,在此不做赘述。
实施例五
本申请实施例提供一种电子设备,所述电子设备可以为播放设备,电子设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施例中的微服务配置方法。
下面参考图5,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备可以包括处理设备(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM)中的程序或者从存储设备加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有电子设备操作所需的各种程序和数据。处理设备、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
通常,以下设备可以连接至I/O接口:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入设备;包括例如液晶显示器(LCD)、扬声器、振动器等的输出设备;包括例如磁带、硬盘等的存储设备;以及通信设备。通信设备可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种设备的电子设备,但是应理解的是,并不要求实施或具备所有示出的设备。可以替代地实施或具备更多或更少的设备。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信设备从网络上被下载和安装,或者从存储设备被安装,或者从ROM被安装。在该计算机程序被处理设备执行时,执行本公开实施例的方法中限定的上述功能。
本申请提供的电子设备,采用上述实施例一中的微服务配置方法解决了微服务配置可靠性低且配置过程繁琐的技术问题。与现有技术相比,本申请实施例提供的微服务配置的有益效果与上述实施例提供的微服务配置方法的有益效果相同,且该微服务配置设备中的其他技术特征与上述实施例方法公开的特征相同,在此不做赘述。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
实施例六
本实施例提供一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,计算机可读程序指令用于执行上述实施例一中的微服务配置的方法。
本申请实施例提供的计算机可读存储介质例如可以是U盘,但不限于电、磁、光、电磁、红外线、或半导体的设备、设备或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行设备、设备或者器件使用或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:位移状态信息、距离补偿信息以及方位补偿信息,或者上述的任意合适的组合。
上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。
上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得电子设备:获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;根据所述目标微服务的服务配置信息,生成节点需求信息;若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的设备来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定。
本申请提供的计算机可读存储介质,存储有用于执行上述微服务配置方法的计算机可读程序指令,解决了微服务配置可靠性低且配置过程繁琐的技术问题。与现有技术相比,本申请实施例提供的计算机可读存储介质的有益效果与上述实施例提供的微服务配置方法的有益效果相同,在此不做赘述。
实施例七
本申请还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的微服务配置预测方法的步骤。
本申请提供的计算机程序产品解决了微服务配置可靠性低且配置过程繁琐的技术问题。与现有技术相比,本申请实施例提供的计算机程序产品的有益效果与上述实施例提供的微服务配置方法的有益效果相同,在此不做赘述。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利处理范围内。

Claims (10)

1.一种微服务配置方法,其特征在于,所述微服务配置方法包括:
获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
根据所述目标微服务的服务配置信息,生成节点需求信息;
若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
2.如权利要求1所述微服务配置方法,其特征在于,所述服务配置信息至少包括预部署节点、CPU个数、内存容量以及硬盘容量中的一种,所述节点需求信息至少包括CPU需求个数、内存需求容量以及硬盘需求容量中的一种,
所述根据所述目标微服务的服务配置信息,生成节点需求信息的步骤包括:
根据预部署节点相同的各目标微服务对应的CPU个数,确定所述CPU需求个数;
根据预部署节点相同的各目标微服务对应的内存容量,确定所述内存需求容量;
根据预部署节点相同的各目标微服务对应的硬盘需求容量,确定所述硬盘需求容量;
根据所述CPU需求个数、所述内存需求容量以及所述硬盘需求容量,生成所述节点需求信息。
3.如权利要求1所述微服务配置方法,其特征在于,所述硬件环境信息包括环境节点信息,
所述若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务的步骤包括:
将所述节点需求信息与所述硬件环境信息进行匹配,得到所述节点需求信息对应的环境节点信息;
若判定所述节点需求信息满足所述环境节点信息,则将所述环境节点信息分配至节点需求信息对应的各目标微服务。
4.如权利要求3所述微服务配置方法,其特征在于,所述环境节点信息至少包括环境CPU个数、环境内存容量以及环境硬盘容量中的一种,所述节点需求信息至少包括CPU需求个数、内存需求容量以及硬盘需求容量中的一种,
所述若判定所述节点需求信息满足所述环境节点信息,则将所述环境节点信息分配至节点需求信息对应的各目标微服务的步骤包括:
若判定所述CPU需求个数未超过所述环境CPU个数且所述内存需求容量未超过所述环境内存容量且所述硬盘需求容量未超过所述环境硬盘容量,则将所述环境节点信息分配至节点需求信息对应的各目标微服务。
5.如权利要求1所述微服务配置方法,其特征在于,所述硬件环境信息包括环境节点信息,所述环境节点信息至少包括环境CPU个数、环境内存容量以及环境硬盘容量中的一种,所述节点需求信息至少包括CPU需求个数、内存需求容量以及硬盘需求容量中的一种,所述剩余节点资源信息至少包括环境CPU剩余个数、环境内存剩余容量以及环境硬盘剩余容量中的一种,
所述在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息的步骤包括:
根据所述CPU需求个数以及所述环境CPU个数,确定所述环境CPU剩余个数;
根据所述内存需求容量以及所述环境内存容量,确定所述环境内存剩余容量;
根据所述硬盘需求容量以及所述环境硬盘容量,确定所述环境硬盘剩余容量;
根据所述环境CPU剩余个数、所述环境内存剩余容量以及所述环境硬盘剩余容量,确定所述节点剩余信息。
6.如权利要求1所述微服务配置方法,其特征在于,所述剩余节点资源信息至少包括CPU剩余个数、内存剩余容量以及硬盘剩余容量中的一种,所述目标微服务包括服务配置信息,所述服务配置信息包括依赖系数,
所述根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配的步骤包括:
获取所述目标微服务对应的依赖系数;
根据各所述目标微服务以及各所述依赖系数,将所述剩余节点资源信息分配到各目标微服务。
7.如权利要求6所述微服务配置方法,其特征在于,所述依赖系数至少包括CPU依赖系数以及内存依赖系数中的一种,所述剩余节点资源信息至少包括环境CPU剩余个数以及环境内存剩余容量中的一种,
所述根据各所述目标微服务以及各所述依赖系数,将剩余节点资源信息再分配到目标微服务的步骤包括:
根据各所述CPU依赖系数,将所述环境CPU剩余个数分配到各所述目标微服务;
根据各所述内存依赖系数,将所述环境内存剩余容量分配到各所述目标微服务。
8.一种微服务配置装置,其特征在于,所述微服务配置装置包括:
获取模块,用于获取目标环境的硬件环境信息以及待部署软件的配置需求信息,在所述配置需求信息中查找具备相同预部署节点的目标微服务;
配置需求模块,用于根据所述目标微服务的服务配置信息,生成节点需求信息;
配置模块,用于若所述节点需求信息与所述硬件环境信息相匹配,则将所述硬件环境信息分配至所述节点需求信息对应的各目标微服务,其中,所述节点需求信息用于指示所述目标微服务进行节点部署;
资源剩余模块,用于在所述目标微服务进行节点部署完毕之后,根据所述节点需求信息以及所述硬件环境信息,获取剩余节点资源信息;
再配置模块,用于根据所述剩余节点资源信息,在各所述目标微服务中进行剩余节点资源再分配;
推荐配置模块,用于根据资源再分配后的各目标微服务的资源占用信息,生成微服务配置推荐信息。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7中任一项所述微服务配置方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有实现微服务配置方法的程序,所述实现微服务配置方法的程序被处理器执行以实现如权利要求1至7中任一项所述微服务配置方法的步骤。
CN202211520063.0A 2022-11-30 2022-11-30 微服务配置方法、装置、电子设备及可读存储介质 Pending CN115729645A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211520063.0A CN115729645A (zh) 2022-11-30 2022-11-30 微服务配置方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211520063.0A CN115729645A (zh) 2022-11-30 2022-11-30 微服务配置方法、装置、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN115729645A true CN115729645A (zh) 2023-03-03

Family

ID=85299389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211520063.0A Pending CN115729645A (zh) 2022-11-30 2022-11-30 微服务配置方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN115729645A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116932225A (zh) * 2023-09-13 2023-10-24 北京中科智媒融媒体技术有限公司 微服务资源调度方法、装置、电子设备和计算机可读介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116932225A (zh) * 2023-09-13 2023-10-24 北京中科智媒融媒体技术有限公司 微服务资源调度方法、装置、电子设备和计算机可读介质
CN116932225B (zh) * 2023-09-13 2023-12-08 北京中科智媒融媒体技术有限公司 微服务资源调度方法、装置、电子设备和计算机可读介质

Similar Documents

Publication Publication Date Title
EP3210134B1 (en) Composite partition functions
CN113553178A (zh) 任务处理方法、装置和电子设备
CN110618855A (zh) 一种任务分配方法、装置、电子设备及存储介质
CN116541142A (zh) 任务调度方法、装置、设备、存储介质及计算机程序产品
CN115729645A (zh) 微服务配置方法、装置、电子设备及可读存储介质
CN110489158B (zh) 对代码托管平台进行优化的方法、装置、介质和电子设备
CN111813541B (zh) 一种任务调度方法、装置、介质和设备
CN113791891A (zh) 持续集成任务构建方法、装置、设备和计算机可读介质
CN111694670A (zh) 资源分配方法、装置、设备和计算机可读介质
CN113391882B (zh) 虚拟机内存管理方法、装置、存储介质及电子设备
CN111177260A (zh) 数据库远程复制方法、装置及电子设备
CN111538717B (zh) 数据处理的方法、装置、电子设备及计算机可读介质
CN115623082A (zh) 金融服务调用方法、系统、电子设备及存储介质
CN113886353A (zh) 分层存储管理软件的数据配置推荐方法、装置及存储介质
CN111694672B (zh) 资源分配方法、任务提交方法、装置、电子设备和介质
CN113918344A (zh) 一种资源需求分配方法、装置、设备及计算机可读介质
CN111240738B (zh) 文件处理方法、装置、设备及介质
CN113760768A (zh) 一种测试方法、监控平台、电子设备及存储介质
CN114942833A (zh) 定时任务资源动态调度方法及相关装置
CN113660699A (zh) 一种智能集群联网方法、装置及电子设备
CN115480908A (zh) 一种内存池化方法以及相关装置
CN112148448A (zh) 资源分配方法、装置、设备和计算机可读介质
CN111625326A (zh) 任务管线执行方法、装置及电子设备
CN111797160A (zh) 共享智能合约的方法、系统及电子设备
CN115878586B (zh) Ipfs存储封装方法、装置、电子设备及可读存储介质

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