Method for allocating computer units in a cloud computing architecture

By pre-configuring virtual machines on computing units for rapid activation/deactivation, the method addresses inefficient reallocation in cloud computing architectures, ensuring dynamic and efficient use of resources across clusters.

WO2026041625A1PCT designated stage Publication Date: 2026-02-26ORANGE SA
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/073617
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-22
Filing Date
2025-08-19
Publication Date
2026-02-26

AI Technical Summary

Technical Problem

Existing cloud computing architectures face inefficiencies in dynamically reallocating computing units between priority and non-priority clusters, particularly during unpredictable load spikes, leading to unused resources and slow transfer times.

Method used

Implementing computing units with pre-configured virtual machines associated with different clusters, allowing for rapid activation and deactivation of these machines to facilitate dynamic assignment, enabling swift reallocation even during unpredictable load changes.

Benefits of technology

Enables fast and efficient allocation of computing units across clusters, minimizing unused resources and optimizing resource utilization by quickly adapting to load fluctuations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025073617_26022026_PF_FP_ABST
    Figure EP2025073617_26022026_PF_FP_ABST
Patent Text Reader

Abstract

The invention relates to a method for allocating a computer unit, referred to as a computer unit to be allocated, to a computer unit cluster from a set of computer unit clusters comprising at least a first computer unit cluster (LP_K8S) and a second computer unit cluster (HP_K8SJ), the computer unit to be allocated comprising at least a first and a second virtual machine (VM LP, VM HPJ) previously associated with the first cluster and with the second cluster respectively, and at most one of the virtual machines, referred to as the active virtual machine, being active at a given time, the allocation method comprising: - stopping (156, 256) the first active virtual machine of the computer unit to be allocated, which active virtual machine is associated with the first cluster; and - activating (160) the second virtual machine, associated with the second cluster, so as to ensure dynamic allocation of said computer unit to the second cluster.
Need to check novelty before this filing date? Find Prior Art

Description

Method for allocating computing units in a cloud computing architecture Technical field of the invention

[0001] The field of the invention is that of cloud computing, which relies on the use of computer units, or nodes, grouped into clusters.

[0002] More specifically, the invention relates to a solution for improving the allocation of computer units in a set of computer unit clusters.

[0003] By "computing unit" we mean any physical machine, such as for example a computer, a computer server, a mobile phone or even a residential gateway (called in English "gateway"), having computing resources including at least a processor and memory.

[0004] The present invention can be applied in particular in the field of computer server hosting centers (in English "datacenters"). Technological background

[0005] We know of a state-of-the-art cloud computing architecture such as the one shown in Figure 1. This cloud computing architecture comprises a set of M clusters of computing units, with M ≥ 2.

[0006] Within these M clusters of computing units, one LP_S cluster, designated as non-priority, is reserved for hosting secondary applications or tasks, while the other M-1 clusters HP_S1, …, HP_S M-1 Computer units, referred to as priority units, are reserved for hosting priority applications or tasks.

[0007] Thus, by "priority cluster" we mean a cluster of computing units intended to host tasks or applications that are a priority over other tasks or applications hosted on other clusters, which are called non-priority clusters.

[0008] In such an architecture, the clusters are managed by a DS supervisory device.

[0009] Furthermore, each cluster includes at least one first computer unit, called the management computer unit, and a certain number of computing computer units.

[0010] For example, in the example described in the previous section, the non-priority cluster LP_S includes one management computing unit LP_UG and two compute computing units U1 LP , U2 LP , while the HP_S1 priority cluster includes one HP_UG1 management computing unit and three U11, U21, U31 compute computing units.

[0011] Thus, the IT management units manage the deployment of applications on the computing units while the DS supervision device manages the distribution of applications on the different clusters as well as the allocation of computing units to the different clusters.

[0012] To cope with a peak load that could affect a priority cluster of computing units, it is known to size the number of computing units in this priority cluster based on the peak load and to shut down a certain number of computing units during peak or off-peak periods to conserve energy. This solution has the advantage of being relatively quick to implement but the disadvantage of having computing units unused outside of peak load periods.

[0013] It is also known to size the number of computing units in a priority cluster based on nominal activity and to allocate new computing units to this priority cluster when the load increases. These new computing units are either units not yet allocated to a cluster or units allocated to the non-priority cluster. Conversely, when the load decreases, computing units from the priority cluster are made available to other clusters. However, transferring a computing unit from one cluster to another can take up to 30 minutes, according to the prior art, which in practice limits the use of this dynamic allocation of computing units between clusters to cases of predictable load peaks. It is therefore common to use hysteresis and prediction to adjust this number.

[0014] It may therefore be desirable to provide a procedure for allocating computer units to a priority cluster that makes it possible to overcome at least some of the aforementioned problems.

[0015] According to a first aspect of the invention, a method is proposed for assigning a computer unit, called the computer unit to be assigned, to a cluster of computer units from among a set of clusters of computer units comprising at least a first cluster and a second cluster of computer units, said computer unit to be assigned comprising at least a first and a second virtual machine previously associated respectively with the first cluster and the second cluster, at most one of said virtual machines, called the active virtual machine, being active at a given time, said assignment method comprising: stopping the first active virtual machine of said computer unit to be assigned, said first virtual machine being associated with the first cluster, and activating the second virtual machine, associated with the second cluster, so as to ensure a dynamic assignment of said computer unit to the second cluster.

[0016] Such a method of allocating a computer unit can in particular be implemented by a computer unit allocation device.

[0017] An "idle virtual machine" is a virtual machine that is stopped. Conversely, an "active virtual machine" is a virtual machine that is not inactive, that is, one that is, for example, being started up, in the process of being started up, or being shut down.

[0018] The proposed solution relies on the use of computing units pre-equipped with at least two virtual machines, each associated with a different cluster of computing units in the cloud computing architecture under consideration. Thus, the first virtual machine is associated with the first cluster, and the second virtual machine is associated with the second cluster.

[0019] Virtual machines are installed and configured before the computing unit is used. "Installed" means that for each virtual machine, an executable image is deployed on a medium accessible to the computing unit. This image includes at least the operating system and the software components necessary for it to boot in the intended environment. "Configured" means that for each virtual machine, basic parameters are pre-established to allow, at a minimum, its startup and its attachment to a cluster. These parameters include at least a machine identifier and network settings. The complete configuration of the virtual machine can be performed after activation. When a computing unit is assigned to a cluster, the virtual machine of the computing unit associated with that cluster is activated, i.e.The first cluster is started, while the virtual machines associated with the other clusters remain idle. Thus, assigning (or deassigning) a computing unit to a cluster simply involves activating, i.e., starting (or deactivating, i.e., stopping) the virtual machine associated with that cluster. Therefore, transferring a computing unit from one cluster to another only requires deactivating one virtual machine and activating another. Since the activation / deactivation time of a virtual machine is only on the order of a hundred milliseconds, the invention enables a truly dynamic and much faster allocation of computing units between clusters, even in the event of unpredictable load spikes, compared to known techniques used for allocating computing units to clusters.

[0020] Furthermore, in an architecture with priority and non-priority clusters, it is possible to allocate all computing units to a cluster and when the load on a priority cluster increases, to quickly assign to that cluster a computing unit previously assigned to a non-priority cluster, thus avoiding the existence of unused computing units outside of peak loads.

[0021] The assignment process may also include one or more of the following optional features, taken individually or in any technically possible combination.

[0022] According to a first characteristic, the set of computer unit clusters comprises M clusters, with M≥2, said M clusters comprising L so-called non-priority clusters, with L≥1, and ML so-called priority clusters.

[0023] According to another characteristic, the first cluster is a non-priority cluster.

[0024] According to yet another characteristic, the second cluster is a priority cluster.

[0025] According to yet another characteristic, the assignment process further includes the selection of the computer unit to be assigned from among the computer units assigned to the first cluster and which can be assigned to the second cluster.

[0026] In other words, the selection of the computing unit to be assigned is made from among the computing units comprising a virtual machine associated with the first cluster and a virtual machine associated with the second cluster.

[0027] According to yet another characteristic, the assignment process further includes receiving a shutdown request from an active virtual machine of a computing unit assigned to the first cluster.

[0028] According to yet another characteristic, the stop request includes an identifier of said computer unit to be affected and in which the selection of said computer unit to be affected is made from said identifier.

[0029] According to yet another characteristic, the assignment process further includes receiving a request to assign a computer unit to said second cluster.

[0030] A method for managing a set of computer clusters is also proposed, comprising at least a first and a second cluster of computer units. A computer unit is assigned to a cluster when said computer unit includes an active virtual machine associated with said cluster. This computer unit includes at least a first and a second virtual machine previously associated with the first and second clusters, respectively. The management method comprises: identifying a need to increase the number of computer units in the second cluster; and upon receiving, from an assignment device, information about the unavailability of a computer unit not assigned to a cluster and including an inactive virtual machine associated with the second cluster, the transmission to said assignment device of a computer unit.of a request to stop an active virtual machine associated with said first cluster, said active virtual machine belonging to a computing unit, said computing unit to be made available, also comprising an inactive virtual machine associated with the second cluster, and of a request to assign a computing unit to the second cluster.

[0031] Such an administration process can notably be implemented by an administration device for a set of clusters of computer units.

[0032] By "identification of a need to increase the number of computing units of the second cluster", we mean the detection of an undersizing in the number of computing units of the second cluster, but also the prediction of such an undersizing, for example by means of a method of forecasting the load of the second cluster as well as the identification of a need to increase the number of computing units of the second cluster, for example during a maintenance or operation of this second cluster.

[0033] The administration method may also include one or more of the following optional features, taken individually or in any technically possible combination.

[0034] According to a first characteristic, the set of computer unit clusters comprises M clusters, with M≥2, said M clusters comprising L so-called non-priority clusters, with L≥1, and ML so-called priority clusters.

[0035] According to another characteristic, the first cluster is a non-priority cluster.

[0036] According to yet another characteristic, the second cluster is a priority cluster.

[0037] According to yet another characteristic, the administration process further includes: receiving a list of computer units assigned to the first cluster and including a virtual machine associated with the second cluster, selecting from said list of computer units the said computer unit to be made available, and the shutdown request includes an identifier of said computer unit to be made available.

[0038] According to yet another characteristic, said set of computer unit clusters further comprises at least two clusters, said non-priority and distinct from said second cluster, said administration process further comprising: receiving a list of computer units assigned to said at least two non-priority clusters and which can be assigned to said second cluster, and selecting from said list of computer units said computer unit to be made available, and wherein the stop request includes an identifier of said computer unit to be made available, said first cluster being the non-priority cluster to which said computer unit to be made available is assigned when said selection is made.

