EP4298766A1 - Procédé de contrôle d'une grappe de noeuds esclave par une grappe de noeuds maître, dispositifs et programmes d'ordinateurs correspondants - Google Patents
Procédé de contrôle d'une grappe de noeuds esclave par une grappe de noeuds maître, dispositifs et programmes d'ordinateurs correspondantsInfo
- Publication number
- EP4298766A1 EP4298766A1 EP22711083.0A EP22711083A EP4298766A1 EP 4298766 A1 EP4298766 A1 EP 4298766A1 EP 22711083 A EP22711083 A EP 22711083A EP 4298766 A1 EP4298766 A1 EP 4298766A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- cluster
- slave
- task
- master
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
Definitions
- the field of the invention is that of cloud computing or “cloud computing”.
- the invention relates to a solution allowing the orchestration of a plurality of clusters of nodes having to perform identical tasks in an identical manner although these different clusters of nodes are not co-located.
- telecommunications networks have been using virtualized functions hosted in servers, or nodes, grouped together in clusters, or “clusters”, giving rise to cloud computing.
- the [Fig. 1] presents in a simplified manner the architecture of a cluster of nodes 1 conforming to the Kubernetes solution.
- the cluster of nodes 1 comprises a first node 10 called the management node, or "Kubernetes master", and N computing nodes, or "Kubernetes node", 11 ,, i e ⁇ 1, ..., N), N being a natural number.
- the management node 10 comprises a controller 101, an API module (Application Programming interface or application programming interface) 102 and a so-called ETCD database 103 which consists of a dynamic register for configuring the calculation nodes 11 ,.
- API module Application Programming interface or application programming interface
- ETCD database 103 which consists of a dynamic register for configuring the calculation nodes 11 ,.
- a calculation node 11 comprises M containers or "pods" 110 j , i ⁇ 1, ... , M), M being a natural integer.
- Each container 110 j is endowed with resources allowing the execution of one or more tasks.
- a task when executed contributes to the implementation of a network service or function, such as a Dynamic Host Configuration Protocol (DHCP) function for example.
- DHCP Dynamic Host Configuration Protocol
- cloud computing architectures are most often multi-site architectures in which the constituent nodes of clusters of nodes can be non-co-located.
- a management node 10 and two calculation nodes II1, II2 of a cluster of nodes 1 are located on a site A while three other calculation nodes II3, II4, They are located on a remote site B .
- a first solution consists in deploying a first cluster of nodes on the ground and a second cluster of nodes in one or more satellites in orbit.
- the satellites being in continuous movement around the Earth, the cluster of nodes on board the satellites modifies its configuration in order to adapt to all the needs and constraints formulated by the different operators managing the telecommunication networks of the different countries flown over. .
- These reconfiguration operations such as deploying another operating system, installing dependencies, deploying and then updating management and compute nodes, are time-consuming. Indeed, it takes approximately ten minutes for a complete deployment of this type, which occupies a very large part of the coverage period of a country by the satellite.
- a second solution consists in deploying several management nodes 10 for the same cluster of nodes 1 on the ground and in one or more satellites.
- such an architecture induces a latency time for the synchronization of the databases 103 embedded in each of the management nodes 10.
- these databases 103 work together by means of a consensus algorithm, called RAFT.
- This algorithm is based on the use of time delays which are sensitive to the latency introduced between each replication operation of the content of a database 103.
- the databases 103 are very regularly updated in order to keep the database up to date. operating state of a cluster of nodes 1.
- the distribution of the management nodes 10 between the ground and the satellites results in a lengthening of the reactivity of the management nodes of the cluster of nodes 1 which introduces service interruptions.
- the invention meets this need by proposing a method for controlling a first cluster of nodes, called slave cluster, by a second cluster of nodes, called master cluster, a cluster of nodes comprising at least one computing node executing at least a task, said control method being implemented by said master cluster and comprising the following steps:
- the two clusters of nodes are independent clusters of nodes, they behave from a functional point of view like a single and same cluster of nodes.
- the master cluster and the slave cluster are linked and have identical behavior allowing proper execution of the required services or network functions.
- the conditions of execution of the tasks by the master cluster and the slave cluster are identical because these two clusters being part of the same cloud computing architecture, it is important to ensure a coherent execution of the network functions between the different components. of the cloud computing architecture knowing that, for a given service or a given network function, certain tasks related to the provision of this service or this function will be carried out partly in the master cluster and partly in the slave cluster .
- an execution condition can be a minimum memory capacity required for the execution of the task.
- the effective memory capacity of the master cluster and the slave cluster can be different.
- first cluster of nodes located for example on the ground
- second cluster of nodes for example located in one or more satellites, or in any other vehicle in a fleet.
- the first cluster can communicate with the second cluster, it takes control of it and transfers a configuration file to it allowing the second cluster to perform the required tasks.
- the tasks executed by the master cluster being divided into a plurality of task groups, a task group comprising at least one task, the configuration file comprises an identifier of at least one group of tasks and the relative expected execution conditions of said group of tasks.
- groups can for example include all the tasks to be executed to deliver a service or execute a network function.
- Other groups can include tasks of the same nature, the tasks can also be grouped according to the types of resources they require for their execution.
- Each group is then provided with an identifier and one or more sets of execution conditions.
- control method also comprises the following steps:
- each update of the configuration of the master cluster is dynamically deployed on the slave cluster thus ensuring that the master cluster and the slave cluster always have identical behavior.
- the method further comprises a step of receiving a message indicating the failure of the update of the configuration by the slave cluster.
- the master cluster can seek to take control of another slave cluster in order to be able to provide the services or the network functions required.
- the control method further comprises, in a particular implementation, a step of receiving a message comprising information relating to the implementation, by the slave cluster, updating the configuration of at least one other slave cluster to which the slave cluster has transmitted a configuration file comprising the expected execution conditions of said task by said at least one computing node of said other slave cluster, said expected execution conditions of said task being identical to the current execution conditions of said task by at least one computing node of said master cluster.
- the first slave cluster being unable to implement the configuration requested by the master cluster, it takes control of a second slave cluster. For this, the slave cluster behaves like the master cluster by transmitting a configuration file comprising a takeover request intended for the second slave cluster.
- the master cluster is informed of this situation.
- an intermediate device serves as a relay.
- the method comprises a step of receiving a message transmitted by the intermediate equipment indicating the impossibility of transmitting a configuration file to said slave cluster.
- the master cluster can seek to take control of another slave cluster in order to be able to provide the services or the network functions required via the intermediate equipment or not.
- the latter comprises:
- the master cluster When the master cluster is informed of the occurrence of an error at the level of the slave cluster, it tries to carry out a repair in order to ensure continuity of service.
- control method may also comprise in certain embodiments:
- the slave cluster regains its independence and can be used autonomously, that is to say without a master, or under the control of a new master, etc.
- the invention also relates to a method for configuring a first cluster of nodes, called slave cluster, by a second cluster of nodes, called master cluster, a cluster of nodes comprising at least one computing node executing at least one task , said configuration method being implemented by said slave cluster and comprising the following steps:
- the slave cluster informs the latter which can then seek to take control of a new slave cluster.
- the configuration method also comprises the following steps:
- the configuration of the slave cluster is dynamically updated and always operates identically to the master cluster.
- the configuration method further comprises a step of sending a message indicating the failure of the update of the configuration intended for the master cluster.
- the master cluster can seek to take control of another slave cluster in order to be able to provide the services or the network functions required.
- the configuration method further comprises when the required resources are not available:
- the first slave cluster being unable to implement the configuration requested by the master cluster, it takes control of a second slave cluster.
- the slave cluster behaves like the master cluster by transmitting a configuration file comprising a takeover request intended for the second slave cluster.
- the master cluster is informed of this situation.
- the invention also relates to a node for managing a first cluster of nodes, called master cluster, capable of controlling a second cluster of nodes, called slave cluster, a cluster of nodes also comprising at least one computing node executing at least one task, said master cluster management node comprising means for: - receiving a request to take control of said slave cluster identifying at least one task intended to be executed by at least one computing node of said slave cluster,
- the invention also relates to a node for managing a first cluster of nodes, called a slave cluster, capable of configuring said slave cluster, a cluster of nodes also comprising at least one computing node executing at least one task, said management node of the slave cluster comprising means for:
- - receive, from a second cluster of nodes, called master cluster, a configuration file of said slave cluster comprising takeover parameters and expected execution conditions of said task by said at least one computing node of said cluster slave, said expected execution conditions of said task being identical to current execution conditions of said task by at least one computing node of said master cluster,
- the invention relates to computer program products comprising program code instructions for implementing the methods as described above, when they are executed by a processor.
- the invention also relates to a recording medium readable by a computer on which are recorded computer programs comprising program code instructions for the execution of the steps of the methods according to the invention as described above.
- Such recording medium can be any entity or device capable of storing the programs.
- the medium may comprise a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or even a magnetic recording means, for example a USB key or a hard disk.
- such a recording medium can be a transmissible medium such as an electrical or optical signal, which can be conveyed via an electrical or optical cable, by radio or by other means, so that the programs computers it contains are executable remotely.
- the programs according to the invention can in particular be downloaded from a network, for example the Internet network.
- the recording medium may be an integrated circuit in which the programs are incorporated, the circuit being suitable for executing or for being used in the execution of the aforementioned methods which are the subject of the invention.
- FIG. 1 this figure represents in a simplified manner the architecture of a cluster of nodes in accordance with the prior art
- FIG. 2 this figure represents in a simplified manner the architecture of a cluster of nodes in accordance with the solution which is the subject of the present invention
- FIG. 3 this figure represents the steps of the control and configuration processes when they are implemented by the various components of a master cluster and a slave cluster,
- FIG. 4 this figure represents the steps of an orchestration loop of a cluster of nodes
- FIG. 5 this figure represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where, the first slave cluster being already controlled by the master cluster, the configuration of the master cluster is updated,
- FIG. 6 this figure represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where, the first slave cluster being already controlled by the master cluster, the slave cluster detects an error
- FIG. 7 this figure represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where the messages exchanged between the master cluster and the first slave cluster are relayed by an intermediate device,
- FIG. 8 this figure represents a management node capable of implementing the various methods which are the subject of the present invention.
- the general principle of the invention is based on the establishment of a master-slave relationship between two clusters of nodes which may or may not be co-located.
- the establishment of this master-slave relationship makes it possible, particularly when a first cluster of nodes is located on the ground and a second cluster of nodes is located in a satellite in orbit around the Earth, to overcome the problems of synchronization of the databases present in the nodes for managing clusters of nodes between them while ensuring that the two clusters of nodes have an identical behavior thus allowing the proper provision of a required service or a required network function.
- the cluster of nodes 1 comprises a first node 10 called the management node, or "Kubernetes master", and N computing nodes, or “Kubernetes node", 11,, i e ⁇ 1, ..., N), N being a whole natural.
- the management node 10 includes a controller 101, an API (Application Programming Interface) module 102, a database 103 called DCE which consists of a dynamic register for configuring the calculation nodes 11, and at least one synchronization module 104.
- a synchronization module 104 can be a master synchronization module 104M or a slave synchronization module 104E depending on whether the management node 10 in which it is located belongs to a cluster of master nodes or a cluster of slave nodes.
- a single management node 10 can comprise both a master synchronization module 104M and a slave synchronization module 104E because the cluster of nodes to which it belongs can both be the slave of a first cluster of nodes and the master of a second cluster of nodes as will be detailed later.
- a calculation node 11 comprises M containers or "pods" 110 j , i ⁇ 1, ... , M), M being a natural integer.
- Each container 110 j is endowed with resources allowing the execution of one or more tasks.
- a task when executed contributes to the implementation of a network service or function, such as a Dynamic Host Configuration Protocol (DHCP) function for example.
- DHCP Dynamic Host Configuration Protocol
- the [fig. 3] represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a slave cluster.
- the API module 102M of the management node 10M of the master cluster receives a takeover request DI from a first slave cluster.
- a takeover request DI comprises an identifier IdT of at least one task intended to be executed by at least one computing node II,E of the first slave cluster.
- the takeover request can be sent by equipment of a telecommunications network managed by the same telecommunications operator managing the master cluster.
- this DI takeover request is transmitted to the database 103M which updates its registers with the information included in the DI takeover request such as, in addition, an IdT identifier of at least at least one task to be executed by at least one calculation module II,E of the first slave cluster, an identifier of the first slave cluster and information relating to the conditions of execution of the task by the calculation node IIIE.
- an orchestration loop is implemented by the master cluster.
- Such an orchestration loop is described with reference to [fig. 4],
- An orchestration loop is a process implemented in a cluster of nodes during which the execution conditions of the tasks executed by the calculation nodes 11 are updated according to: information included in the database data 103 and information on the current execution conditions of the tasks by the calculation nodes 11 ,.
- the information on the current execution conditions of the tasks is fed back by the calculation nodes 11, to the controller 101 or to the API module 102.
- the update of the content of the database 103 is independent of the execution of a orchestration loop.
- the takeover request DI being able to indicate which tasks executed by the computation nodes lli of the cluster of master nodes are intended to be executed by the computation nodes 11, of the first cluster of slave nodes, the implementation of such an orchestration loop makes it possible to update the operation of the cluster of master nodes.
- the execution of an orchestration loop makes it possible to pass from a so-called current operating state of a cluster of nodes, the current state being defined in particular by the current execution conditions of the tasks by the nodes of calculation 11, and the current content of the registers of the database 103, to an operating state called the expected state which is defined among other things by the execution conditions of the tasks specified in the takeover request D1.
- the expected state of the cluster of nodes becomes the new current state.
- Such an orchestration loop although described as implemented within a management node 10M belonging to a master cluster, is implemented identically within a management node 10E belonging to a first slave cluster.
- a step G1 the controller 101 or the synchronization module 104 transmits a first request for information DU intended for the API module 102.
- the API module 102 transmits the information request DU to the database 103 and to at least one calculation node 11 i .
- the database 103 and the calculation node 11 transmit the required information to the API module 102.
- the API module 102 then transmits this information to the controller 101 or to the synchronization module 104 during a step G4.
- a step G5 the controller 101 or the synchronization module 104 transmits a request RQT in application of a configuration determined by means of the information received during the step G4.
- the master synchronization module 104M creates a configuration file FC and transmits the latter to the API module 102M in a step E4.
- the API module 102M then transmits, in a step E5, the FC configuration file of the first slave cluster comprising takeover parameters and expected execution conditions of said task by the computing node II, E, the conditions expected execution conditions of the task being identical to the current execution conditions of the same task by the lliM computation node.
- the execution conditions included in the configuration file can be constraints for the tasks to execute correctly such the physical resources such as CPU, GPU, radio antennas required, but also the maximum resources authorized for a given task: maximum number of CPUs, minimum RAM resources required, etc.
- the tasks executed by the master cluster can be divided into a plurality of task groups, a task group comprising at least one task.
- the FC configuration file includes an identifier of at least one group of tasks and the expected execution conditions relating to said group of tasks.
- Such groups can for example include all the tasks to be executed to deliver a service or execute a network function.
- Other groups can include tasks of the same nature, the tasks can also be grouped according to the type of resources they require for their execution.
- Each group is then provided with an identifier and one or more sets of execution conditions.
- Only certain groups of tasks can be executed by the calculation nodes of the first slave cluster while others are executed only by the calculation nodes of the master cluster. The same group of tasks can be executed both by the calculation nodes of the master cluster and the calculation nodes of the first slave cluster.
- the API module 102E of the management node 10E of the first slave cluster receives the configuration file FC during a step E6 and transmits it to the slave synchronization module 104E.
- the slave synchronization module 104E checks, with at least one calculation node II,E, the availability of the resources required for the execution of the task identified in the configuration file FC.
- the slave synchronization module 104E transmits the result of this check to the API module 102E in a step E8.
- API module 102E in turn transmits this information to the database 103E which updates its registers in a step E9.
- the slave synchronization module 104E If, in a first case, the slave synchronization module 104E has determined that the required resources are available, it transmits a message MC, called a confirmation message, comprising information relating to the implementation, by the slave cluster, of the configuration required and therefore indicating the takeover of the first slave cluster by the master cluster to the API module 102E which in turn transmits it to the API module 102M of the management node 10M of the master cluster during a step E10. Steps E8 and E10 can be executed simultaneously.
- a message MC comprising information relating to the implementation, by the slave cluster, of the configuration required and therefore indicating the takeover of the first slave cluster by the master cluster
- the API module 102E which in turn transmits it to the API module 102M of the management node 10M of the master cluster during a step E10. Steps E8 and E10 can be executed simultaneously.
- the first slave cluster implements, in a step Eli, an orchestration loop as described with reference to FIG. 4 in order to configure all of the calculation nodes II, E of the first slave cluster with the execution conditions included in the configuration file issued by the master cluster.
- the first slave cluster is controlled by the master cluster and has an operation identical to that of the master cluster.
- the tasks executed by the computing nodes II,E of the first slave cluster are executed in the same way, under the same conditions and with the same constraints as when they are executed by the computing nodes II,M of the master cluster.
- the API module 102M of the management node 10M of the master cluster transmits the confirmation message MC to the master synchronization module 104M.
- the first slave cluster transmits to the API module 102 of the master cluster in a recurring manner data relating to the execution of the tasks executed by its calculation nodes II, E.
- step E7 the slave synchronization module 104E has determined that the required resources are not available
- the slave synchronization module 104E transmits the result of this verification to the API module 102E in step E8.
- the API module 102E transmits this information to the database 103E which updates its registers in step E9.
- the slave synchronization module 104E When the slave synchronization module 104E has determined that the required resources are not available, it then transmits a message of failure EC of the takeover of the first slave cluster by the master cluster to the API module 102E which transmits it to its turn to the API module 102M of the management node 10M of the master cluster during step E10.
- step E7 when during step E7, the slave synchronization module 104E has determined that the required resources are not available, the slave synchronization module 104E transmits the result of this verification to the database 103E in step E8'.
- This second embodiment can only be implemented if the master cluster explicitly authorizes the takeover of a second slave cluster by the first slave cluster. Such authorization is included in the configuration file FC transmitted during step E5.
- a step E9′ the database 103E updates its registers with the verification results.
- an orchestration loop is implemented by the first slave cluster in order to instantiate a master synchronization module 104M in the management node 10E of the first slave cluster
- the master synchronization module 104M of the management node 10E of the first slave cluster is instantiated and transmits a takeover request D3 of a second slave cluster to the API module 102E in a step E1.
- the takeover request D3 includes a configuration file FC2 of a second slave cluster created by the master synchronization module 104M.
- the master synchronization module 104M of the management node 10E transmits, directly after step E7, a request to take control D3 of the second slave cluster intended for the API module 102E in a step E1.
- the API module 102E then transmits, in a step E12′, the configuration file FC2 of the second slave cluster comprising takeover parameters and expected execution conditions of said task by a computing node II, E of the second slave cluster, the expected execution conditions of the task being identical to the current execution conditions of the same task by the calculation node II, M of the master cluster.
- the FC2 configuration file is created during the execution of step E1.
- An API module 102E of a management node 10E of the second slave cluster receives the configuration file FC2 and transmits it to a slave synchronization module 104E of the second slave cluster.
- the slave synchronization module 104E of the second slave cluster checks, with at least one computing node II,E of the second slave cluster, the availability of the resources required for the execution of the task identified in the configuration file FC2.
- the slave synchronization module 104E of the second slave cluster transmits the result of this verification to the API module 102E of the second slave cluster.
- the API module 102E of the second slave cluster in turn transmits this information to the database 103E of the second slave cluster which updates its registers.
- the slave synchronization module 104E of the second slave cluster When the slave synchronization module 104E of the second slave cluster has determined that the required resources are available, it transmits a confirmation message MC2 of the takeover of the second slave cluster by the first slave cluster to the API module 102E of the second slave cluster which in turn transmits it to the API module 102E of the management node 10E of the first slave cluster during a step E13'.
- the second slave cluster implements an orchestration loop as described with reference to FIG. 4 in order to configure all of the calculation nodes II, E of the second slave cluster with the execution conditions included in the FC2 config file.
- the second slave cluster is controlled by the first slave cluster, itself controlled by the master cluster, and has an operation identical to that of the master cluster.
- the API module 102E of the management node 10E of the first slave cluster transmits the confirmation message MC2 to the API module 102M of the management node 10M of the master cluster which in turn transmits it to the synchronization module master 104M.
- the first slave cluster recurrently transmits data relating to the execution of the tasks executed by the computing nodes II, E of the second slave cluster to the master cluster. .
- the first slave cluster can be freed and thus regain its independence in order to be used autonomously or under the control of a new master cluster.
- the API module 102M of the master cluster receives a franking request DA from the first slave cluster.
- this franking request DA is transmitted to the database 103M which updates its registers with the information included in the franking request DA.
- an orchestration loop is implemented by the master cluster.
- the master synchronization module 104M transmits a franking request DA2 from the first slave cluster to the API module 102M in a step E16.
- the API module 102M then transmits, in a step E17, a configuration file FC3 of the first slave cluster comprising franking parameters of said first slave cluster.
- the API module 102E of the management node 10E of the first slave cluster receives the configuration file FC3 during a step E18 and transmits it to the slave synchronization module 104E.
- the slave synchronization module 104E processes the configuration file FC3 and transmits the processing result to the API module 102E in a step E20.
- the API module 102E in turn transmits this information to the database 103E which updates its registers.
- the slave synchronization module 104E When the slave synchronization module 104E has processed the FC3 configuration file, it transmits a first slave cluster freeing message to the master to the API module 102E which in turn transmits it to the API module 102M of the management node 10M of the master cluster during a step E21.
- the first slave cluster implements, in a step E22, an orchestration loop as described with reference to FIG. 4 in order to configure all of the calculation nodes II, E of the first slave cluster.
- the first slave cluster is no longer controlled by the master cluster and operates autonomously.
- the [fig. 5] represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where, the first slave cluster being already controlled by the cluster master, the configuration of the master cluster is updated.
- the sequence of steps described with reference to Figure 5 is located between steps E12 and E13 described with reference to Figure 3.
- the API module 102M of the management node 10M of the master cluster receives an update request Update of the configuration of the master cluster.
- Such an update request MàJl comprises an identifier IdT of at least one task intended to be executed by at least one computing node II,M of the master cluster.
- the MàJ1 update request can be sent by equipment of a telecommunications network managed by the same telecommunications operator managing the master cluster.
- Such an update request MàJl similar to a takeover request such as that described with reference to Figure 3.
- apiVersion apps/vx kind: DeploymentSlave metadata: name: DeploymentName labels: app: DeploymentLabel spec: replicas: ReplicaNumber selector: matchLabels: app: DeploymentLabel template :metadata:labels:app:LabelDeployment spec:slave:IDESCLAVE/IPESCLAVE containers:
- this update request MàJl is transmitted to the database 103M which updates its registers with the information included in the update request MàJl such as, in addition, an IdT identifier of at at least one task to be executed by at least one calculation module II,M of the master cluster and information relating to the conditions for execution of the task by the calculation node II,M.
- an orchestration loop is implemented by the master cluster.
- the cluster master configuration is updated. Following this update of the master cluster configuration, some tasks execution conditions may have changed, new tasks may be running, and some tasks may be completed.
- the master synchronization module 104M then creates and transmits a MàJFC configuration update file of the first slave cluster to the API module 102M in a step F4.
- the API module 102M then transmits, in a step F5, the configuration update file MàJFC of the first slave cluster comprising the expected execution conditions of said task per computing node II, E, the expected execution conditions of the task being identical to the current execution conditions of the same task by the lliM computing node, i.e. the conditions under which the tasks are executed by the lliM computing node following the implementation of the orchestration loop in step F3.
- the API module 102E of the management node 10E of the first slave cluster receives the MàJFC configuration update file during a step F6 and transmits it to the slave synchronization module 104E.
- the slave synchronization module 104E checks, for example with at least one calculation node II,E, the availability of the resources required for the execution of the task identified in the update file configuration Update JFC.
- the slave synchronization module 104E transmits the result of this check to the API module 102E in a step F8.
- the API module 102E in turn transmits this information to the database 103E which updates its registers in a step F9.
- the slave synchronization module 104E If, in a first case, the slave synchronization module 104E has determined that the required resources are available, it transmits a message comprising information relating to the implementation of the required update, called the update confirmation message MC. updated, from the first slave cluster to the API module 102E which in turn transmits it to the API module 102M of the management node 10M of the master cluster during a step F10.
- the first slave cluster implements, in a Fil step, an orchestration loop as described with reference to FIG. 4 in order to configure all of the calculation nodes II, E of the first slave cluster with the execution conditions included in the configuration update file issued by the master cluster.
- the first slave cluster is updated and has an operation identical to that of the master cluster.
- the API module 102M of the management node 10M of the master cluster transmits the update confirmation message MC to the master synchronization module 104M of the master cluster.
- the first slave cluster recurrently transmits data relating to the execution of the tasks executed by its calculation nodes II, E.
- step F7 the slave synchronization module 104E transmits the result of this check to the API module 102E in step F8.
- the API module 102E transmits this information to the database 103E which updates its registers in step F9.
- the slave synchronization module 104E transmits an EC update failure message from the first slave cluster to the API module 102E which in turn transmits it to the API module.
- 102M of the management node 10M of the master cluster during step F10.
- the database 103E updates its registers with the results verification during a step F9'.
- an orchestration loop is implemented by the first slave cluster in order to instantiate a master synchronization module 104M in the management node 10E of the first slave cluster.
- the master synchronization module 104M of the management node 10E of the first slave cluster is instantiated and transmits an update request from the second slave cluster to the API module 102E in a step FU'.
- the update request of the second slave cluster D3 includes a configuration update file MàJFC2 of the second slave cluster created by the master synchronization module 104M.
- the master synchronization module 104M of the management node 10E transmits, directly after step F7, an update request. update of the second slave cluster to the API module 102E in a Fil' step.
- the API module 102E then transmits, in a step F12′, the configuration update file MàJFC2 of the second slave cluster comprising the expected execution conditions of said task by a computing node II, E of the second slave cluster , the expected execution conditions of the task being identical to the current execution conditions of the same task by the computing node II,M of the master cluster.
- the MàJFC2 configuration file is created during step FU'.
- An API module 102E of a management node 10E of the second slave cluster receives the configuration update file MàJFC2 and transmits it to a slave synchronization module 104E of the second slave cluster.
- the slave synchronization module 104E of the second slave cluster checks, with at least one computing node II,E of the second slave cluster, the availability of the resources required for the execution of the task identified in the update file configuration Update JFC2.
- the slave synchronization module 104E of the second slave cluster transmits the result of this verification to the API module 102E of the second slave cluster.
- the API module 102E of the second slave cluster in turn transmits this information to the database 103E of the second slave cluster which updates its registers.
- the slave synchronization module 104E of the second slave cluster When the slave synchronization module 104E of the second slave cluster has determined that the required resources are available, it transmits a confirmation message MC2 of the update of the second slave cluster to the API module 102E of the second slave cluster which transmits it in turn to the API module 102E of the management node 10E of the first slave cluster during a step F13'.
- the second slave cluster implements an orchestration loop as described with reference to FIG. 4 in order to configure all of the calculation nodes II, E of the second slave cluster with the execution conditions included in the configuration update file MàJFC2.
- the second slave cluster is updated and has an operation identical to that of the master cluster.
- the API module 102E of the management node 10E of the first slave cluster transmits the confirmation message MC2 to the API module 102M of the management node 10M of the master cluster which in turn transmits it to the synchronization module master 104M.
- the first slave cluster recurrently transmits data relating to the execution of the tasks executed by the calculation nodes II, E of the second slave cluster to the master cluster .
- the [fig. 6] represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where, the first slave cluster being already controlled by the cluster master, the slave cluster detects an error.
- the sequence of steps described with reference to Figure 6 is located between steps E12 and E13 described with reference to Figure 3.
- the API module 102E of the management node 10E of the first slave cluster receives an error message Pb transmitted for example by a radio antenna of an access node of a communication network, the node d the access being controlled by the first slave cluster which executes network functions for it such as coding functions for example.
- the API module 102E of the management node 10E transmits the error message Pb to the slave synchronization module 104E of the first slave cluster.
- the slave synchronization module 104E verifies the capacity of the first slave cluster to resolve the error itself.
- the first slave cluster If the first slave cluster is able to resolve the error itself, it does so during a step H4.
- the slave synchronization module 104E transmits this information to the API module 102E in a step H5.
- the API module 102E in turn transmits this information to the API module 102M of the master cluster in a step H6.
- the API module 102M of the master cluster in turn transmits this information to the master synchronization module 104M in a step H7.
- the master synchronization module 104M determines a solution to resolve the error and generates a correction file.
- the master synchronization module 104M transmits the correction file to the API module 102M in a step H9.
- the API module 102M transmits the correction file to the API module 102E during a step H10.
- the slave synchronization module 104E receives, in a step H11, the correction file transmitted to it by the API module 102E.
- a step H12 an orchestration loop is implemented by the master cluster in order to take account of the information from the correction file during the execution of the tasks by the calculation nodes II, M.
- an orchestration loop is implemented by the first master cluster in order to take into account the information of the correction file during the execution of the tasks by the calculation nodes II, E and thus fix the error.
- the [fig. 7] represents the steps of the control and configuration methods when they are implemented by the various constituents of a master cluster and of a first slave cluster in the case where the messages exchanged between the master cluster and the first cluster slave are relayed by an intermediate device.
- the API 102M module wishes to transmit a first slave cluster FC configuration file during step E5 or a MàJFC configuration update file during step F5
- the message comprising this configuration file or configuration update is transmitted to an intermediate device which then serves as a relay.
- the intermediate equipment R receives the message comprising this configuration or configuration update file intended to be relayed to the first slave cluster.
- the intermediate equipment R applies security and filtering rules to the message received. Such rules are for example set by the telecommunications operator managing the master cluster and wishing to take control or update the first slave cluster. The intermediate equipment R also checks that it is able to communicate with the first slave cluster.
- the intermediate equipment R determines that the message to be transmitted to the first slave cluster cannot be relayed, it informs the master cluster thereof during a step J3 and indicates the reasons for this refusal.
- the intermediate equipment R determines that the message to be transmitted to the first slave cluster can be relayed, it transmits the message to the first slave cluster during a step J4.
- the master cluster is informed of the correct transmission of the message to the first slave cluster when the intermediate equipment transmits to it during a step J5 a message confirming the takeover of the first slave cluster or a message confirming the update of the first slave cluster.
- the [fig. 8] represents management node 10 capable of implementing the various methods which are the subject of the present invention.
- a management node 10 can comprise at least one hardware processor 801, one storage unit 802, one interface 803, and at least one network interface 804 which are connected together through a bus 805 in addition to the API module 102 , of the controller 101, of the database 103 and of the synchronization module(s) 104.
- the constituent elements of the management node 10 can be connected by means of a connection other than a bus.
- the processor 801 controls the operations of the management node 10.
- the storage unit 802 stores at least one program for the implementation of the various methods which are objects of the invention to be executed by the processor 801, and various data, such as parameters used for calculations carried out by the processor 801, intermediate data of calculations carried out by the 801 processor, etc.
- Processor 801 may be formed by any known and suitable hardware or software, or by a combination of hardware and software.
- the processor 801 can be formed by dedicated hardware such as a processing circuit, or by a programmable processing unit such as a Central Processing Unit which executes a program stored in a memory of this one.
- Storage unit 802 may be formed by any suitable means capable of storing the program or programs and data in a computer readable manner. Examples of storage unit 802 include non-transitory computer-readable storage media such as semiconductor memory devices, and magnetic, optical, or magneto-optical recording media loaded into a read-and-write unit. 'writing.
- Interface 803 provides an interface between management node 10 and at least one computing node 11, belonging to the same cluster of nodes as management node 10.
- the network interface 804 in turn provides a connection between the management node 10 and another management node of another cluster of nodes.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2101850A FR3120172A1 (fr) | 2021-02-25 | 2021-02-25 | Procédé de contrôle d’une grappe de nœuds esclave par une grappe de nœuds maître, dispositifs et programmes d’ordinateurs correspondants |
| PCT/FR2022/050279 WO2022180323A1 (fr) | 2021-02-25 | 2022-02-16 | Procédé de contrôle d'une grappe de noeuds esclave par une grappe de noeuds maître, dispositifs et programmes d'ordinateurs correspondants |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4298766A1 true EP4298766A1 (fr) | 2024-01-03 |
Family
ID=75746845
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP22711083.0A Pending EP4298766A1 (fr) | 2021-02-25 | 2022-02-16 | Procédé de contrôle d'une grappe de noeuds esclave par une grappe de noeuds maître, dispositifs et programmes d'ordinateurs correspondants |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20240146605A1 (fr) |
| EP (1) | EP4298766A1 (fr) |
| CN (1) | CN116888934A (fr) |
| FR (1) | FR3120172A1 (fr) |
| WO (1) | WO2022180323A1 (fr) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117370468A (zh) * | 2023-11-09 | 2024-01-09 | 浙江智臾科技有限公司 | 数据同步方法以及集群系统 |
| CN118377836B (zh) * | 2024-06-25 | 2024-11-01 | 天津南大通用数据技术股份有限公司 | 一种数据库管理方法、装置、终端及存储介质 |
Family Cites Families (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8280944B2 (en) * | 2005-10-20 | 2012-10-02 | The Trustees Of Columbia University In The City Of New York | Methods, media and systems for managing a distributed application running in a plurality of digital processing devices |
| US20080098113A1 (en) * | 2006-10-19 | 2008-04-24 | Gert Hansen | Stateful firewall clustering for processing-intensive network applications |
| US20080172679A1 (en) * | 2007-01-11 | 2008-07-17 | Jinmei Shen | Managing Client-Server Requests/Responses for Failover Memory Managment in High-Availability Systems |
| US7631214B2 (en) * | 2007-05-31 | 2009-12-08 | International Business Machines Corporation | Failover processing in multi-tier distributed data-handling systems |
| US20090157766A1 (en) * | 2007-12-18 | 2009-06-18 | Jinmei Shen | Method, System, and Computer Program Product for Ensuring Data Consistency of Asynchronously Replicated Data Following a Master Transaction Server Failover Event |
| CN102479099B (zh) * | 2010-11-22 | 2015-06-10 | 中兴通讯股份有限公司 | 虚拟机管理系统及其使用方法 |
| US9154577B2 (en) * | 2011-06-06 | 2015-10-06 | A10 Networks, Inc. | Sychronization of configuration file of virtual application distribution chassis |
| EP2901312B1 (fr) * | 2012-09-28 | 2019-01-02 | Cycle Computing LLC | Optimisation en temps réel d'une infrastructure de calcul dans un environnement virtualisé |
| US10693955B2 (en) * | 2013-12-14 | 2020-06-23 | Netapp, Inc. | Techniques for SAN storage cluster synchronous disaster recovery |
| US9619243B2 (en) * | 2013-12-19 | 2017-04-11 | American Megatrends, Inc. | Synchronous BMC configuration and operation within cluster of BMC |
| US20150229715A1 (en) * | 2014-02-13 | 2015-08-13 | Linkedin Corporation | Cluster management |
| US20170308446A1 (en) * | 2014-10-23 | 2017-10-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for disaster recovery of cloud applications |
| US10083057B1 (en) * | 2016-03-29 | 2018-09-25 | EMC IP Holding Company LLC | Migration of active virtual machines across multiple data centers |
| US10609130B2 (en) * | 2017-04-28 | 2020-03-31 | Microsoft Technology Licensing, Llc | Cluster resource management in distributed computing systems |
| US10762234B2 (en) * | 2018-03-08 | 2020-09-01 | International Business Machines Corporation | Data processing in a hybrid cluster environment |
| US11194620B2 (en) * | 2018-10-31 | 2021-12-07 | Nutanix, Inc. | Virtual machine migration task management |
| US10977028B1 (en) * | 2020-01-22 | 2021-04-13 | Capital One Services, Llc | Computer-based systems configured to generate and/or maintain resilient versions of application data usable by operationally distinct clusters and methods of use thereof |
| WO2021254592A1 (fr) * | 2020-06-15 | 2021-12-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Procédés et dispositifs de prévention de mésinformation lors d'un apprentissage automatique |
| US11321461B2 (en) * | 2020-06-25 | 2022-05-03 | EMC IP Holding Company LLC | Malware scan task processing in a data storage system |
-
2021
- 2021-02-25 FR FR2101850A patent/FR3120172A1/fr not_active Withdrawn
-
2022
- 2022-02-16 WO PCT/FR2022/050279 patent/WO2022180323A1/fr not_active Ceased
- 2022-02-16 CN CN202280016598.6A patent/CN116888934A/zh active Pending
- 2022-02-16 EP EP22711083.0A patent/EP4298766A1/fr active Pending
- 2022-02-16 US US18/547,860 patent/US20240146605A1/en active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| CN116888934A (zh) | 2023-10-13 |
| WO2022180323A1 (fr) | 2022-09-01 |
| FR3120172A1 (fr) | 2022-08-26 |
| US20240146605A1 (en) | 2024-05-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10824416B2 (en) | Method and system for a client to server deployment via an online distribution platform | |
| EP3392761B1 (fr) | Mise à jour incrémentielle distribuée de plateaux au moyen d'un système de commande de source | |
| US20100306337A1 (en) | Systems and methods for cloning target machines in a software provisioning environment | |
| US20160044046A1 (en) | Secure, non-disruptive firmware updating | |
| EP3474583B1 (fr) | Procédés de chargement d'un profil dans un élément sécurisé, gestionnaire et élément sécurisé personnalisable | |
| EP3123387B1 (fr) | Sécurisation du chargement de données dans une mémoire non-volatile d'un élément sécurisé | |
| US10360010B1 (en) | Method and system for implementing an ATM management and software policy tool | |
| FR3059194B1 (fr) | Installation d'un profil dans un module d'identite de souscripteur embarque | |
| US10409582B1 (en) | Method and system for implementing a retail event management tool | |
| US10579362B1 (en) | Method and system for implementing an ATM phone home and scrapper mapping tool | |
| EP4298766A1 (fr) | Procédé de contrôle d'une grappe de noeuds esclave par une grappe de noeuds maître, dispositifs et programmes d'ordinateurs correspondants | |
| US20240012632A1 (en) | Coordinating updates to an agent platform appliance in which agents of cloud services are deployed | |
| EP4309032B1 (fr) | Mise à jour automatique d'ensembles de vm | |
| US20230185627A1 (en) | Managing lifecycle of agents of cloud services according to desired state | |
| EP4606084A1 (fr) | Procédé de traitement d'une requête d'exécution d'un service dans un réseau de communication, procédé de validation de la requête, entité intermédiaire, entité de validation, système et programme d'ordinateur correspondants | |
| WO2015092307A1 (fr) | Procédé de test et de mise à jour du système d'un terminal par un module d'identité de souscripteur et dispositifs associés | |
| FR3090156A1 (fr) | Registre distribué | |
| FR3125187A1 (fr) | Procédé et dispositif de configuration d’une unité d’accès dans un environnement virtualisé | |
| CN113691820A (zh) | 直播间礼物更新方法、装置、终端设备及可读存储介质 | |
| EP4049409A1 (fr) | Technique de communication entre une application mettant en oeuvre un service et un serveur | |
| EP2791794B1 (fr) | Procede de gestion d'une application referencee par un dispositif | |
| WO2016156714A1 (fr) | Système et procédé d'exécution d'une application dans un terminal muni d'une carte a puce | |
| WO2025114164A1 (fr) | Procédé de déploiement d'un service dans un environnement distribué | |
| FR3067149A1 (fr) | Mise a jour hierarchisee de logiciels d'equipements d'un reseau de distribution electrique | |
| WO2023227386A1 (fr) | Procédé de gestion de profils de service d'un élément sécurisé |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20230822 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
| INTG | Intention to grant announced |
Effective date: 20251223 |
|
| GRAJ | Information related to disapproval of communication of intention to grant by the applicant or resumption of examination proceedings by the epo deleted |
Free format text: ORIGINAL CODE: EPIDOSDIGR1 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |