CN112995341B - Cloud resource dynamic allocation method for complex information system - Google Patents

Cloud resource dynamic allocation method for complex information system Download PDF

Info

Publication number
CN112995341B
CN112995341B CN202110428267.0A CN202110428267A CN112995341B CN 112995341 B CN112995341 B CN 112995341B CN 202110428267 A CN202110428267 A CN 202110428267A CN 112995341 B CN112995341 B CN 112995341B
Authority
CN
China
Prior art keywords
service
resource
core
resources
priority
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.)
Active
Application number
CN202110428267.0A
Other languages
Chinese (zh)
Other versions
CN112995341A (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.)
Institute of Network Engineering Institute of Systems Engineering Academy of Military Sciences
Original Assignee
Institute of Network Engineering Institute of Systems Engineering Academy of Military Sciences
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 Institute of Network Engineering Institute of Systems Engineering Academy of Military Sciences filed Critical Institute of Network Engineering Institute of Systems Engineering Academy of Military Sciences
Priority to CN202110428267.0A priority Critical patent/CN112995341B/en
Publication of CN112995341A publication Critical patent/CN112995341A/en
Application granted granted Critical
Publication of CN112995341B publication Critical patent/CN112995341B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a cloud resource dynamic allocation method for a complex information system, which relates to the technical field of cloud resource dynamic allocation of the information system and does not solve the problem that how to perform finer-grained dynamic resource allocation becomes a problem to be solved, and comprises the following steps: the first step is as follows: creating a description parameter file for each service, wherein the description parameter file comprises three parameters of service classification, service priority and service occupied resources; secondly, establishing a service dependency relationship graph according to the description parameter file; the third step: establishing a service resource pool according to the service dependency relationship graph; the fourth step: carrying out dynamic allocation of cloud resources in the running process of the system, wherein the dynamic allocation comprises the following steps: detecting a resource expansion request, judging whether the vacant resources meet the resource expansion request, generating a resource recovery scheme, executing the resource recovery scheme and dynamically allocating the resources.

Description

Cloud resource dynamic allocation method for complex information system
Technical Field
The invention relates to the technical field of dynamic cloud resource allocation of information systems, in particular to a cloud resource dynamic allocation method for a complex information system.
Background
With the development of internet technology, a Service Oriented Architecture (SOA) cloud computing architecture is gradually becoming a common consensus in the industry. The method has the advantages of short deployment time, low deployment cost, low operation and maintenance cost, high production efficiency and the like.
However, currently mainstream service frameworks such as kubernets and Docker SwarmKit provide only simple dynamic resource allocation policies. With the increase of the complexity of the system, the types of services borne on the cloud platform are more and more, the requirements of different types of services on resource allocation strategies are different, and the resource guarantee priorities of the different types of services are different due to the difference of the importance of the different types of services. Therefore, how to perform finer-grained dynamic resource allocation becomes a problem to be solved.
Disclosure of Invention
In order to solve the technical problems, the invention provides a cloud computing resource dynamic allocation method facing a complex system, which classifies services according to importance degrees, and adjusts computing and storage resource allocation in real time by taking service priority and dependency relationship as judgment standards. The method can effectively ensure the normal operation of the core function module in the system, and provides support for the flexible integration construction of the cloud platform for efficiently bearing various application service software.
The invention adopts the following technical scheme:
a cloud resource dynamic allocation method facing a complex information system comprises the following steps:
the first step is as follows: creating a description parameter file for the service on each cloud resource, wherein the description parameter file comprises three parameters of service classification, service priority and service occupied resources;
secondly, establishing a service dependency relationship graph according to the description parameter file;
the third step: establishing a service resource pool according to the service dependency relationship graph;
the fourth step: carrying out dynamic allocation of cloud resources in the running process of the complex information system, wherein the dynamic allocation comprises the following steps: detecting a resource expansion request, judging whether the vacant resources meet the resource expansion request, generating a resource recovery scheme, executing the resource recovery scheme and dynamically allocating the resources.
The first step of creating a description parameter file comprises the following steps:
step 11: newly building a complex information system configuration file, and filling dependent object parameters of the name of the service, a dependent object service set and a load balancing strategy in the complex information system configuration file for each service to be deployed on cloud resources;
step 12: adding a created service classification parameter to each service, and specifically setting a service classification parameter value according to the importance degree of the service and the influence degree of abnormal service on a system; for the service which is concerned by the user or can cause the complex information system to be unavailable after the user is abnormal, setting a parameter value to SK for marking the service as a core service; for the service which is not concerned by the user or does not influence the core function of the system after the user is abnormal, setting the parameter value as S to mark the service as non-core service;
step 13: adding a created service priority parameter to each service, wherein for the core services, the service priority parameter values are uniformly set to be a constant and represent that the priorities of all the core services are the highest and the same; setting a service priority parameter value for the non-core service.
In step 13, setting a service priority parameter value for the non-core service, includes the following steps:
step 131: setting a dimension that affects importance of the non-core service; the dimensions include: functions, resource occupation, user attention and expenditure investment; the number of dimensions is specifically determined in combination with the specific situation of the complex information system, assuming that there are N dimensions, D1, D2, … …, DN;
step 132: generating a dimension weight feature vector; comparing N dimensions pairwise by adopting an analytic hierarchy process, adopting a relative scale during comparison, giving the relative scale by using a 1-9 scale method, and obtaining a dimension importance comparison matrix of the non-core service by comparing the N dimensions pairwise;
1) di represents the ith dimension of non-core service importance;
2)aijthe importance comparison result of dimension Di and dimension Dj is obtained;
3)
Figure 178053DEST_PATH_IMAGE001
,aii=1;
storing the dimension comparison data as a matrix to obtain:
Figure 777268DEST_PATH_IMAGE002
performing matrix normalization weighting operation to obtain a feature vector reflecting importance weight of each dimension as follows:
DW=(dw1, dw2, dw3, …dwN)T;
step 133: traversing a non-core service Si, i from 1, sequentially scoring according to the specific meaning of each dimension, determining the scoring standard in the implementation process according to the application scene, and keeping the scoring intervals of the dimensions consistent; after the scoring result is normalized, the score vectors of the non-core service Si to all dimensions are obtained as follows:
Ci=(ci1, c i2 , c i3, …c iN)T
the priority weight WSi of the non-core service Si is:
Figure 114709DEST_PATH_IMAGE003
1) 1, i is more than or equal to 1 and less than or equal to N, representing the weight value of the dimension Di, and DW is a weight vector reflecting the importance of each dimension;
2) j is more than or equal to 1 and less than or equal to N, the score of the non-core service Si evaluated according to the dimension Dj is represented, and Ci represents the score vector of the non-core service Si to all dimensions;
3) WSi represents the priority weight of the non-core service Si;
setting a total of M non-core services in the system, calculating the priority weights of all the non-core services, and correspondingly obtaining priority queues of all the non-core services according to the sequencing of the priority weights;
step 134: increasing the parameters for occupying the created service resources;
for the non-core service Si, initializing an occupation condition vector RSi of the input Si to all cloud resources as a service resource occupation parameter of the non-core service Si;
RSi =(r1i,r2i…rPi);
1) RSi is the resource occupation of all types by 1 running instance of the non-core service Si;
2) rji is the occupation amount of 1 running instance of the non-core service Si to j-th resources, which is P-type resources, wherein j is more than or equal to 1 and is less than or equal to P;
for the core service SKi, the service resource occupation vector is represented as RSKi, and the representation method of RSKi is executed by referring to RSi.
The second step specifically comprises: and judging the dependency and depended information of the service according to the created dependency object parameters, and calculating to obtain a dependency relationship graph of the service after traversing all the dependency object parameters of the service in a manual deduction or automatic calculation mode.
The third step of establishing the service resource pool specifically includes: the method comprises the steps that according to the type of the service carried on the cloud resource, the service is divided into a core resource pool and a non-core resource pool, the core service is deployed in the core resource pool, when the resources of the core resource pool are insufficient, the core service is deployed in the non-core resource pool, and the non-core service is only deployed in the non-core resource pool.
The cloud resource dynamic allocation in the fourth step specifically includes:
step 41: when the complex information system detects that resources occupied by running services S or SK reach the preset threshold of the complex information system, or receives a resource expansion request through an external command, an ERS or ERSK is used for recording the resource expansion request, ERS = (r 1S, r2S … rPs) represents the resource expansion request of non-core services S, ERSK = (r 1SK, r2SK … rPsk) represents the resource expansion request of core services SK; the method comprises the steps that the value of ERS or ERSK is preset by a system because the occupied resource reaches a preset threshold value of the system, and the value of ERS or ERSK is directly determined by the parameter value of an external command because the external command receives a resource expansion request;
step 42: setting the vacant resources of the resource pool, namely Rremain = r1remain, r2remain, … and rPremain; when each element in the Rremain is larger than or equal to each element in the ERS or the ERSK, the Rremain is judged to meet the ERS or the ERSK, and the cloud platform resource application interface is directly called to dynamically allocate the required cloud resources; when a certain element in the Rremain is smaller than the corresponding element in the ERS or the ERSK, it is determined that the Rremain does not satisfy the ERS or the ERSK, it is determined whether the service currently performing the resource expansion request is the core service, if yes, step 43 is executed; otherwise, go to step 44;
step 43: generating a resource recovery scheme facing to a core service resource expansion request; step 45 is executed;
step 44: generating a resource recovery scheme facing to a non-core service resource expansion request;
step 45: executing an optimal resource recovery scheme and performing dynamic resource allocation; according to the resource recovery scheme, the service number to be recovered and the number of the running instances contained in the scheme are sent to an existing resource scheduling module of the cloud platform, and after the resource recovery completion information of the cloud platform is received, a cloud platform resource application module is called to dynamically allocate the applied resources to the service which is currently subjected to the resource expansion request.
Step 43: generating a resource recovery scheme facing to a core service resource expansion request; the method specifically comprises the following steps:
step 431: the core service currently performing the resource expansion request is set as SK, all non-core services Si are traversed from a non-core service priority queue, i starts from 1, i is more than or equal to 1 and less than or equal to M, Rremain + n × RSi is calculated for given Si, if n exists, n starts from 1, n is more than or equal to 1 and less than or equal to the number of running instances of Si, the Rremain + n × RSi meets ERSK, the minimum value of i and n is recorded to a resource recovery alternative scheme
Figure 820497DEST_PATH_IMAGE004
K starts from 1 and will
Figure 250603DEST_PATH_IMAGE004
Adding a resource recovery alternative set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, go to step 432;
step 432: calculating the sum of all service occupied resources according to the RSi occupied by each service resource on the tree
Figure 307421DEST_PATH_IMAGE005
{ Sumi } depends on the number set of all services on the tree, j belongs to { Sumi }, if Rremain + RSi { Sumi } satisfies ERSK, the number of run instances of all i in the set { Sumi } and the corresponding non-core service Si is recorded to the resource recovery alternative
Figure 448552DEST_PATH_IMAGE004
In and (2) mixing
Figure 835278DEST_PATH_IMAGE004
Adding a resource recovery alternative set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, the slave non-core service priorityAcquiring the next non-core service in the queue, namely, increasing the value of i by 1, and if i is less than or equal to M, repeatedly executing the step 431; otherwise, go to step 433;
step 433: after steps 431 and 432 are executed, the resource recovery alternative set meeting the ERSK is obtained as
Figure 403663DEST_PATH_IMAGE006
Each of which is
Figure 947776DEST_PATH_IMAGE004
All comprise the service number to be recovered and the running instance number corresponding to the service to be recovered, and the alternative scheme is calculated according to the service priority weight WSi
Figure 925222DEST_PATH_IMAGE004
Total priority weight of (2):
Figure 340023DEST_PATH_IMAGE007
WPk is a scheme
Figure 876046DEST_PATH_IMAGE004
The priority weight of (1); ni is the number of instances of the service Si contained in the recovery strategy; WSi is the priority weight of the service Si;
WPk are sorted from small to large, WPk with the smallest weight is selected as the resource recycling scheme.
Has the advantages that: according to the cloud resource dynamic allocation method for the complex information system, firstly, the service description parameter file is expanded, the core service and the non-core service can be distinguished and described, the service priority is established for the non-core service by adopting an analytic hierarchy process based on service importance dimension association, and the service occupied resources are described. Secondly, a service dependency graph and a service resource pool are established. Finally, when each core service needs to expand resources, traversing a service dependency tree taking each non-core service as a root node based on the non-core service priority and the service dependency relationship graph, obtaining a resource recovery alternative scheme set meeting the requirement of the expanded resources according to the resource situation occupied by the service instance on the dependency tree, calculating the priority of the alternative scheme by combining the service dimension importance weight and the evaluation score of the service in each dimension, selecting the lowest priority scheme, and sending the scheme to the cloud platform for dynamic resource release so as to meet the resource expansion request; when a certain non-core service needs to expand resources, the resource flow is consistent with that of the core service needing to expand the resources, but the resource recovery alternative cannot contain a service tree having a dependency relationship with the resource recovery alternative. The cloud resource dynamic allocation strategy can effectively improve the utilization rate of cloud computing resources when the cloud platform bears the complex information system.
Drawings
FIG. 1 is a flowchart of a cloud resource dynamic allocation method for a complex information system;
FIG. 2 is a service priority queue diagram according to the present invention;
FIG. 3 is a schematic diagram of a service dependent relationship proposed by the present invention;
FIG. 4 is a schematic diagram of resource pool classification according to the present invention;
FIG. 5 is a schematic diagram of a set of resource recovery alternatives according to the present invention;
fig. 6 is a schematic diagram illustrating a dynamic cloud resource allocation process according to the present invention.
Detailed Description
The following detailed description of embodiments of the invention refers to the accompanying drawings.
The embodiment of the invention provides a cloud resource dynamic allocation method for a complex information system. Firstly, a service description parameter file is created for each service, and three parameters of service classification, service priority and service occupied resources are expanded on the basis of service description common parameters created by a traditional method. And secondly, establishing a service dependency relationship diagram according to the service description parameter file. And establishing a service resource pool according to the service classification. Finally, the dynamic allocation of cloud resources is carried out in the system operation process, and the method mainly comprises the steps of detecting resource expansion requests, judging whether spare resources meet the resource expansion requests, generating resource recovery schemes (distinguishing resource recovery scheme generation facing to core service resource expansion requests and resource recovery scheme generation facing to non-core service resource expansion requests), executing optimal resource recovery schemes, carrying out resource dynamic and the like. The method comprises the following specific steps:
step 1: a service description parameter file is created.
Step 11: common parameters for service descriptions are created. And newly building a system configuration file, and filling common parameters such as a service name, a dependent object service set, a load balancing strategy and the like in the configuration file for each service to be deployed on the cloud resource. This step can be performed with reference to existing methods.
Step 12: a create service class parameter is added. And (4) adding a created service classification parameter to each service on the basis of the step 11, and specifically setting a service classification parameter value according to the importance degree of the service and the influence on the system after the service is abnormal. Generally, for a service which is very concerned by a user or can cause the system to be unavailable after an abnormality occurs, a parameter value is set to SK to mark the service as a core service; for services which are not concerned by the user or cannot influence the core function of the system after the user is abnormal, the parameter value is set to be S, and the service is marked as a non-core service.
Step 13: the create service priority parameter is increased. On the basis of steps 11 and 12, a create service priority parameter is added to each service, and for the core services, the service priority parameter values are uniformly set to a constant, which indicates that the priorities of all the core services are the highest and the same. For non-core services, the service priority parameter value is set by the following steps.
Step 131: settings affect the non-core service importance dimension. According to different dimensions concerned by users and service providers, dimensions influencing the importance of the non-core service are set, such as functions, resource occupation, user attention, expense investment and other factors. The number of dimensions can be specifically determined by combining the specific situation of a complex information system, and the method does not impose restrictions on the number of dimensions. Assuming that there are N dimensions of service importance, D1、D2、……、DN
Step 132: and generating a non-core service dimension weight feature vector. And comparing the N dimensions pairwise by adopting an analytic hierarchy process, and adopting a relative scale during comparison. The relative dimensions are given using the 1-9 scale method, as shown in the table below.
TABLE 1
Figure 405991DEST_PATH_IMAGE008
According to the table, obtaining a dimension importance comparison matrix through pairwise comparison of N dimensions:
TABLE 2
Figure 888925DEST_PATH_IMAGE009
1)DiAn ith dimension representing the importance of non-core services;
2)aijis dimension DiAnd dimension DjThe result of the importance comparison;
3)
Figure 220550DEST_PATH_IMAGE001
,aii=1。
storing the dimension comparison data as a matrix to obtain:
Figure 632202DEST_PATH_IMAGE002
performing matrix normalization weighting operation to obtain a feature vector reflecting importance weight of each dimension as follows:
DW=(dw1, dw2, dw3, …dwN)T
step 133: a dimension score vector for the non-core service is computed. For a certain non-core service Si(i starts from 1 to traverse), sequentially scoring according to the specific meaning of each dimension, wherein the scoring standard can be specifically determined in the implementation process according to the application scene, but the invention is not specifically madeIt is required, but the scoring intervals for all dimensions should remain consistent. Normalizing the scoring result to obtain the non-core service SiThe score vectors for all dimensions are:
Ci=(ci1, c i2 , c i3, …c iN)T
service SiPriority weight WS ofiComprises the following steps:
Figure 416487DEST_PATH_IMAGE010
1)dwi(1. ltoreq. i. ltoreq.N) represents the dimension DiDW is a weight vector reflecting the importance of each dimension;
2)cij(1. ltoreq. j. ltoreq.N) represents service SiAccording to dimension DjScore of evaluation, CiPresentation service SiScore vectors for all dimensions;
3)WSipresentation service SiThe priority weight of (2).
Referring to fig. 2, a total of M non-core services are set in the system, priority weight calculation is performed on all the non-core services, and a priority queue corresponding to the non-core services is obtained according to the sorting of the priority weights. Wherein WS1≤WS2≤…≤WSM(the service with the same weight and the low priority of the service number), the service priority is S from low to high1,S2,S3,…,SM
Step 134: and increasing the occupation parameter of the creation service resource.
For non-core service SiInitialization input SiOccupancy vector RS for all cloud resourcesi As a service SiThe service resource occupation parameter.
RSi =(r1i,r2i…rPi
1)RSiFor service SiThe occupation amount of 1 running instance on all types of resources;
2)rjifor service SiThe occupation amount of 1 operation example on j type resources (such as memory, cpu, bandwidth, disk space and the like, which are P types in total) is more than or equal to 1 and less than or equal to P.
For core service SKiThe service resource occupation vector is represented as RSKi,RSKiReference RSiAnd (6) executing.
Step 2: establishing a service dependency relationship graph;
from the dependent object parameters created in step 11, the dependent and depended information of the service can be determined. Through manual deduction or automatic calculation, after traversing the dependent object parameters of all services, calculating to obtain a service dependency relationship diagram, a possible dependency relationship diagram, as shown in fig. 3, where the service dependency relationship diagram includes M non-core services and K core services.
And step 3: establishing a service resource pool;
in order to reduce the resource fragmentation phenomenon during the dynamic creation and recovery of resources and improve the resource utilization rate, as shown in fig. 4, the resources are divided into a core resource pool and a non-core resource pool according to the service type carried on the cloud resources. The core service is preferentially deployed in the core resource pool, and is deployed to the non-core resource pool when the resources of the core resource pool are insufficient. The non-core services are only deployed in the non-core resource pool, and the step is an optional step.
And 4, step 4: dynamically allocating cloud resources;
step 41: detecting a resource expansion request, when a system detects that resources occupied by running services S or SK reach a preset threshold value of the system, or receives the resource expansion request through an external command, recording the resource expansion request by ERS or ERSK, wherein ERS = (r)1s,r2s…rPs) Denotes a resource expansion request of the non-core service S, ERSK = (r)1sk,r2sk…rPsk) Denotes a resource extension request of the core service SK; the method comprises the steps that the value of ERS or ERSK is preset by a system because the occupied resource reaches a preset threshold value of the system, and the value of ERS or ERSK is directly determined by the parameter value of an external command because the external command receives a resource expansion request;
step 42: and judging whether the vacant resources meet the resource expansion request or not. Resource R with vacant resource poolremain =(r1remain,r2remain,…,rPremain). When R isremainEach element in the set is greater than or equal to each element in ERS (or ERSK), and is judged as RremainMeeting ERS (or ERSK), directly calling a cloud platform resource application interface to dynamically allocate the required cloud resources; when R isremainOne element is smaller than the corresponding element in ERS (or ERSK), and is judged as RremainIf the ERS (or ERSK) is not satisfied, determining whether the service currently performing the resource expansion request is the core service, if so, executing step 43; otherwise, step 44 is executed.
Step 43: and generating a resource recovery scheme facing the core service resource extension request.
Step 431: single service SiThe resources occupied by the plurality of running instances are taken as resource recovery alternatives to be added into a resource recovery alternative set { PS }. Setting the core service currently performing the resource expansion request as SK, traversing all the non-core services S from the non-core service priority queue obtained in step 133i(i starts at 1, 1. ltoreq. i.ltoreq.M), for a given SiCalculating Rremain +n*RSiIf n is present (n starts from 1, 1. ltoreq. n. ltoreq.SiNumber of running instances) such that Rremain +n*RSiIf ERSK is satisfied (decision method refers to step 42), the minimum of i and n is recorded to the resource recovery alternative
Figure 437532DEST_PATH_IMAGE004
(k increases from 1) and will
Figure 856619DEST_PATH_IMAGE004
Adding a resource recovery alternative scheme set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, go to step 432.
Step 432: by service SiAdding the resource occupied by the running instances of all the services on the whole dependency tree of the root node as a resource recovery alternative into the resource recovery alternativeSet of schemes PS. Is calculated as SiThe total resource occupied by the running instances of all the services on the whole dependency tree of the root node is RS occupied by each service resource on the dependency treeiCalculating the sum of all the resources occupied by the service
Figure 937708DEST_PATH_IMAGE011
And { Sumi } is service SiDepending on the number set of all services on the tree, j belongs to { Sumi }, if Rremain+RSi{Sumi}If ERSK is satisfied, all i and corresponding services S in the set { Sumi } are recordediRun instance count to resource reclamation alternatives
Figure 209289DEST_PATH_IMAGE004
In and (2) mixing
Figure 34025DEST_PATH_IMAGE004
Adding a resource recovery alternative scheme set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, acquiring the value of the next non-core service i from the non-core service priority queue and increasing by 1, and if i is less than or equal to M, repeatedly executing the step 431; otherwise, go to step 433.
Step 433: and selecting an optimal recovery scheme. After steps 431 and 432 are executed, the resource recovery alternative set meeting the ERSK is obtained as
Figure 576127DEST_PATH_IMAGE012
One possible PS composition diagram is shown in fig. 5.
Each scheme therein
Figure 359276DEST_PATH_IMAGE004
Both include the service number to be recovered and the number of running instances corresponding to the service to be recovered. According to the service priority weight WS obtained in step 133iAlternatives can be calculated
Figure 55836DEST_PATH_IMAGE004
Total priority weight of (2):
Figure 2974DEST_PATH_IMAGE013
1)WPkis a scheme
Figure 101380DEST_PATH_IMAGE004
The priority weight of (1);
2)nifor reclaiming services S contained in a policyiThe number of instances of (a);
3)WSifor service SjThe priority weight of (1);
to WPkSelecting WP with the smallest weight value according to the sequence from small to largekAs a resource reclamation scheme.
Referring to fig. 6, step 44: and generating a resource recovery scheme facing the non-core service resource expansion request.
The generation of the set of resource recovery alternatives PS is substantially identical to steps 431 and 432, but in the resource recovery alternatives
Figure 321009DEST_PATH_IMAGE004
Judging resource recovery alternative scheme before adding set { PS }
Figure 6330DEST_PATH_IMAGE004
Whether the non-core service currently making the resource expansion request and the service dependent on the non-core service are included in the resource expansion request, if so, the non-core service and the service dependent on the non-core service are included
Figure 235186DEST_PATH_IMAGE004
No { PS } is added; otherwise, add PS.
Step 45: and executing the optimal resource recovery scheme and performing dynamic resource allocation. And sending the service number to be recovered and the number of the running instances contained in the scheme to an existing resource scheduling module of the cloud platform according to the optimal resource recovery scheme generated in the step 43 or the step 43, and calling a cloud platform resource application module after receiving the resource recovery completion information of the cloud platform, so as to dynamically allocate the applied resources to the service which is currently subjected to the resource expansion request.
According to the cloud resource dynamic allocation method for the complex information system, firstly, the service description parameter file is expanded, the core service and the non-core service can be distinguished and described, the service priority is established for the non-core service by adopting an analytic hierarchy process based on service importance dimension association, and the service occupied resources are described. Secondly, a service dependency graph and a service resource pool are established. Finally, when each core service needs to expand resources, traversing a service dependency tree taking each non-core service as a root node based on the non-core service priority and the service dependency relationship graph, obtaining a resource recovery alternative scheme set meeting the requirement of the expanded resources according to the resource situation occupied by the service instance on the dependency tree, calculating the priority of the alternative scheme by combining the service dimension importance weight and the evaluation score of the service in each dimension, selecting the lowest priority scheme, and sending the scheme to the cloud platform for dynamic resource release so as to meet the resource expansion request; when a certain non-core service needs to expand resources, the resource flow is consistent with that of the core service needing to expand the resources, but the resource recovery alternative cannot contain a service tree having a dependency relationship with the resource recovery alternative. The cloud resource dynamic allocation strategy can effectively improve the utilization rate of cloud computing resources when the cloud platform bears the complex information system.
It will be evident to those skilled in the art that the embodiments of the present invention are not limited to the details of the foregoing illustrative embodiments, and that the embodiments of the present invention are capable of being embodied in other specific forms without departing from the spirit or essential attributes thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the embodiments being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned. Furthermore, it is obvious that the word "comprising" does not exclude other elements or steps, and the singular does not exclude the plural. Several units, modules or means recited in the system, apparatus or terminal claims may also be implemented by one and the same unit, module or means in software or hardware. The terms first, second, etc. are used to denote names, but not any particular order.
Finally, it should be noted that the above embodiments are only used for illustrating the technical solutions of the embodiments of the present invention and not for limiting, and although the embodiments of the present invention are described in detail with reference to the above preferred embodiments, it should be understood by those skilled in the art that modifications or equivalent substitutions can be made on the technical solutions of the embodiments of the present invention without departing from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (5)

1. A cloud resource dynamic allocation method facing a complex information system is characterized by comprising the following steps:
the first step is as follows: creating a description parameter file for the service on each cloud resource, wherein the description parameter file comprises three parameters of service classification, service priority and service occupied resources;
secondly, establishing a service dependency relationship graph according to the description parameter file;
the third step: establishing a service resource pool according to the service dependency relationship graph;
the fourth step: carrying out dynamic allocation of cloud resources in the running process of the complex information system, wherein the dynamic allocation comprises the following steps: detecting a resource expansion request, judging whether the vacant resources meet the resource expansion request, generating a resource recovery scheme, executing the resource recovery scheme and dynamically allocating the resources;
the first step of creating a description parameter file comprises the following steps:
step 11: newly building a complex information system configuration file, and filling dependent object parameters of the name of the service, a dependent object service set and a load balancing strategy in the complex information system configuration file for each service to be deployed on cloud resources;
step 12: adding a created service classification parameter to each service, and specifically setting a service classification parameter value according to the importance degree of the service and the influence degree of abnormal service on a system; for the service which is concerned by the user or can cause the complex information system to be unavailable after the user is abnormal, setting a parameter value to SK for marking the service as a core service; for the service which is not concerned by the user or does not influence the core function of the system after the user is abnormal, setting the parameter value as S to mark the service as non-core service;
step 13: adding a created service priority parameter to each service, wherein for the core services, the service priority parameter values are uniformly set to be a constant and represent that the priorities of all the core services are the highest and the same; setting a service priority parameter value for the non-core service;
in step 13, setting a service priority parameter value for the non-core service, includes the following steps:
step 131: setting a dimension that affects importance of the non-core service; the dimensions include: functions, resource occupation, user attention and expenditure investment; the number of dimensions is specifically determined in combination with the specific situation of the complex information system, assuming that there are N dimensions, D1、D2、……、DN
Step 132: generating a dimension weight feature vector; comparing N dimensions pairwise by adopting an analytic hierarchy process, adopting a relative scale during comparison, giving the relative scale by using a 1-9 scale method, and obtaining a dimension importance comparison matrix of the non-core service by comparing the N dimensions pairwise;
1)Dian ith dimension representing the importance of non-core services;
2)aijis dimension DiAnd dimension DjThe result of the importance comparison;
3)
Figure DEST_PATH_IMAGE002
,aii=1;
storing the dimension comparison data as a matrix to obtain:
Figure DEST_PATH_IMAGE004
performing matrix normalization weighting operation to obtain a feature vector reflecting importance weight of each dimension as follows:
DW=(dw1, dw2, dw3, …dwN)T;
step 133: for one non-core service SiI, traversing from 1, sequentially scoring according to the specific meaning of each dimension, determining a scoring standard in an implementation process according to an application scene, and keeping the scoring intervals of the dimensions consistent; normalizing the scoring result to obtain the non-core service SiThe score vectors for all dimensions are:
Ci=(ci1, c i2 , c i3, …c iN)T
the non-core service SiPriority weight WS ofiComprises the following steps:
Figure DEST_PATH_IMAGE006
1)dwii is 1. ltoreq. N, represents the dimension DiDW is a weight vector reflecting the importance of each dimension;
2)cijj is more than or equal to 1 and less than or equal to N, and represents the non-core service SiAccording to dimension DjScore of evaluation, CiRepresenting said non-core service SiScore vectors for all dimensions;
3)WSirepresenting said non-core service SiPriority weight of (2);
setting a total of M non-core services in the system, calculating the priority weights of all the non-core services, and correspondingly obtaining priority queues of all the non-core services according to the sequencing of the priority weights;
step 134: increasing the parameters for occupying the created service resources;
for the non-core service SiInitialization input SiTaking the occupation situation vectors RSi of all cloud resources as the uncoreA service resource occupation parameter of the service Si;
RSi =(r1i,r2i…rPi);
1)RSiserving the non-core SiThe occupation amount of 1 running instance on all types of resources;
2)rjiserving the non-core SiThe occupation amount of 1 operation example to j type resources is P type resources, and j is more than or equal to 1 and less than or equal to P;
for core service SKiThe service resource occupation vector is represented as RSKi,RSKiReference RSiAnd (6) executing.
2. The method for dynamically allocating cloud resources to a complex information system according to claim 1, wherein the second step specifically includes: and judging the dependency and depended information of the service according to the created dependency object parameters, and calculating to obtain a dependency relationship graph of the service after traversing all the dependency object parameters of the service in a manual deduction or automatic calculation mode.
3. The method for dynamically allocating cloud resources to a complex information system according to claim 1, wherein the third step of establishing a service resource pool specifically includes: the method comprises the steps that according to the type of the service carried on the cloud resource, the service is divided into a core resource pool and a non-core resource pool, the core service is deployed in the core resource pool, when the resources of the core resource pool are insufficient, the core service is deployed in the non-core resource pool, and the non-core service is only deployed in the non-core resource pool.
4. The method for dynamically allocating cloud resources to a complex information system according to claim 1, wherein the dynamically allocating cloud resources in the fourth step specifically includes:
step 41: the complex information system detects that resources occupied by the running service S or SK reach a preset threshold value of the complex information system or pass through the complex information systemWhen receiving the resource expansion request, the command records the resource expansion request by ERS or ERSK, ERS = (r)1s,r2s…rPs) Denotes a resource expansion request of the non-core service S, ERSK = (r)1sk,r2sk…rPsk) Denotes a resource extension request of the core service SK; the method comprises the steps that the value of ERS or ERSK is preset by a system because the occupied resource reaches a preset threshold value of the system, and the value of ERS or ERSK is directly determined by the parameter value of an external command because the external command receives a resource expansion request;
step 42: resource R with vacant resource poolremain =r1remain,r2remain,…,rPremain(ii) a When R isremainEach element in the set is greater than or equal to each element in ERS or ERSK, and is judged as RremainThe method meets ERS or ERSK, and the cloud platform resource application interface is directly called to dynamically allocate the required cloud resources; when R isremainIs less than corresponding element in ERS or ERSK, and is judged as RremainIf the ERS or the ERSK is not satisfied, whether the service currently performing the resource expansion request is the core service is judged, and if the service currently performing the resource expansion request is the core service, the step 43 is executed; otherwise, go to step 44;
step 43: generating a resource recovery scheme facing to a core service resource expansion request; step 45 is executed;
step 44: generating a resource recovery scheme facing to a non-core service resource expansion request;
step 45: executing an optimal resource recovery scheme and performing dynamic resource allocation; according to the resource recovery scheme, the service number to be recovered and the number of the running instances contained in the scheme are sent to an existing resource scheduling module of the cloud platform, and after the resource recovery completion information of the cloud platform is received, a cloud platform resource application module is called to dynamically allocate the applied resources to the service which is currently subjected to the resource expansion request.
5. The method for dynamically allocating cloud resources to a complex information system according to claim 4, wherein step 43: generating a resource recovery scheme facing to a core service resource expansion request; the method specifically comprises the following steps:
step 431: setting the core service currently performing the resource expansion request as SK, traversing all non-core services S from the non-core service priority queueiI starts at 1, 1. ltoreq. i.ltoreq.M for a given SiCalculating Rremain +n*RSiIf n is present, n starts from 1, 1. ltoreq. n.ltoreq.SiNumber of running instances of (2) such that Rremain +n*RSiIf ERSK is satisfied, the minimum value of i and n is recorded to the resource recovery alternative
Figure DEST_PATH_IMAGE008
K starts from 1 and will
Figure 221707DEST_PATH_IMAGE008
Adding a resource recovery alternative set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, go to step 432;
step 432: relying on the occupancy of each service resource on the tree as RSiCalculating the sum of all the resources occupied by the service
Figure DEST_PATH_IMAGE010
And { Sumi } is a non-core service SiDepending on the number set of all services on the tree, j belongs to { Sumi }, if Rremain+RSi{Sumi}If ERSK is satisfied, all i and corresponding non-core services S in the set { Sumi } are recordediRun instance count to resource reclamation alternatives
Figure 30525DEST_PATH_IMAGE008
In and (2) mixing
Figure 872579DEST_PATH_IMAGE008
Adding a resource recovery alternative set { PS }, increasing the value of k by 1, increasing the value of i by 1, and repeatedly executing the step 431; otherwise, acquiring the next non-core service from the non-core service priority queue, namely, acquiring the value of i to be incremented by 1, and if i is less than or equal to M, repeatedly executing the step 431; otherwise, go to step 433;
step 433: executeAfter steps 431 and 432, the resource recovery alternative solution set meeting the ERSK is obtained as
Figure DEST_PATH_IMAGE012
Each of which is
Figure 436764DEST_PATH_IMAGE008
All contain the service number to be recovered and the number of the running instances corresponding to the service to be recovered, and the WS is weighted according to the service priorityiComputing alternatives
Figure 844612DEST_PATH_IMAGE008
Total priority weight of (2):
Figure DEST_PATH_IMAGE014
WPkis a scheme
Figure 824331DEST_PATH_IMAGE008
The priority weight of (1); n isiFor reclaiming services S contained in a policyiThe number of instances of (a); WSiFor service SiThe priority weight of (1);
to WPkSelecting WP with the smallest weight value according to the sequence from small to largekAs a resource reclamation scheme.
CN202110428267.0A 2021-04-21 2021-04-21 Cloud resource dynamic allocation method for complex information system Active CN112995341B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110428267.0A CN112995341B (en) 2021-04-21 2021-04-21 Cloud resource dynamic allocation method for complex information system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110428267.0A CN112995341B (en) 2021-04-21 2021-04-21 Cloud resource dynamic allocation method for complex information system

Publications (2)

Publication Number Publication Date
CN112995341A CN112995341A (en) 2021-06-18
CN112995341B true CN112995341B (en) 2021-07-30

Family

ID=76341471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110428267.0A Active CN112995341B (en) 2021-04-21 2021-04-21 Cloud resource dynamic allocation method for complex information system

Country Status (1)

Country Link
CN (1) CN112995341B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992666B (en) * 2021-09-18 2023-12-29 阿里巴巴(中国)有限公司 Cloud resource allocation method, system, equipment and storage medium
CN114760181A (en) * 2022-03-16 2022-07-15 山东省大数据中心 System and method for realizing dynamic cluster expansion based on distributed cluster architecture

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404381A (en) * 2011-09-02 2012-04-04 西安交通大学 Software deployment system and deployment method based on workflow in cloud computing environment
CN105809345A (en) * 2016-03-08 2016-07-27 武汉理工大学 API (application programming interface) management and virtualization-based service oriented platform and control method
CN106293872A (en) * 2016-07-27 2017-01-04 云南电网有限责任公司信息中心 A kind of SLA resources balance management-control method based on resource pool

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932279B (en) * 2012-10-30 2016-06-29 北京邮电大学 A kind of cloud environment data center multi dimensional resource dispatching method
CN104461744B (en) * 2014-12-18 2018-01-19 曙光云计算技术有限公司 A kind of resource allocation methods and device
CN105007323A (en) * 2015-07-22 2015-10-28 上海斐讯数据通信技术有限公司 System and method for arranging cloud resources
US10936490B2 (en) * 2017-06-27 2021-03-02 Intel Corporation System and method for per-agent control and quality of service of shared resources in chip multiprocessor platforms

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404381A (en) * 2011-09-02 2012-04-04 西安交通大学 Software deployment system and deployment method based on workflow in cloud computing environment
CN105809345A (en) * 2016-03-08 2016-07-27 武汉理工大学 API (application programming interface) management and virtualization-based service oriented platform and control method
CN106293872A (en) * 2016-07-27 2017-01-04 云南电网有限责任公司信息中心 A kind of SLA resources balance management-control method based on resource pool