[0039] A method for identifying computing units within a set of computing unit clusters is also proposed, comprising at least a first and a second cluster of computing units. A computing unit is assigned to a cluster when said computing unit includes an active virtual machine associated with said cluster, said computing unit comprising at least a first and a second virtual machine (LP VM, HP VM). J) previously associated respectively with the first cluster and the second cluster, said identification process comprising: receiving from an administration device of said set of computer unit clusters a request to obtain a list of computer units assigned to a group of computer unit clusters and which can be assigned to said second cluster, said group of computer unit clusters comprising at least the first cluster, the second cluster not belonging to said group of clusters, obtaining said list of computer units, and transmitting said list of computer units to said administration device of said set of computer unit clusters.

[0040] The identification process may also include one or more of the following optional features, taken individually or in any technically possible combination.

[0041] According to a first characteristic, the set of computer unit clusters comprises M clusters, with M≥2, said M clusters comprising L so-called non-priority clusters, with L≥1, and ML so-called priority clusters.

[0042] According to another characteristic, the first cluster is a non-priority cluster.

[0043] According to yet another characteristic, the second cluster is a priority cluster.

[0044] According to yet another characteristic, the server cluster group includes only the first cluster.

[0045] Correspondingly, the invention also relates, according to a second aspect of the invention, to a device for assigning a computer unit, referred to as the computer unit to be assigned, to a cluster of computer units from among a set of clusters of computer units comprising at least a first cluster and a second cluster of computer units, said computer unit to be assigned comprising at least a first and a second virtual machine, previously associated respectively with the first cluster and the second cluster, at most one of said two virtual machines, referred to as the active virtual machine, being active at any given time, said assignment device comprising at least one processor configured to: stop the first active virtual machine of said computer unit to be assigned, said first virtual machine being associated with the first cluster, and activate the second virtual machine, associated with the second cluster.in order to ensure a dynamic allocation of said computer unit to the second cluster.

[0046] A management device is also proposed for a set of computer clusters comprising at least a first and a second cluster of computer units, a computer unit being assigned to a cluster when said computer unit includes an active virtual machine associated with said cluster, said computer unit comprising at least a first and a second virtual machine previously associated respectively with the first and second clusters, said management device comprising at least one processor configured to: identify a need to increase the number of computer units in the second cluster, and upon receiving, from a computer unit assignment device, information of unavailability of a computer unit not assigned to a cluster and including an inactive virtual machine associated with the second cluster, transmit,said device for allocating a computer unit, a request to shut down an active virtual machine associated with said first cluster, said active virtual machine belonging to a computer unit, said computer unit to be made available, also including an inactive virtual machine associated with the second cluster and a request to allocate a computer unit to the second cluster.

[0047] A device for identifying computing units within a set of computing unit clusters comprising at least a first and a second computing unit cluster, is also proposed, a computing unit being assigned to a cluster when said computing unit includes an active virtual machine associated with said cluster, said computing unit comprising at least a first and a second virtual machine previously associated respectively with the first and second clusters, said identification device comprising at least one processor configured to: receive, from an administration device of said set of computing unit clusters, a request to obtain a list of computing units assigned to a group of computing unit clusters and which can be assigned to said second cluster, said group of computing unit clusters comprising at least the first cluster,the second cluster not belonging to said group of clusters, obtain said list of computer units, and transmit said list of computer units to said administration device of said set of clusters of computer units.

[0048] The characteristics and advantages of the method of assignment, administration or identification according to the first aspect of the invention apply in the same way to the device of assignment, administration or identification according to the second aspect of the invention and vice versa.

[0049] The invention also relates, according to a third aspect of the invention, to a system comprising an assignment device and an administration device according to the second aspect of the invention.

[0050] The system may also include one or more of the following optional features, taken individually or in any technically possible combination.

[0051] According to a first characteristic, the system further comprises the first cluster and the second cluster.

[0052] According to another feature, the system further includes the identification device according to the second aspect of the invention.

[0053] Furthermore, the processes described above can be implemented in various ways, including wired or software-based.

[0054] The invention also relates, according to a fourth aspect of the invention, to at least one computer program comprising instructions for the implementation of at least one of the processes described above, when this or these programs are executed by a processor.

[0055] This program can use any programming language, and be in the form of source code, object code, or code somewhere between source code and object code, such as in a partially compiled form, or in any other desirable form.

[0056] The invention also relates to a computer-readable information or recording medium containing the aforementioned computer program instructions. The information or recording medium can be any entity or device capable of storing programs. For example, the medium may include a storage means, such as a ROM (e.g., a CD-ROM or a microelectronic circuit ROM), or a magnetic recording means, such as a floppy disk or hard drive, a DNA sequence, or flash memory. Furthermore, the information or recording medium may be a transmissible medium, such as an electrical or optical signal, which can be transmitted via an electrical or optical cable, by radio link, wireless optical link, or by other means.

[0057] The program can be downloaded in particular from an internet-type network.

[0058] Alternatively, each information or recording medium can be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of a process conforming to the first aspect of the invention. Brief description of the figures

[0059] The invention will be better understood with the aid of the following description, given solely by way of example and made with reference to the accompanying drawings in which: is an example of a cloud computing architecture according to the prior art; is a first example of a cloud computing architecture according to the invention; illustrates the main steps of an assignment process according to the first embodiment of the invention; illustrates a state of the cloud architecture of , when the assignment process described in connection with has been implemented; is a second example of a cloud computing architecture according to the invention; illustrates the main steps of the assignment process and the administration process according to a second embodiment of the invention; illustrates the main messages exchanged during the implementation of the processes described in ;laillustrates an intermediate state of the cloud architecture during the implementation of the processes described in connection with the; laillustrates a state of the cloud architecture when the processes described in connection with the have been implemented; laillustrates the main steps of the assignment, administration and identification processes according to a third embodiment of the invention; and laillustrates the main messages exchanged during the implementation of the processes according to the; Detailed description of the invention

[0060] Lare represents schematically a first example of cloud computing architecture according to a first embodiment of the invention.

[0061] This cloud computing architecture comprises a set of M=3 clusters of computing units G1, G2, G3 managed by a DSup supervisory device and by management units SM1, SM2, SM3. In the example described here, the computing units and management units are computer servers.

[0062] Each of the computer servers constituting a computer unit comprises N virtual machines, with 3≥N≥1, each of these virtual machines being associated with a different cluster.

[0063] Thus, a computer server is assigned to a cluster of computer servers when the virtual machine associated with said cluster of servers is activated.

[0064] Furthermore, a computer server can only be assigned to a single server cluster. Therefore, at any given time and for each server, at most one of the N virtual machines is active, while the other N-1 virtual machines are not active. In other words, either one of the virtual machines is active and the computer server is assigned to the cluster corresponding to that active virtual machine, or no virtual machine is active and the computer server is not assigned to any cluster. Moreover, since only one virtual machine can be active at a time, the active virtual machine can utilize all of the server's hardware resources.

[0065] For example, if the virtual machine VM G1 on the computer server S11 is enabled (state "ON") and the other virtual machines VM G2 and VM G3 are disabled (state "OFF"), this indicates that the server S11 is currently assigned to the computer server cluster G1. However, it could also be assigned to the computer server cluster G2 or G3 if the respective virtual machines VM G2 and VM G3 were enabled. Similarly, the virtual machine VM G3 on the computer server S33 is enabled (state "ON"), indicating that the server S33 is currently assigned to the computer server cluster G3. Since this server S33 only has one virtual machine, it can only be assigned to the computer server cluster G3.Finally, the G2 virtual machine on the S12 server is activated (state "ON") and the other virtual machine, G1, is deactivated (state "OFF"). This indicates that the S12 server is currently assigned to the G2 server cluster but could also be assigned to the G1 server cluster if the G1 virtual machine were activated. Since this S12 server does not have a G3 virtual machine associated with the G3 cluster, it cannot be assigned to that G3 cluster.

[0066] We now present, in connection with the, the main steps implemented by an assignment process 10 according to the first embodiment of the invention. This assignment process is implemented by the DSup supervision device.

[0067] It is assumed that initially, the servers are assigned as shown in the diagram.

[0068] During an E10 step, the monitoring device identifies a need to increase the number of computing units in the G2 cluster.

[0069] This identification can correspond to the detection of an under-provisioning of the number of computing units in the G2 cluster and can be performed, for example, upon receipt of a request for an additional resource from the SM2 management server of this G2 cluster. Alternatively, the AD administration system can implement a load forecasting process for the G2 cluster, this forecasting process anticipating a future need for an additional resource for the G2 cluster. In another variant, this identification can be scheduled by an administrator in anticipation of a maintenance or operational operation on this G2 cluster.

[0070] During step E20, the DSup monitoring device selects a server to be assigned from among the servers assigned to cluster G1 and which can be assigned to cluster G2. In the example described here, the server to be assigned is server S31.

[0071] During step E30, the monitoring system deactivates the virtual machine VM G1 of the computer server S31. At the end of this step E30, this server is now an SP1 server available to be subsequently assigned to a cluster.

[0072] During an E40 step, the monitoring device activates the VM G2 virtual machine of the SP1 server, which assigns this server to the G2 cluster under the reference S22 as shown on the diagram which represents the assignment of servers within the three clusters at the end of the assignment process described in the diagram.

[0073] This schematically represents a second example of cloud computing architecture.

[0074] This cloud computing architecture comprises a set of M server clusters, with M ≥ 2. Among these M server clusters, L server clusters, with L ≥ 1, are designated as non-priority, and ML server clusters are designated as priority. Thus, the L non-priority clusters are reserved for hosting secondary applications or tasks, while the ML priority clusters are reserved for hosting priority applications or tasks.

[0075] The cloud computing architecture described here includes M-1 priority clusters HP_K8S1…. HP_K8S M-1 and only one non-priority LP_K8S cluster, but obviously this particular case is not limiting and the cloud computing architecture can include more than one non-priority cluster.

[0076] An orchestration solution for these M server clusters is also known as K8S or Kubernetes (registered trademark).

[0077] In a Kubernetes-type solution, clusters are managed by a DSup monitoring device, one implementation of which is known as Kanod.

[0078] Furthermore, each cluster includes at least one first server called the management server (in English "Kubernetes master"), and N compute servers (in English "Kubernetes node"), N being a natural number.

[0079] For example, in the example described above, the non-priority cluster LP_K8S includes one management server LP_SM and two compute servers S1 LP , S2 LP , while the HP_K8S priority cluster M- 1 includes an HP_SM management server M-1 and three S1 compute servers M-1 , S2 M-1 , S3 M-1 .

[0080] Thus, the management servers manage the deployment of applications or tasks on the computing servers while the DSup monitoring device manages the distribution of applications or tasks on the different clusters as well as the allocation of computing servers to the different clusters.

[0081] Each of the compute servers in the cloud computing architecture according to the invention comprises M virtual machines, each of the M virtual machines being associated with a different cluster. The M virtual machines are hereinafter denoted VM LP, VM HP1, … VM HP M-1 .

[0082] Thus, a computer server is assigned as a compute server to a cluster of computer servers when the virtual machine associated with said cluster of servers is activated.

