This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2020-120377, filed on Jul. 14, 2020, the entire contents of which are incorporated herein by reference.
The present embodiments relate to a container deployment control method and a global master device, and a master device.
In recent years, there is progress in application of container-type virtualization technology for simplifying recovery from failures and distributing a processing load by packaging modules that are executed to provide services on a unit basis called container and combining such containers.
Such container-type virtualization technology is implemented by deploying containers not including kernel. Therefore, the container-type virtualization technology can reduce the amount of physical resources used as compared with virtualization technology using a virtual machine (VM) (hereinafter also referred to as VM-type virtualization technology).
Therefore, in recent years, there has been an active shift from information processing systems using the VM-type virtualization technology to information processing systems using the container-type virtualization technology. For example, Japanese Laid-open Patent Publication No. 2018-028824, Japanese Laid-open Patent Publication No. 2015-158811, and the like are disclosed as related art.
According to an aspect of the embodiments, a container deployment control method executed by a system that includes a global master device and a plurality of master devices, the method includes transmitting, by the global master device, a resource condition needed for deployment of a container to be deployed to each of the plurality of master devices; identifying, by each of the plurality of master devices, a result which indicates whether a resource in a cluster in which each of the plurality of master devices is deployed satisfies the resource condition; transmitting, by each of the plurality of master devices, the result to the global master device; and specifying, by the global master device, a cluster to be a deployment destination of the container to be deployed by using the result.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.
Here, management of the above-described containers is performed for each cluster including a plurality of nodes (hereinafter also referred to as server devices) deployed in close locations, for example. Specifically, for example, in each cluster, each of the containers is managed by a master device or the like that deploys the containers to each of the nodes. As a result, in an information processing system using container-type virtualization technology (hereinafter, also simply referred to as an information processing system), it becomes possible to distribute new containers among a plurality of master devices. Therefore, an information processing system can suppress an increase in time needed for deploying a new container even in a case where the number of containers to be managed is enormous or in a case where a deployment request of a new container occurs frequently.
Here, in the case of managing the containers for each cluster, as described above, the information processing system deploys a global master device that manages the master device in each of the clusters from the needs of managing the plurality of clusters in an integrated manner.
For example, when the global master device receives such deployment request of the new container, the global master device issues a new container deployment instruction to the master device of the cluster specified in advance by an administrator. Then, the master device that has received the deployment instruction determines a node for deploying the new container from the nodes to be managed.
However, the master device that has received the deployment instruction is not able to deploy the new container in a case where a node capable of deploying the new container is not present in the nodes to be managed. Therefore, in this case, the global master device needs to issue the new container deployment instruction to the master device of another cluster, and is not able to efficiently deploy the new container.
In view of the foregoing, it is desirable to determine the cluster capable of deploying a container according to a resource state of each cluster at the time of deployment
First, a configuration of an information processing system 10 (hereinafter also referred to as a container deployment destination cluster determination system 10) will be described.
The information processing system 10 illustrated in
Then, in the example illustrated in
Moreover, in the example illustrated in
Hereinafter, a case in which the information processing system 10 includes the three master devices 2 and the five server devices 3, and these master devices 2 and server devices 3 form the three clusters will be described. However, the information processing system 10 may include other numbers of master devices 2 and server devices 3, and these master devices 2 and server devices 3 may form clusters of a number other than three.
Furthermore, the cluster CL1, the cluster CL2, and the cluster CL3 each may be a cluster configured by the server device 3 used for providing cloud services by different cloud operators, and may be, for example, physically separated from one another. That is, for example, the global master device 1 may cross-sectionally manage the respective containers 4 (respective containers 4 in a multi-cloud environment) respectively deployed in the server devices 3 used for providing a plurality of cloud services from the viewpoint of, for example, ensuring redundancy.
Moreover, each of the server devices 3 configuring each cluster CL may be, for example, a server device deployed in a data center (not illustrated) or may be a server device deployed in a business office, a store, or the like of a cloud service user.
In the example illustrated in
Specifically, the global master device 1 collects information indicating a resource state of each of the server devices 3 in the clusters CL1, CL2, and CL3 (hereinafter collectively and simply referred to as cluster(s) CL) from each of the master devices 2a, 2b, and 2c, for example. Then, the global master device 1 determines the cluster CL capable of deploying the container 4 to be deployed from among the clusters CL1, CL2, and CL3 by using the information collected from each of the master devices 2, for example. Thereafter, the global master device 1 transmits the deployment instruction of the container 4 to be deployed to the master device 2 of the determined cluster CL.
However, for example, in a case where the number of server devices 3 that need to be managed in an integrated manner is large, the global master device 1 takes an enormous amount of time to determine the cluster CL capable of deploying the container 4 to be deployed. Therefore, in this case, the global master device 1 is not able to efficiently deploy the container 4 to be deployed.
Therefore, in the case of receiving the deployment request of the container 4, the global master device 1 instructs the master device 2 configuring the cluster CL specified in advance by the administrator to deploy the container 4 to be deployed.
Specifically, for example, in a case where the cluster CL specified in advance by the administrator is the cluster CL2, the global master device 1 instructs the master device 2b configuring the cluster CL2 to deploy the container 4 to be deployed, as illustrated in
However, in a case where a server device 3 capable of deploying the container 4 to be deployed is not present in the server devices 3 configuring the cluster CL2, for example, the global master device 1 needs to instruct the master device 2 (the master device 2a or the master device 2c) of another cluster CL to deploy the container 4 to be deployed again and is not able to efficiently deploy the container 4 to be deployed.
Therefore, the global master device 1 in the present embodiment transmits a resource condition needed for deployment of the container 4 corresponding to the deployment request to each of the master devices 2.
Then, each of the master devices 2 determines whether the resources in the cluster CL in which each master device 2 is deployed satisfy the resource condition received from the global master device 1. Moreover, each of the master devices 2 transmits a result of the determination to the global master device 1.
Thereafter, the global master device 1 determines the cluster CL to be a deployment destination of the container 4 to be deployed (hereinafter also referred to as a deployment destination cluster CL) on the basis of the results of the determination received from the respective master devices 2.
That is, the global master device 1 acquires the result of the determination, which is information corresponding to the resource state in each cluster CL, from all the master devices 2 before deploying the container 4 to be deployed, for example.
Therefore, the global master device 1 can determine the cluster CL capable of deploying the container 4 to be deployed according to the resource state of each cluster CL at the time of deployment (the resource state indicated by the result of the determination acquired from each master device 2). Therefore, the global master device 1 can suppress occurrence of redeployment in other clusters CL by deploying the container 4 to be deployed in the cluster CL determined according to the resource state of each cluster CL. Therefore, the global master device 1 can efficiently deploy the container 4 to be deployed.
Next, a hardware configuration of the information processing system 10 will be described.
First, a hardware configuration of the global master device 1 will be described.
As illustrated in
The storage medium 104 is, for example, a program storage area (not illustrated) for storing a program 110 for performing processing of determining a cluster CL to be the deployment destination of the container 4 to be deployed (hereinafter also referred to as deployment destination cluster determination processing). Furthermore, the storage medium 104 has, for example, an information storage area 130 for storing information to be used when the deployment destination cluster determination processing is performed. Note that the storage medium 104 may be, for example, a hard disk drive (HDD) or a solid state drive (SSD).
The CPU 101 executes the program 110 loaded from the storage medium 104 into the memory 102 to perform the deployment destination cluster determination processing.
Furthermore, the communication device 103 communicates with the master device 2 via a network (not illustrated), for example.
Next, a hardware configuration of the master device 2 will be described.
As illustrated in
The storage medium 204 has, for example, a program storage area (not illustrated) that stores a program 210 for performing the deployment destination cluster determination processing. Furthermore, the storage medium 204 has, for example, an information storage area 230 for storing information to be used when the deployment destination cluster determination processing is performed. Note that the storage medium 204 may be, for example, an HDD or an SSD.
The CPU 201 executes the program 210 loaded from the storage medium 204 into the memory 202 to perform the deployment destination cluster determination processing.
Furthermore, the communication device 203 communicates with the global master device 1 and the server device 3 via a network (not illustrated), for example.
Next, the functions of the information processing system 10 will be described.
First, a block diagram of functions of the global master device 1 will be described.
As illustrated in
Furthermore, the global master device 1 stores cluster information 131 in an information storage area 130, for example, as illustrated in
For example, the request acceptance unit 111 receives the deployment request of the container 4 transmitted by the administrator via the administrator terminal (not illustrated).
The condition transmission unit 112 transmits the resource condition needed for the deployment of the container 4 to be deployed to each of the master devices 2. The resource condition is, for example, information included in the deployment request received by the request acceptance unit 111, and is information including the number of cores and a memory amount of the CPU used by the container 4 to be deployed.
The result reception unit 113 receives the result of the determination as to whether free resources in the cluster CL in which each master device 2 is deployed (for example, free resources of the CPU and the memory) satisfy the resource condition transmitted by the condition transmission unit 112 from each of the master devices 2.
The deployment destination determination unit 114 determines the cluster CL to deploy the container 4 to be deployed on the basis of the results of the determination received by the result reception unit 113 from the respective master devices 2.
The instruction transmission unit 115 transmits the deployment instruction of the container 4 to be deployed to the master device 2 of the determined cluster CL determined by the deployment destination determination unit 114. The cluster information 131 will be described later.
Next, a block diagram of functions of the master device 2 will be described.
As illustrated in
Furthermore, the master device 2 stores resource information 231 and weight information 232 in an information storage area 230, for example, as illustrated in
The condition reception unit 211 receives the resource condition transmitted from the global master device 1.
The condition determination unit 212 determines whether the resources in the cluster CL in which its own master device 2 is deployed satisfy the resource condition received by the condition reception unit 211.
The score calculation unit 213 calculates a score indicating a use state of the resources in the cluster CL in which its own master device 2 is deployed on the basis of a use rate of the resources (the use rate of the CPU and the memory) in each server device 3 in the cluster CL in which its own master device 2 is deployed.
The result transmission unit 214 transmits the result of the determination performed by the condition determination unit 212 to the global master device 1. Furthermore, the result transmission unit 214 transmits the score calculated by the score calculation unit 213 to the global master device 1.
The instruction reception unit 215 receives the deployment instruction of the container 4 to be deployed transmitted from the global master device 1.
The container deployment unit 216 deploys the container 4 to be deployed to one of the server devices 3 in the cluster CL in which its own master device 2 is deployed in response to reception of the deployment instruction of the container 4 to be deployed by the instruction reception unit 215. The resource information 231 and the weight information 232 will be described later.
Next, an outline of a first embodiment will be described.
As illustrated in
Then, each of the master devices 2 determines whether the resources in the cluster CL in which its own master device 2 is deployed satisfy the resource condition received from the global master device 1 in response to reception of the resource condition from the global master device 1 (S3). Moreover, each of the master devices 2 transmits the result of the determination in the processing of S3 to the global master device 1 (S4). Here, the result of the determination transmitted by each of the master devices 2 may be a character string such as YES/NO, or may be a flag for indicating YES/NO.
Thereafter, the global master device 1 determines the cluster CL to deploy the container 4 to be deployed on the basis of the results of the determination received from the respective master devices 2 (S5).
That is, the global master device 1 acquires the result of the determination, which is information corresponding to the resource state in each cluster CL, from all the master devices 2 before deploying the container 4 to be deployed, for example.
As a result, the global master device 1 can determine the cluster CL capable of deploying the container 4 to be deployed according to the resource state of each cluster CL at the time of deployment. Therefore, the global master device 1 can suppress occurrence of redeployment in other clusters CL by deploying the container 4 to be deployed in the cluster CL determined according to the resource state of each cluster CL. Therefore, the global master device 1 can efficiently deploy the container 4 to be deployed.
Note that the present embodiment has been described on the assumption that all the master devices 2 transmit the result of determination. However, only the master device 2 determined to satisfy the resource condition may transmit the result of determination. Thereby, the master device 2 determined not to satisfy the resource condition does not transmit the result of determination, and thus the influence on traffic can be reduced.
Next, the details of the first embodiment will be described.
First, a part of processing in the global master device 1 will be described.
For example, the request acceptance unit 111 of the global master device 1 waits until receiving the deployment request transmitted from the administrator terminal (not illustrated) (NO in S11). Hereinafter, a specific example of the deployment request will be described.
The deployment request DR illustrated in
Specifically, in the first-row information in the information illustrated in
Furthermore, in the second-row information in the information illustrated in
That is, the deployment request DR illustrated in
Returning to
Specifically, the condition transmission unit 112 refers to, for example, the cluster information 131 stored in the information storage area 130, and specifies the master device 2 in each cluster CL. Then, the condition transmission unit 112 transmits, for example, each information included in the deployment request DR described with reference to
The cluster information 131 illustrated in
Specifically, in the first row of the cluster information 131 illustrated in
Furthermore, in the second row of the cluster information 131 illustrated in
Moreover, in the third row of the cluster information 131 illustrated in
Note that, hereinafter, description will be given on the assumption that the master devices 2 having the master IDs “MS1”, “MS2” and “MS3” respectively correspond to each of the master device 2a, the master device 2b, and the master device 2c described in
Next, a part of processing in the master device 2 will be described.
As illustrated in
Then, in the case of receiving the resource condition (YES in S21), the condition determination unit 212 of the master device 2 determines whether a specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition received in the processing of S21 is present in the server devices 3 in the cluster CL in which its own master device 2 is deployed (S22).
For example, the condition determination unit 212 acquires, from each server device 3, the resource information 231 indicating the current amount of free resources of each server device 3 (amount of free resources of the CPU and the memory) in the cluster CL in which its own master device 2 is deployed. Then, the condition determination unit 212 refers to the resource information 231 acquired from each server device 3 and determines whether a specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition received in the processing of S21 is present. Hereinafter, a specific example of the resource information 231 will be described.
Each resource information 231 illustrated in
Specifically, in the first-row information in the resource information 231a illustrated in
Furthermore, in the second-row information in the resource information 231a illustrated in
Furthermore, in the first-row information in the resource information 231b illustrated in
Furthermore, in the second-row information in the resource information 231b illustrated in
Moreover, in the first-row information in the resource information 231c illustrated in
Note that, hereinafter, description will be given on the assumption that the server devices 3 having the server IDs “SV1”, “SV2”, “SV3”, “SV4”, and “SV5” respectively correspond to each of the server device 3a, the server device 3b, the server device 3c, the server device 3d, and the server device 3e described in
Here, the deployment request DR illustrated in
Therefore, in the processing of S21, for example, in the case of receiving the resource condition corresponding to the deployment request DR described with reference to
Note that, in this case, the condition determination unit 212 of the master device 2a may specify the server device 3a as the specific server device 3 capable of deploying both the container A and the container B, for example.
Meanwhile, the total (5 (core)) of the CPU used by the container A and the CPU used by the container B is larger than 2 (core) that is the free CPU resource of the server device 3b. Therefore, in this case, the condition determination unit 212 of the master device 2a does not specify the server device 3b as the specific server device 3 capable of specifying both the container A and the container B.
Returning to
Next, another part of the processing in the global master device 1 will be described.
For example, the result reception unit 113 of the global master device 1 waits until a predetermined time elapses after the processing of S12 is performed, as illustrated in
That is, the result of the determination transmitted from the master device 2 may be transmitted with a significant delay depending on a network congestion or the like. Therefore, for example, the global master device 1 may determine the cluster CL to deploy the container 4 to be deployed on the basis of only the result of the determination from the master device 2 before a predetermined time elapses from the transmission of the resource condition to each master device 2.
As a result, the global master device 1 becomes able to determine the cluster CL as the deployment destination without waiting for reception of the determination results from all the master devices and can promptly determine the deployment destination of the container 4 to be deployed.
Note that the time from the transmission of the resource condition in the processing of S12 to the reception of the result of the determination transmitted by each master device 2 is, for example, about 100 (seconds).
Then, in the case where the predetermined time has elapsed since the processing of S12 (YES in S13), the deployment destination determination unit 114 of the global master device 1 determines the cluster CL to deploy the container 4 to be deployed corresponding to the deployment request received in the processing of S11 on the basis of the result of the determination from the master device 2 (the result of the determination received before the predetermined time elapses from when the processing of S12 is performed) (S14).
Specifically, the deployment destination determination unit 114 specifies the master device 2 that has transmitted the result indicating that the specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition transmitted in the processing of S12 is present. Then, the deployment destination determination unit 114 determines the cluster CL in which the specified master device 2 is deployed as the cluster CL to deploy the container 4 to be deployed corresponding to the deployment request received in the processing of S11, for example.
Note that the deployment destination determination unit 114 may, for example, specify the master device 2 that has first transmitted the result indicating that the specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition transmitted in the processing of S12 is present, and determine the cluster CL in which the specified master device 2 is deployed as the cluster CL to deploy the container 4 to be deployed corresponding to the deployment request received in the processing of S11.
After that, the instruction transmission unit 115 of the global master device 1 transmits the deployment instruction of the container 4 to be deployed corresponding to the deployment request received in the processing of 511 to the cluster CL determined in the processing of S14 (S15).
Next, another part of the processing in the master device 2 will be described.
As illustrated in
Then, in the case of receiving the deployment instruction of the container 4 (YES in S24), the container deployment unit 216 of the master device 2 deploys the container 4 corresponding to the deployment instruction received in the processing of S24 to one of the server devices 3 in the cluster CL in which its own master device 2 is deployed (S25).
Specifically, the container deployment unit 216 calculates, for example, one or more priorities of each of the server devices 3, for each of the server devices 3 determined to be present in the processing of S22. The one or more priorities may include, for example, a priority (hereinafter also referred to as priority A) having a higher value as the amount of free resources of the CPU and the memory is larger, and a priority (also referred to as priority B) having a higher value as the balance of the amounts of use (use rate) of the CPU and the memory is better. Then, the container deployment unit 216 refers to, for example, the weight information 232 stored in the information storage area 130, and calculates a sum of products of each priority and a weighting factor corresponding to each priority. Thereafter, the container deployment unit 216 deploys the container 4 corresponding to the deployment instruction received in the processing of S24 in the server device 3 having the largest calculated sum, for example. Hereinafter, a specific example of the weight information 232 will be described.
The weight information 232 illustrated in
Specifically, in the first-row information in the weight information 232 illustrated in
Furthermore, in the second-row information in the weight information 232 illustrated in
Note that the value set in the “weight” in the weight information 232 may be, for example, a value preset by the administrator.
As described above, the global master device 1 in the present embodiment transmits the resource condition needed for deployment of the container 4 corresponding to the deployment request to each of the master devices 2.
Then, each of the master devices 2 determines whether the resources in the cluster CL in which each master device 2 is deployed satisfy the resource condition received from the global master device 1. Moreover, each of the master devices 2 transmits a result of the determination to the global master device 1.
Thereafter, the global master device 1 determines the cluster CL as the deployment destination of the container 4 to be deployed on the basis of the results of the determination received from the respective master devices 2.
That is, the global master device 1 acquires the result of the determination, which is the information corresponding to the resource state in each cluster CL, from each master device 2 before deploying the container 4 to be deployed.
As a result, the global master device 1 can determine the cluster CL capable of deploying the container 4 to be deployed according to the resource state of each cluster CL at the time of deployment. Therefore, the global master device 1 can suppress occurrence of redeployment in other clusters CL by deploying the container 4 to be deployed in the cluster CL determined according to the resource state of each cluster CL. Therefore, the global master device 1 can efficiently deploy the container 4 to be deployed.
Next, an outline of a second embodiment will be described.
As illustrated in
Then, each of the master devices 2 determines whether resources in a cluster CL in which its own master device 2 is deployed satisfy the resource condition received from the global master device 1 in response to reception of the resource condition from the global master device 1 (S33). Furthermore, each of the master devices 2 calculates a score indicating a use state of the resources in the cluster CL in which its own master device 2 is deployed on the basis of a use rate of the resources in each server device 3 in the cluster CL in which its own master device 2 is deployed (S34). Moreover, each of the master devices 2 transmits the result of the determination in the processing of S33 and the score calculated in the processing of S34 to the global master device 1 (S35).
Thereafter, the global master device 1 determines the cluster CL to deploy the container 4 to be deployed on the basis of the results of the determination and the scores received from the respective master devices 2 (S36).
That is, each of the master devices 2 in the second embodiment determines whether the resources in the cluster CL in which its own master device 2 is deployed satisfy the resource condition, and in addition, calculates the score indicating the use state of the resources in the cluster CL in which its own master device 2 is deployed. Then, the global master device 1 in the second embodiment determines the cluster CL in which the container 4 to be deployed is to be deployed by referring to the score transmitted from each master device 2 in addition to the result of the determination transmitted from each master device 2.
As a result, the global master device 1 can deploy the container 4 to be deployed in a more appropriate cluster CL.
Next, details of the second embodiment will be described.
First, a part of processing in the global master device 1 will be described.
For example, the request acceptance unit 111 of the global master device 1 waits until receiving the deployment request transmitted from an administrator terminal (not illustrated) (NO in S41).
Then, in the case of receiving the deployment request transmitted from the administrator terminal (YES in S41), the condition transmission unit 112 of the global master device 1 transmits the resource condition including the resource amount needed for deployment of the container 4 to be deployed corresponding to the deployment request received in the processing of S41 to each of the master devices 2 (S42).
Next, a part of processing in the master device 2 will be described.
As illustrated in
Then, in the case of receiving the resource condition (YES in S51), the condition determination unit 212 of the master device 2 determines whether a specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition received in the processing of S51 is present in the server devices 3 in the cluster CL in which its own master device 2 is deployed (S52).
Furthermore, in this case, the score calculation unit 213 of the master device 2 calculates a score indicating a use state of the resources in the cluster CL in which its own master device 2 is deployed on the basis of a use rate of the resources in each server device 3 in the cluster CL in which its own master device 2 is deployed (S53).
Specifically, the score calculation unit 213 calculates the score by using, for example, at least one of an average value and a variance value of the resources of each of the server devices 3 in the cluster CL in which its own master device 2 is deployed.
More specifically, the score calculation unit 213 calculates the score by using, for example, the following expression (1).
The score=1/(A×the average value of the CPU use rates in each server device 3 +B×the variance value of the CPU use rates in each server device 3)+1/(C×the average value of the memory use rates in each server device 3+D×the variance value of the memory use rates in each server device 3)+1/(E×the average value of the storage medium use rates in each server device 3+F×the variance value of the storage medium use rates in each server device 3) (Expression 1)
Note that each of A, B, C, D, E and F in the expression (1) is, for example, a weighting factor predetermined by the administrator. Furthermore, the score calculation unit 213 may adopt only one of the first term, second term, and third term as the score, or may adopt the sum of any two of the first term, second term, and third term as the score. Furthermore, in the expression (1), an example of using both the average values and the variance values of the respective indexes has been described. However, only one of the average values and the variance values of the respective indexes may be used.
That is, in the processing of S53, the score calculation unit 213 may calculate the score so as to increase the score of the cluster CL having a small average value of the resources of each of the server devices 3 in the cluster CL in which its own master device 2 is deployed. Furthermore, in the processing of S53, the score calculation unit 213 may calculate the score so as to increase the score of the cluster CL having a small variance value of the resources of each of the server devices 3 in the cluster CL in which its own master device 2 is deployed.
Returning to
Next, another part of the processing in the global master device 1 will be described.
As illustrated in
Then, in the case of receiving the results of determination and the scores from all the master devices 2 (YES in S43), the deployment destination determination unit 114 of the global master device 1 determines the cluster CL to deploy the container 4 to be deployed corresponding to the deployment request received in the processing of S41 on the basis of the results of determination and the scores received in the processing of 543 (S44).
Specifically, the deployment destination determination unit 114 specifies the master device 2 that has transmitted the result indicating that the specific server device 3 having the amount of free resources equal to or larger than the resource amount included in the resource condition transmitted in the processing of S42 is present. Then, the deployment destination determination unit 114 determines the cluster CL having the highest score in the clusters CL in which the specified master device 2 is deployed as the cluster CL to deploy the container 4 to be deployed corresponding to the deployment request received in the processing of S41, for example.
After that, the instruction transmission unit 115 of the global master device 1 transmits the deployment instruction of the container 4 to be deployed corresponding to the deployment request received in the processing of
S41 to the cluster CL determined in the processing of S44 (S45).
Next, another part of the processing in the master device 2 will be described.
As illustrated in
Then, in the case of receiving the deployment instruction (YES in S55), the container deployment unit 216 of the master device 2 deploys the container 4 corresponding to the deployment instruction received in the processing of S55 to one of the server devices 3 in the cluster CL in which its own master device 2 is deployed (S56).
That is, each of the master devices 2 in the second embodiment determines whether the resources in the cluster CL in which its own master device 2 is deployed satisfy the resource condition, and in addition, calculates the score indicating the use state of the resources in the cluster CL in which its own master device 2 is deployed. Then, the global master device 1 in the second embodiment determines the cluster CL in which the container 4 to be deployed is to be deployed by referring to the score transmitted from each master device 2 in addition to the result of the determination transmitted from each master device 2.
As a result, the global master device 1 can deploy the container 4 to be deployed in a more appropriate cluster CL. Specifically, the global master device 1 can perform control to preferentially deploy the container 4 in the cluster CL including the server device 3 with a low resource use rate, by using the score obtained in consideration of the average values of the respective indexes. Furthermore, the global master device 1 can perform control to preferentially deploy the container 4 in the cluster CL including the server device 3 with a small variation in the resource use rate, by using the score obtained in consideration of the variance values of the respective indexes.
All examples and conditional language provided herein are intended for the pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although one or more embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2020-120377 | Jul 2020 | JP | national |