Also Published As

Publication number Publication date
CN112995341A (en) 2021-06-18

Similar Documents

Publication Publication Date Title
CN107770096B (en) SDN/NFV network dynamic resource allocation method based on load balancing
WO2020258920A1 (en) Network slice resource management method and apparatus
CN109960585B (en) Resource scheduling method based on kubernets
CN112995341B (en) Cloud resource dynamic allocation method for complex information system
US10652360B2 (en) Access scheduling method and apparatus for terminal, and computer storage medium
CN111381928B (en) Virtual machine migration method, cloud computing management platform and storage medium
CN108965014A (en) The service chaining backup method and system of QoS perception
EP4242843A1 (en) Graphics card memory management method and apparatus, device, and system
CN112764920B (en) Edge application deployment method, device, equipment and storage medium
TW202133055A (en) Method for establishing system resource prediction and resource management model through multi-layer correlations
CN114356557B (en) Cluster capacity expansion method and device
CN112799817A (en) Micro-service resource scheduling system and method
CN109743751B (en) Resource allocation method and device for wireless access network
CN111381957B (en) Service instance refined scheduling method and system for distributed platform
CN114844791B (en) Cloud service automatic management and distribution method and system based on big data and storage medium
CN111796933A (en) Resource scheduling method, device, storage medium and electronic equipment
CN114201180A (en) Micro-service deployment method, readable storage medium and device
CN112214321B (en) Node selection method and device for newly added micro service and micro service management platform
CN112882805A (en) Profit optimization scheduling method based on task resource constraint
CN111124619B (en) Container scheduling method for secondary scheduling
CN117056018A (en) Resource scheduling method, apparatus, device, program product and storage medium
CN115665157B (en) Balanced scheduling method and system based on application resource types
CN112130927A (en) Reliability-enhanced mobile edge computing task unloading method
CN114978913A (en) Service function chain cross-domain deployment method and system based on chain cutting
CN108199961B (en) Flow forwarding control method and device

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
GR01 Patent grant
GR01 Patent grant