[0083] Furthermore, a computer server can only be assigned to a single server cluster. Therefore, at any given time and for each server, at most one virtual machine out of the M virtual machines is active, while the other M-1 virtual machines are not active. In other words, either one of the virtual machines is active and the computer server is assigned to the cluster corresponding to that active virtual machine, or no virtual machine is active and the computer server is not assigned to any cluster. Moreover, since only one virtual machine can be active at a time, the active virtual machine can utilize all of the server's hardware resources.

[0084] Furthermore, each virtual machine on a computer server is associated with a status indicator. This status indicator, denoted for example "NotAvailable", is an availability indicator, for example binary and taking the states "ON" / "OFF", indicating whether the virtual machine can be activated or not.

[0085] Thus, a server is available to be allocated to a cluster if all the virtual machines on that server have their availability indicator showing that these machines can be activated.

[0086] As a corollary, a server is assigned to a cluster if only one of the virtual machines on that server has its availability indicator showing that it is enabled and all other virtual machines have their availability indicator showing that they are not enabled.

[0087] For example, the VM LP virtual machine of the S1 computer server LPis activated (state "ON") and the other HP1 VM virtual machines, … HP VM M- 1 of this server S1 LP are disabled (state "OFF") which indicates that the S1 server LP is assigned to the LP_K8S computer server cluster. Similarly, the HP VM virtual machine M- 1 of the S2 computer server M-1 is activated (state "ON") and the other virtual machines VM LP, VM HP1, … VM HP M- 2 are disabled (state "OFF") which indicates that the S2 server M-1 is assigned to the HP_K8S computer server cluster M-1 In addition, some servers (not shown) may not be assigned to a cluster and may have the availability indicator for all their virtual machines: VM LP, VM HP1, … VM HP M-1 in the "OFF" state.

[0088] Furthermore, the DSup monitoring system for the cloud computing architecture described here includes: a server allocation system (AF_S) within the cloud computing architecture, this server allocation system being capable of implementing a server allocation process across all M server clusters; and an Active Directory (AD) administration system for all M server clusters, this AD administration system being capable of implementing an administration process for all M clusters and also responsible for monitoring the priority clusters HP_K8S1, …, HP_K8S M-1An IDEN server identification device within the set of M clusters, this IDEN server identification device being capable of implementing a server identification process and also responsible for monitoring the non-priority cluster LP_K8S. An LP_inv database containing the list of compute servers assigned at a given time to the non-priority cluster LP_K8S. Each of these compute servers is associated with a reservation indicator and a list of tasks or applications active on that server. The reservation indicator indicates whether the server can be assigned to a priority cluster or not. Furthermore, each active task or application is associated with a priority index, defined, for example, by an administrator; this priority index indicates the importance of the active task or application.In the example described here, the priority index is a natural number between 0 and 10, where 10 defines the highest priority.

[0089] The DSup monitoring system described above can be implemented in a Kanod-type solution.

[0090] We now present, in relation to the, the main steps implemented by the allocation process and the administration process according to a second embodiment of the invention.

[0091] During step 100, the AD administration system identifies a need for an additional resource in the J ième HP_K8S priority cluster J In other words, the AD administration system identifies a need to increase the number of computer units in the J ième HP_K8S priority cluster J .

[0092] This identification may correspond to the detection of an under-sizing in the number of computer units of the J ième HP_K8S priority cluster J and can be performed, for example, upon receipt of a request message for an additional resource from the HP_SM management server J of this HP_K8S priority cluster J Alternatively, the AD administration system can implement a method for forecasting the workload of the J ième HP_K8S priority cluster J This forecasting process anticipates, in advance, a future need for additional resources for the J ième HP_K8S priority cluster J In another variant, this identification can be programmed by an administrator in anticipation of a maintenance or operation of the J. ième HP_K8S priority cluster J .

[0093] During step 101, the AD administration appliance forwards a RAFF assignment request for an additional compute server to the HP_K8S priority cluster. J to the AF_S computer server assignment device.

[0094] During step 150, the assignment device of a computer server AF_S therefore receives said assignment request RAFF.

[0095] Upon receiving the RAFF assignment request, and during step 151, the AF_S server assignment device searches for an unassigned SP server. In other words, the AF_S server assignment device looks for an SP server where all virtual machines have an availability indicator showing that they can be activated. To perform this search, the AF_S server assignment device can, for example, maintain a list of servers not yet assigned to a cluster and select, for instance, the first SP server in the list if the list is not empty.

[0096] Upon identification of such an SP server and during step 152, the AF_S computer server assignment device assigns this SP computer server to the HP_K8S cluster JTo perform this assignment, the AF_S computer server assignment mechanism activates the HP VM virtual machine J and sets the availability indicator for this HP VM J in the "ON" state.

[0097] During step 153, the server assignment device AF_S transmits an ACK acknowledgment message of the RAFF assignment request to the AD administration device. This ACK acknowledgment message includes, for example, at least one data point D indicating whether an additional server has been assigned to the HP_K8S cluster. J (D=OK) or not (D=NOK).

[0098] During step 102, the AD computer server administration device therefore receives the ACK acknowledgment message.

[0099] During step 103, the AD administration appliance checks if an additional server has been allocated to the HP_K8S cluster. Jby testing the value of the data D.

[0100] If no additional servers have been allocated to the HP_K8S cluster J (D=NOK), the AD administration appliance transmits, during step 104, a STOP request for an active virtual machine on a compute server assigned to the non-priority LP_K8S cluster. In other words, this STOP request requests the decommissioning of a compute server assigned to the non-priority LP_K8S cluster.

[0101] During step 154, the assignment device of a computer server AF_S therefore receives the said STOP request.

[0102] During step 155, the AF_S computer server assignment device selects an SX computer server LP assigned to the non-priority cluster LP_K8S. The selected IT server SX LP is, for example, the one with the most material resources.

[0103] During step 156, the AF_S computer server assignment device stops the VM LP virtual machine of the SX computer server LP and sets the availability indicator of this VM LP to the "OFF" state. At the end of this step 156, all virtual machines on this server have their availability indicator in the "OFF" state, indicating that these machines can be activated, and this server is now a server referenced as SP1, available to be subsequently assigned to a cluster.

[0104] It should be noted that in this second embodiment of the invention, the selection of the SX computer server LPThe removal of the non-priority LP_K8S cluster is performed solely by the AF_S server assignment mechanism, without this server interacting with the IDEN server identification mechanism, which is nevertheless responsible for monitoring the LP_K8S cluster. The reassignment of the SX server LP will then, for example, be considered by the IDEN server identification system as a computer failure type event of this SX computing server LP Following the detection of this event, the IDEN server identification device linked to the LP_K8S cluster management server will modify the distribution of tasks and / or applications across the other compute servers in the LP_K8S cluster. In this way, by not interacting with the IDEN server identification device, the SX server will be reassigned. LP is faster and the administration process is simpler.

[0105] During step 157, the AF_S computer server assignment device transmits an OK confirmation message to the AD administration device indicating that a computer server assigned to the non-priority cluster LP_K8S has been decommissioned and that, consequently, an SP1 server is now available to be assigned to a cluster.

[0106] During step 105, the AD administration device therefore receives the OK confirmation message.

[0107] During step 106, the AD administration appliance transmits a new RAFF assignment request for an additional compute server to the HP_K8S priority cluster. J to the AF_S computer server assignment device.

[0108] During step 158, the assignment device of a computer server AF_S therefore receives said new assignment request RAFF.

[0109] During step 159, the AF_S computer server assignment device searches, similarly to the search carried out in step 151, whether there is a computer server not yet assigned to a cluster and identifies that this is the case of the SP1 server which it selects.

[0110] In step 160, the AF_S computer server assignment device assigns this SP1 computer server to the HP_K8S cluster J To perform this assignment, the AF_S computer server assignment mechanism activates the HP VM virtual machine J and sets the availability indicator for this HP VM J in the "ON" state.

[0111] During step 161, the AF_S computer server assignment device sends an OK confirmation message to the AD administration device indicating that a new compute server has been assigned to the HP_K8S priority cluster. J .

[0112] During step 107, the AD administration device therefore receives the OK confirmation message.

[0113] This is a flow diagram illustrating the messages exchanged between the HP_K8S priority cluster J , the AD administration device and the AF_S computer server assignment device during the main steps described in the.

[0114] As an illustration, we now consider that L represents an initial state of the cloud computing architecture clusters before the allocation and management processes described in relation to lane are implemented. In this initial state, all computing servers are assigned to a cluster. We also assume that the priority cluster HP_K8S1 requires an additional computing server resource (in other words, in this example, J=1). L represents the state of the cloud computing architecture clusters after step 105. After this step, the non-priority cluster LP_K8S has only one server, S1. LP and the SP1 server is not assigned to any cluster. It should be noted that the SP1 server was initially assigned to the non-priority cluster LP_K8S under the reference S2. LP(In other words, in this example X=2). This represents the final state of the cloud computing architecture clusters after step 107. In this final state, the HP_K8S1 priority cluster now has three compute servers: S11, S21, and S31. S31 was initially assigned to the non-priority LP_K8S cluster under the reference S2. LP.

[0115] The main steps implemented by the allocation process, the administration process, and the identification process according to a third embodiment of the invention are now presented in relation to the invention. The elements already described with reference to the preceding figures retain the same reference numerals.

[0116] As in the second embodiment of the invention, the AD administration device performs steps 100-103 while the AF_S computer server assignment device performs steps 150-153.

[0117] If no additional servers have been allocated to the HP_K8S cluster J (D=NOK), the AD administration device transmits, during step 204, a GET request (LIST_S) to the IDEN identification device. LP ) in order to obtain a list of computer servers belonging to the non-priority cluster LP_K8S.

[0118] During step 280, the IDEN identification device therefore receives the said GET request (LIST_S LP ).

[0119] During step 281, the IDEN identification device obtains, for example by querying the LP_inv database, the LIST_S list LP S servers LP from the non-priority cluster LP_K8S whose reservation index indicates that they are declared as being able to be reassigned to a priority cluster.

[0120] During step 282, the IDEN identification device also obtains, for example from the LP_inv database, for each server S LP from the LIST_S list LP , the sum SO_S LP priority indices for tasks or applications active on this server S LP Thus, the server S LP who has the sum SO_S LP the weakest is the one that is the least important in the non-priority LP_K8S cluster in terms of the criticality of the tasks or applications assigned to it.

[0121] During step 283, the IDEN identification device transmits the LIST_S list to the AD administration device. LPafter ordering it from the least critical server (the one with the lowest sum of priority indices) to the most critical server (the one with the highest sum of priority indices). Alternatively, the IDEN identification device simultaneously transmits the LIST_S list to the AD administration device. LP and the sum of the priority indices calculated for each server in the LIST_S list LP .

[0122] During step 205, the AD administration device therefore receives the LIST_S list LP and possibly the sum of the priority indices calculated for each server in the LIST_S list LP .

[0123] During step 206, the AD administration appliance selects the SX server from the list. LP that he wishes to reassign from the non-priority cluster LP_K8S to the priority cluster HP_K8S JFor example, the AD administration appliance selects the SX server LP whose sum of priority indices is the lowest.

[0124] Alternatively, the AD administration appliance selects the SX server LP whose material resources are the most important.

[0125] The AD administration device transmits, during step 207, a STOP(SX) request LP ) of decommissioning the SX compute server LP assigned to the non-priority cluster LP_K8S. In other words, the STOP(SX) request LP ) contains an identifier of the SX compute server LP .

[0126] During step 254, the AF_S computer server assignment device therefore receives the said STOP(SX) request LP ) identifying the SX server LP .

[0127] During step 255, the AF_S computer server assignment device selects the SX computer server LP assigned to the non-priority cluster LP_K8S and identified by the STOP(SX) request ID LP ).

[0128] During step 256, the AF_S computer server assignment device disables the VM LP virtual machine of the SX computer server LP and sets the availability indicator of this VM LP to the "OFF" state. At the end of step 256, all virtual machines on this server have their availability indicator in the "OFF" state, indicating that these machines can be activated and this server is now an SP1 server available to be subsequently assigned to a cluster.

[0129] During step 257, the AF_S computer server assignment device transmits an OK confirmation message to the AD administration device that a computer server assigned to the non-priority cluster LP_K8S has been decommissioned and that, consequently, an SP1 server is now available to be assigned to a cluster.

[0130] During step 208, the AD administration device therefore receives the OK confirmation message.

[0131] During step 209, the AD administration appliance transmits a new RAFF assignment request for an additional compute server to the HP_K8S priority cluster. J to the AF_S computer server assignment device.

[0132] During step 258, the assignment device of a computer server AF_S therefore receives said new assignment request RAFF.

[0133] During a step 259, the AF_S computer server assignment device searches, similarly to the search carried out in step 151, whether there is a computer server SP not yet assigned to a cluster and identifies that this is the case of the SP1 server which it selects.

[0134] During step 260, the AF_S computer server assignment device assigns this SP1 computer server to the HP_K8S cluster J To perform this assignment, the AF_S computer server assignment mechanism activates the HP VM virtual machine J and sets the availability indicator for this HP VM J in the "ON" state.

[0135] During step 261, the AF_S computer server assignment device sends an OK confirmation message to the AD administration device that a new computer server has been assigned to the HP_K8S priority cluster. J .

[0136] During step 210, the AD administration device therefore receives the OK confirmation message.

[0137] This is a flow diagram illustrating the messages exchanged according to the main steps described in.

[0138] It should also be noted that the invention is not limited to the embodiments described above. Indeed, it will be apparent to those skilled in the art that various modifications can be made to the embodiments described above, in light of the information just disclosed to them.

[0139] For example, in the third embodiment of the invention, the AD administration device can transmit to the IDEN identification device, not a request to obtain a list of computer servers belonging to the non-priority cluster LP_K8S, a list from which this AD administration device can subsequently select the compute server it wishes to reassign, but directly a request to obtain an identifier of a server to be reassigned, this server to be reassigned being selected directly by the IDEN identification device.

[0140] For example, the cloud computing architecture might include M-2 priority clusters HP_K8S1…. HP_K8S M-2 and two non-priority clusters LP_K8S1 and LP_K8S2.

[0141] In this case, in the second embodiment of the invention, the selection of the SX server LPThe AF_S computer server assignment device can be used in either of the two clusters LP_K8S1 and LP_K8S2. Alternatively, this selection can be made in only one of these two clusters.

[0142] Similarly, in the third embodiment of the invention, the IDEN identification device obtains, upon request from the AD administration device, the LIST_S list LP S servers LP belonging to the two clusters LP_K8S1 and LP_K8S2, whose reservation index indicates that they are declared as being able to be reassigned to a priority cluster before being transferred to the AD administration device. Alternatively, the LIST_S LP is built by selecting servers only in one of the two non-priority clusters.

[0143] Furthermore, in the cloud computing architecture examples described above, the nodes of the various clusters are compute servers. Of course, some or all of these nodes could be, in a variation of these architectures, mobile phones or residential gateways.

[0144] In the detailed presentation of the invention given above, the terms used shall not be interpreted as limiting the invention to the embodiments set forth in this description, but shall be interpreted as including all equivalents which can be foreseen by a person skilled in the art by applying their general knowledge to the implementation of the teaching which has just been disclosed to them.

Claims

Method for assigning a computer unit, called the computer unit to be assigned, to a cluster of computer units from among a set of clusters of computer units comprising at least a first cluster (LP_K8S) and a second cluster of computer units (HP_K8S) J ), said computer unit to be allocated comprising at least a first and a second virtual machine (VM LP, VM HP J ) previously associated respectively with the first cluster and the second cluster, at most one of said virtual machines, called the active virtual machine, being active at a given time, said assignment process comprising: stopping (156, 256) the first active virtual machine of said computer unit to be assigned, associated with the first cluster, and activating (160) the second virtual machine, associated with the second cluster, so as to ensure a dynamic assignment of said computer unit to the second cluster. The assignment method according to the preceding claim further comprising the selection (155) of said computer unit to be assigned in the computer units assigned to the first cluster and which can be assigned to the second cluster. Assignment method according to the preceding claim further comprising receiving (154) a stop request (STOP) from an active virtual machine of a computer unit assigned to the first cluster. A method of assignment according to the preceding claim in which the stop request (STOP) includes an identifier of said computer unit to be assigned and in which the selection (155) of said computer unit to be assigned is carried out from said identifier. Assignment method according to any one of claims 1 to 4 further comprising receiving (158) an assignment request (RAFF) from a computer unit to said second cluster. Method for managing a set of computer unit clusters comprising at least one first cluster (LP_K8S) and a second computer unit cluster (HP_K8S) J ), a computing unit being assigned to a cluster when said computing unit includes an active virtual machine associated with said cluster, said computing unit including at least a first and a second virtual machine (LP VM, HP VM) J) previously associated respectively with the first cluster and the second cluster, said administration process comprising: the identification (100) of a need to increase the number of computer units of the second cluster, and upon receipt (102), from an allocation device (AF_S), of a computer unit, of information of unavailability of a computer unit not allocated to a cluster and including an inactive virtual machine associated with the second cluster, the transmission (104, 207), to said allocation device (AF_S) of a computer unit, of a stop request (STOP) of an active virtual machine associated with said first cluster, said active virtual machine belonging to a computer unit, said computer unit to be made available, also including an inactive virtual machine associated with the second cluster and of an allocation request (RAFF) of a computer unit to the second cluster. Method of administering a set of computer unit clusters according to the preceding claim further comprising: receiving (205) a list of computer units assigned to the first cluster and including a virtual machine associated with the second cluster, selecting (206) in said list of computer units the said computer unit to be made available, and wherein the stop request (STOP) includes an identifier of said computer unit to be made available. Method of administering a set of computer unit clusters according to claim 6, wherein said set of computer unit clusters further comprises at least two clusters, said non-priority and distinct from said second cluster, said method further comprising: receiving (205) a list of computer units assigned to said at least two non-priority clusters and which can be assigned to said second cluster, and selecting (206) in said list of computer units the said computer unit to be made available, and wherein the stop request (STOP) includes an identifier of said computer unit to be made available, said first cluster being the non-priority cluster to which said computer unit to be made available is assigned when said selection is made. A method for identifying computer units within a set of computer unit clusters comprising at least one first cluster (LP_K8S) and one second cluster (HP_K8SJ), a computer unit being assigned to a cluster when said computer unit includes an active virtual machine associated with said cluster, said computer unit comprising at least one first and one second virtual machine (LP_K8S, HP_K8SJ VM). J ) previously associated respectively with the first cluster and the second cluster, said method comprising: the reception (280), from an administration device (AD) of said set of computer unit clusters, of a retrieval request (GET(LIST_S LP)) of a list of computer units assigned to a group of computer unit clusters and which can be assigned to said second cluster, said group of computer unit clusters comprising at least the first cluster, the second cluster not belonging to said group of clusters, obtaining (281, 282) said list of computer units, and transmitting (283) said list of computer units to said administration device of said set of computer unit clusters. A device for allocating a computer unit, referred to as the computer unit to be allocated, to a cluster of computer units from among a set of clusters of computer units comprising at least a first cluster (LP_K8S) and a second cluster of computer units (HP_K8SJ), said computer unit to be allocated comprising at least a first and a second virtual machine (VM LP, VM HPJ), previously associated respectively with the first and second clusters, at most one of said virtual machines, referred to as the active virtual machine, being active at any given time, said allocation device comprising at least one processor configured to: stop the first active virtual machine of said computer unit to be allocated, said first virtual machine being associated with the first cluster, and activate the second virtual machine, associated with the second cluster,in order to ensure a dynamic allocation of said computer unit to the second cluster. Administration device (AD) for a set of computer clusters comprising at least one first cluster (LP_K8S) and a second computer cluster (HP_K8S) J ), a computing unit being assigned to a cluster when said computing unit includes an active virtual machine associated with said cluster, said computing unit including at least a first and a second virtual machine (LP VM, HP VM) J) previously associated respectively with the first cluster and the second cluster, said management device comprising at least one processor configured to: identify a need to increase the number of computing units in the second cluster, and upon receiving, from a computing unit allocation device (AF_S), information on the unavailability of a computing unit not allocated to a cluster and including an inactive virtual machine associated with the second cluster, transmit, to said computing unit allocation device (AF_S), a stop request (STOP) of an active virtual machine associated with said first cluster, said active virtual machine belonging to a computing unit, said computing unit to be made available, also including an inactive virtual machine associated with the second cluster and an allocation request (RAFF) of a computing unit to the second cluster. Computer identification device (CID) within a set of computer clusters comprising at least one first cluster (LP_K8S) and one second cluster (HP_K8SJ), a computer being assigned to a cluster when said computer includes an active virtual machine associated with said cluster, said computer comprising at least one first and one second virtual machine (LP VM, HP VM) J ) previously associated respectively with the first cluster and the second cluster, said identification device comprising at least one processor configured to: receive, from an administration device of said set of computer unit clusters, a get request (GET(LIST_S LP )) from a list of computer units (LIST_S LP) assigned to a group of computer unit clusters and which can be assigned to said second cluster, said group of computer unit clusters comprising at least the first cluster, the second cluster not belonging to said group of clusters, obtain said list of computer units (LIST_S LP ), and transmit said list of computer units to said administration device of said set of clusters of computer units. System comprising an assignment device (AF_S) of a computer unit within a set of clusters of computer units according to claim 10 and an administration device (AD) of said set of clusters of computer units according to claim 11. Computer program comprising instructions for carrying out a method according to any one of claims 1 to 9 when this program is executed by a processor.

Citation Information

Patent Citations

  • System and method for automatically optimizing capacity between server clusters

    US20190068506A1