Hyper-computing cluster decentration configuration method and device and storage medium

By adopting a decentralized configuration method in supercomputing clusters and updating configuration files in regions, the problem of excessive network load in traditional centralized configuration management in large-scale clusters is solved, and efficient and reliable configuration management is achieved.

CN120075043AActive Publication Date: 2025-05-30TIANJIN TIANHE COMPUTER TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510509258.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-22
Publication Date
2025-05-30
Estimated Expiration
2045-04-22

AI Technical Summary

Technical Problem

Traditional centralized automated configuration management tools are difficult to efficiently manage tens of thousands of network nodes in supercomputing clusters, resulting in overloading of network load and bottlenecks.

Method used

The decentralized configuration method is adopted to determine the aggregation switch, access switch and network nodes through real-time network topology, and update the configuration files in different regions to reduce the pressure on the core switch.

Benefits of technology

It realizes timely detection and update of configuration files in supercomputing clusters, reduces the pressure on core switches, improves configuration efficiency, and avoids single point of failure affecting the configuration process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120075043A_ABST
    Figure CN120075043A_ABST
Patent Text Reader

Abstract

The invention relates to the field of automatic configuration, and discloses a hyper-computing cluster decentralized configuration method and device and a storage medium, and the method comprises the steps: determining each convergence switch, each access switch under each convergence switch and each network node under each access switch according to the real-time network topology of a hyper-computing cluster; when it is detected that the configuration file of the main node is updated, for each aggregation switch, determining a corresponding aggregation node according to node state information of each network node connected with the aggregation switch, and updating the aggregation node; for each access switch, under the condition that each network node connected with the access switch is not updated, determining a corresponding access node according to the node state information of each network node under the access switch, and updating the access node; and for each access node, each network node under the access switch corresponding to the access node is updated, so that decentralized configuration updating is realized, and the pressure of the core switch is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of automated configuration, and particularly to a decentralized configuration method, device, and storage medium for a supercomputing cluster. Background Art

[0002] With the rapid development of cloud computing, virtualization technology, and containerization, computer infrastructure is no longer limited to a single physical server, but has expanded to hundreds or thousands of virtual machines, containers, cloud services, etc. Traditional manual configuration methods cannot efficiently manage and coordinate such a large-scale infrastructure. Therefore, a series of automated configuration management tools have emerged, and without exception, these automated configuration management tools adopt a centralized management design method.

[0003] However, when the cluster scale is too large, when the master node in the cluster transmits the configuration file to all target nodes, it will generate extremely high pressure and network load, and will also become a bottleneck in the entire workflow. Especially in a supercomputing cluster, the number of network nodes is in the tens of thousands, and how to efficiently perform configuration management among tens of thousands of network nodes has become a bottleneck.

[0004] In view of this, the present invention is specifically proposed. Summary of the Invention

[0005] In order to solve the above technical problems, the present invention provides a decentralized configuration method, device, and storage medium for a supercomputing cluster, which realizes the timely detection and update of configuration files in the supercomputing cluster, reduces the pressure on the core switch, improves the configuration efficiency, and avoids the impact of single-point failures on the configuration process.

[0006] An embodiment of the present invention provides a decentralized configuration method for a supercomputing cluster, and the method includes:

[0007] Determine each aggregation switch, each access switch under each aggregation switch, and each network node under each access switch according to the real-time network topology of the supercomputing cluster;

[0008] When it is detected that the configuration file of the master node in each network node is updated, for each aggregation switch, determine the aggregation node corresponding to the aggregation switch according to the node status information of each network node connected to the aggregation switch via the access switch, and update the aggregation node based on the configuration file of the master node;

[0009] For each access switch, when none of the network nodes connected to the access switch are updated, determine the access node corresponding to the access switch according to the node status information of each network node under the access switch, and update the access node based on the configuration file of the aggregation node under the aggregation switch corresponding to the access node;

[0010] For each access node, based on the configuration file of the access node, update each network node under the access switch corresponding to the access node.

[0011] An embodiment of the present invention provides an electronic device, which includes:

[0012] A processor and a memory;

[0013] The processor is used to execute the steps of the supercomputing cluster decentralized configuration method described in any embodiment by calling the program or instruction stored in the memory.

[0014] An embodiment of the present invention provides a computer-readable storage medium, which stores a program or instruction, and the program or instruction causes a computer to execute the steps of the supercomputing cluster decentralized configuration method described in any embodiment.

[0015] The embodiment of the present invention has the following technical effects:

[0016] By determining each aggregation switch, each access switch under each aggregation switch, and each network node under each access switch according to the real-time network topology of the supercomputing cluster, when it is detected that the configuration file of the master node in each network node is updated, for each aggregation switch, according to the node status information of each network node connected to the aggregation switch via the access switch, determine the aggregation node corresponding to the aggregation switch, and update the aggregation node based on the configuration file of the master node, so as to determine one aggregation node under each aggregation switch in a regional manner, which is convenient for subsequent updating other network access nodes under the corresponding aggregation switch based on the aggregation node. Furthermore, for each access switch, when none of the network nodes connected to the access switch are updated, according to the node status information of each network node under the access switch, determine the access node corresponding to the access switch, and update the access node based on the configuration file of the aggregation node under the access switch corresponding to the access node, so as to more refinedly determine one access node under each access switch in a regional manner, so as to facilitate subsequent configuration update of other network nodes under the corresponding access switch using the access node. For each access node, based on the configuration file of the access node, update each network node under the access switch corresponding to the access node, without relying on a single network node for configuration update, achieving the effect of decentralized configuration, improving the availability and automation ability, greatly reducing the pressure on the core switch, and reducing cross-regional communication. Description of the Drawings

[0017] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following will briefly introduce the drawings required for the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0018] Figure 1 is a flowchart of a method for decentralized configuration of a supercomputing cluster provided by an embodiment of the present invention;

[0019] Figure 2 is a schematic diagram of the real-time network topology of a supercomputing cluster provided by an embodiment of the present invention;

[0020] Figure 3 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. Specific Embodiments

[0021] To make the objectives, technical solutions and advantages of the present invention clearer, the following will clearly and completely describe the technical solutions of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of protection of the present invention.

[0022] The method for decentralized configuration of a supercomputing cluster provided by an embodiment of the present invention is mainly applicable to the situation of configuring and updating each network node in the supercomputing cluster. The method for decentralized configuration of a supercomputing cluster provided by an embodiment of the present invention can be executed by an electronic device that manages the supercomputing cluster.

[0023] Embodiment 1

[0024] Figure 1 is a flowchart of a method for decentralized configuration of a supercomputing cluster provided by an embodiment of the present invention. Refer to Figure 1 and the method for decentralized configuration of the supercomputing cluster specifically includes:

[0025] S110. Determine each aggregation switch, each access switch under each aggregation switch, and each network node under each access switch according to the real-time network topology of the supercomputing cluster.

[0026] Among them, a supercomputing cluster is a computer system integrating a large number of high-performance computing nodes, a high-speed interconnection network, and a high-performance storage system, which is used to solve problems requiring extreme computing power in fields such as science, engineering, and business. These clusters are usually composed of hundreds, thousands, or even tens of thousands of servers, and they work together through parallel computing and distributed processing technologies to achieve efficient solutions to complex problems. The real-time network topology is the physical or logical layout of the current network structure. The aggregation switch is located in the middle layer of the network architecture and is directly connected to the access switches. The access switches are located at the bottom layer of the network architecture and are directly connected to the service nodes (network nodes) in the supercomputing cluster. The network nodes, which are also service nodes, refer to entities that can independently provide a certain service. The schematic diagram of the real-time network topology of the supercomputing cluster is as Figure 2 shown. Figure 2 The core switch in is located at the top layer of the network architecture and is directly connected to the aggregation switch. The network nodes include a main node and multiple target nodes.

[0027] Specifically, identify and obtain the real-time network topology of the supercomputing cluster. According to the network architecture of the real-time network topology, the switch located at the top layer of the network architecture is used as the core switch, the switch located in the middle layer of the network architecture is used as the aggregation switch, and the switch located at the bottom layer of the network architecture is used as the access switch. Furthermore, the access switches directly connected to each aggregation switch and the network nodes connected to each access switch can be determined.

[0028] S120. When it is detected that the configuration file of the main node in each network node is updated, for each aggregation switch, according to the node status information of the network nodes connected to the aggregation switch via the access switches, determine the aggregation node corresponding to the aggregation switch, and update the aggregation node based on the configuration file of the main node.

[0029] Among them, the main node is used to transfer files to each target node, send instructions, etc. The main node and each target node form each network node. The node status information is information for evaluating the usage status and network status of the network nodes. The aggregation node is one of the network nodes directly connected to each access switch under the aggregation switch, and is used as the network node for sending the configuration file to each network node under the corresponding aggregation switch. The configuration file is a document used to store and manage the settings and parameters of software, systems, or applications.

[0030] Specifically, the master node in each network node is configured to detect the configuration file. When the configuration file changes, it can be automatically detected and pushed to each other network node in the supercomputing cluster. The configuration file management is combined with version control. In the case where the configuration file of the master node in each network node is updated, it indicates that the configuration file needs to be updated. The configuration of each network node except the master node is updated. In order to reduce the network communication pressure of the core switch, regional division is adopted to update the configuration file in different regions. For each aggregation switch, the node status information of each network node connected to the aggregation switch via the access switch is obtained, that is, the node status information of each network node directly connected to each access switch directly connected to the aggregation switch. The node status information of these network nodes is analyzed, and a network node with good node status and good network status is selected as the aggregation node corresponding to the aggregation switch, and the aggregation node is controlled to request the configuration file update from the master node. After receiving the new configuration file, the aggregation node updates the node configuration through the new configuration file.

[0031] It can be understood that the master node can directly serve as the aggregation node under the corresponding aggregation switch, and the aggregation switch does not need to determine the aggregation node again.

[0032] Based on the above example, the following method can be used to determine the aggregation node corresponding to the aggregation switch according to the node status information of each network node connected to the aggregation switch via the access switch:

[0033] Obtain the node status information of each network node connected to the aggregation switch via the access switch;

[0034] For each network node connected to the aggregation switch via the access switch, determine the comprehensive evaluation value of the network node according to each node status information of the network node and the preset weight corresponding to each node status information;

[0035] Determine the aggregation node corresponding to the aggregation switch according to the comprehensive evaluation values of each network node connected to the aggregation switch via the access switch.

[0036] Among them, the node status information is used to describe the self-status and network status of the network node, including the central processor utilization rate, the remaining memory rate, the bandwidth occupancy rate, the packet loss rate, and the network retransmission rate. The preset weight is the weight preset in advance for different types of node status information, which can be set according to actual usage requirements. The comprehensive evaluation value is the evaluation value obtained by weighted summation of each preset weight and the corresponding node status information.

[0037] Among them, the calculation methods of the central processor utilization rate, the remaining memory rate, the bandwidth occupancy rate, the packet loss rate, and the network retransmission rate are as follows:

[0038]

[0039]

[0040]

[0041]

[0042]

[0043] Among them, is the CPU utilization rate at time t, is the remaining memory rate at time t, is the bandwidth occupancy rate at time t, is the packet loss rate at time t, is the network retransmission rate at time t, C usage is the CPU idle amount, M free is the memory idle amount, B util is the bandwidth idle amount, L loss is the number of successfully received packets, R retrans is the number of successful connections.

[0044] Specifically, obtain the node basic information of each network node connected via the access switch and the aggregation switch, including the CPU idle amount, memory idle amount, bandwidth idle amount, number of successfully received packets, and number of successful connections, etc., and calculate the node status information of each node through the above formula. For each network node connected via the access switch and the aggregation switch, perform a weighted sum of the node status information of the network node with the preset weights corresponding to the node status information, and calculate the comprehensive evaluation value of the network node. By comparing the obtained comprehensive evaluation values, determine the aggregation node corresponding to the aggregation switch. For example, use a network node with the highest comprehensive evaluation value as the aggregation node corresponding to the aggregation switch, or select one from the top preset number of network nodes as the aggregation node corresponding to the aggregation switch, etc.

[0045] Exemplarily, on the basis of the above example, the comprehensive evaluation value is determined by the following formula:

[0046]

[0047] Among them, is the CPU utilization rate at time t, is the remaining memory rate at time t, is the bandwidth occupancy rate at time t, is the packet loss rate at time t, is the network retransmission rate at time t, ω Cis the preset weight corresponding to the CPU utilization rate, ω M is the preset weight corresponding to the remaining memory rate, ω B is the preset weight corresponding to the bandwidth occupancy rate, ω L is the preset weight corresponding to the bandwidth occupancy rate, ω R is the preset weight corresponding to the network retransmission rate. Optionally, ω C = 0.3, ω M = 0.2, ω B = 0.25, ω L = 0.15, ω R = 0.1. Of course, each preset weight can be determined according to actual needs and analysis.

[0048] Based on the above example, the aggregation node corresponding to the aggregation switch can be determined according to the comprehensive evaluation values of each network node connected to the aggregation switch via the access switch in the following manner:

[0049] Determine the current loop count, and use each network node whose comprehensive evaluation value is greater than or equal to the first threshold as a candidate node;

[0050] Determine the aggregation node corresponding to the aggregation switch according to the candidate nodes and the current loop count.

[0051] Among them, the current loop count is the loop count for determining the aggregation node corresponding to this aggregation switch, that is, in the current cycle of updating the configuration file, the determination of the aggregation node corresponding to the aggregation switch fails for each previous time before the current loop count. The first threshold is a preset value used to determine that an aggregation node can be selected. The candidate nodes are each network node whose current comprehensive evaluation value is greater than or equal to the first threshold.

[0052] Specifically, at the beginning of the current cycle of updating the configuration file, initialize the current loop count, that is, set the current loop count to one. Furthermore, judge the magnitude relationship between the comprehensive evaluation values of each network node corresponding to this aggregation switch and the first threshold. If there is at least one network node whose comprehensive evaluation value is greater than or equal to the first threshold, use it as a candidate node, and select one from the candidate nodes as the aggregation node corresponding to this aggregation switch. If the comprehensive evaluation value of any network node corresponding to this aggregation switch is less than the first threshold, return to re-obtain the node status information of each network node connected to this aggregation switch to re-calculate and judge until the aggregation node corresponding to this aggregation switch is determined, or the current loop count exceeds the limit.

[0053] Based on the above example, the aggregation node corresponding to the aggregation switch can be determined according to the candidate nodes and the current loop count in the following manner:

[0054] In response to the candidate nodes not being empty, randomly determine one of the candidate nodes as the aggregation node corresponding to the aggregation switch;

[0055] In response to the candidate nodes being empty, and when the current loop count is less than the preset count, return to execute the step of obtaining the node status information of each network node connected to the aggregation switch via the access switch;

[0056] In response to the candidate nodes being empty, and when the current loop count is equal to the preset count, use each network node with a comprehensive evaluation value greater than or equal to the second threshold as the candidate nodes, and randomly determine one of the candidate nodes as the aggregation node corresponding to the aggregation switch.

[0057] Among them, the preset count is the maximum loop count preset for determining the aggregation node using the first threshold. The second threshold is a value preset for determining that an aggregation node can be selected in the case where the aggregation node cannot be determined using the first threshold, and the second threshold is less than the first threshold. For example, the first threshold is 0.7 and the second threshold is 0.4. The specific values can be set according to requirements and are not limited here.

[0058] Specifically, if the candidate nodes are not empty, one can be randomly selected from the candidate nodes as the aggregation node corresponding to the aggregation switch, for example, by using a random number or other means to select one as the aggregation node corresponding to the aggregation switch. If the candidate nodes are empty, that is, the comprehensive evaluation values of each network node corresponding to the aggregation switch are all less than the first threshold, then determine whether the current loop count reaches the preset count. If the current loop count is less than the preset count, loop to use the first threshold to determine the aggregation node, that is, return to execute the step of obtaining the node status information of each network node connected to the aggregation switch via the access switch. If the current loop count is equal to the preset count, it means that the first threshold has been used for a sufficient number of times to make a judgment and the aggregation node corresponding to the aggregation switch cannot be determined. Therefore, use the second threshold instead of the first threshold for judgment, that is, use each network node with a comprehensive evaluation value greater than or equal to the second threshold as the candidate nodes, and randomly determine one of the candidate nodes as the aggregation node corresponding to the aggregation switch.

[0059] Based on the above example, the node status information of each network node connected to the aggregation switch via the access switch can be obtained in the following way:

[0060] Determine the time period to be processed according to the current time and the preset time interval;

[0061] For each information type of the node status information, obtain the time series corresponding to the information type within the time period to be processed, and determine the node status information corresponding to the information type according to the time series.

[0062] Among them, the information type is various types in the node status information, such as the central processing unit utilization rate, the remaining memory rate, the bandwidth occupancy rate, the packet loss rate, and the network retransmission rate, etc. The preset time interval is the size of the time window set to avoid instantaneous fluctuations in the measurement values. The period to be processed is the period corresponding to the preset time interval before the current moment. The time series is a series composed of multiple values of the information types of various node status information within the period to be processed.

[0063] Specifically, take the period within the preset time interval before the current moment as the period to be processed. For each information type of the node status information, obtain the time series corresponding to this information type within the period to be processed, and take the mean value of this time series as the node status information corresponding to this information type. Accordingly, the node status information of various information types can be determined.

[0064] Exemplarily, the node status information corresponding to a certain information type at the current moment is determined by the following formula:

[0065]

[0066] Among them, t is the current moment, T is the preset time interval, S(τ) is the time series, is the node status information corresponding to a certain information type at the current moment.

[0067] S130. For each access switch, in the case where all the network nodes connected to the access switch have not been updated, determine the access node corresponding to the access switch according to the node status information of each network node under the access switch, and update the access node based on the configuration file of the aggregation node under the aggregation switch corresponding to the access node.

[0068] Among them, the access node is a network node among the network nodes directly connected to the access switch that is used to send the configuration file to each network node under the access switch.

[0069] Specifically, for each access switch, in the case where all the network nodes connected to the access switch have not been updated, that is, in the case where there is no autonomous node or aggregation node under the access switch, it means that an access node needs to be selected under this access switch. That is, obtain the node status information of each network node connected to the access switch, analyze the node status information of these network nodes, select a network node with good node status and good network status as the access node corresponding to this access switch, and control the aggregation node corresponding to the access node belonging to the same aggregation switch to request configuration file update. After receiving the new configuration file, the access node updates the node configuration through the new configuration file.

[0070] It can be understood that the steps for determining the access node corresponding to the access switch are similar to those for determining the aggregation node corresponding to the aggregation switch, and will not be elaborated here.

[0071] Based on the above example, after updating the aggregation node based on the configuration file of the master node, there may still be a situation where a master node or an aggregation node exists under the access switch. Specifically, the access node corresponding to the access switch in this case can be determined by the following method:

[0072] For each access switch, when there is a master node or an aggregation node among the network nodes connected to the access switch, the master node or the aggregation node is determined as the access node corresponding to the access switch.

[0073] Specifically, for each access switch, when there is a master node or an aggregation node among the network nodes connected to the access switch, it means that there is already a network node with the latest configuration under the access switch, and there is no need to re-determine and update a network node. Therefore, the master node or the aggregation node is directly determined as the access node corresponding to the access switch for subsequent configuration update of the network nodes under the access switch.

[0074] S140. For each access node, based on the configuration file of the access node, update the network nodes under the access switch corresponding to the access node.

[0075] Specifically, for each access node, the unconfigured and updated network nodes under the access switch corresponding to the access node can obtain a new configuration file from the access node and use the new configuration file for network node configuration update. Accordingly, the independent configuration of the network nodes under each access switch can be completed respectively, reducing the pressure on each aggregation switch and the core switch.

[0076] Based on the above example, the following method can be used to update the network nodes under the access switch corresponding to each access node based on the configuration file of the access node to improve the configuration efficiency:

[0077] For each access node, regard the access switch corresponding to the access node as the target switch;

[0078] For the network nodes other than the access node under the target switch, obtain the configuration file from any access node under the target switch, update the network node based on the configuration file, and regard the updated network node as a new access node.

[0079] Among them, the target switch is an access switch to which the access node belongs, that is, an access switch directly connected.

[0080] Specifically, for each access node, the access switch corresponding to the access node is used as the target switch. For each network node other than the access node under the target switch, a configuration file request can be sent from a randomly selected access node under the target switch to obtain the configuration file, and the obtained new configuration file is used to update the network node, and the updated network node is used as a new access node. It can be understood that the new access node can also provide configuration updates for each un-updated network node under the target switch, that is, it can be converted from the party receiving the configuration file to the party sending the configuration file, reducing the pressure on the original access node.

[0081] Based on the above example, when any network node updates the configuration file, the node status table of the network node can also be updated to inform other network nodes. Specifically, it can be:

[0082] For each network node, when the network node completes the configuration based on the configuration file, the configuration status and version information corresponding to the network node in the node status table are updated, and the updated node status table is broadcast to each other network node.

[0083] Among them, the node status table is used for the configuration file identifier of each network node, the version identifier of the system / software corresponding to the configuration file, the directly connected access switch, the IP address (Internet Protocol), the configuration status, etc. Other network nodes are network nodes in the supercomputing cluster except its own node. The version information can include the version of the configuration file, that is, the configuration file identifier, and the version identifier of the system / software corresponding to the configuration file.

[0084] Specifically, for each network node, when the network node updates the configuration file and completes the configuration of the network node based on the configuration file, it indicates that the network node has been updated and needs to be broadcast to each other network node. Therefore, the configuration status and version information corresponding to the network node in the node status table need to be updated, and the updated node status table is broadcast to each other network node.

[0085] It can be understood that after each aggregation node updates the configuration, the network nodes belonging to the same aggregation switch can be notified that there is a configuration operation being executed. After subsequent network nodes are updated with the configuration, the configuration status of the corresponding configuration operation is marked as completed and ready.

[0086] Exemplarily, the node status table can be:

[0087] ID: Configuration operation ID (configuration file identifier)

[0088] Version: Version corresponding to the configuration operation ID (version identifier of the system / software corresponding to the configuration file)

[0089] Access Group (access network):

[0090] 1 (network node identifier in the access network):

[0091] IP: 00.00.00.00 (IP address)

[0092] Status: Ready | Not Ready (configuration status);

[0093] Among them, the access network is a regional network composed of an access switch and each network node connected to the access switch.

[0094] The above method can achieve decentralized configuration, avoid single-point failures, and moreover, support distributed deployment, with high availability, that is, to ensure that even when some network nodes are down, other network nodes can still continue to synchronize and process configurations. Moreover, the above method has an efficient execution mode and a security mechanism. Whenever the configuration file changes, it can automatically detect it and push update messages to other network nodes in the supercomputing cluster, combining configuration file management with version control, and having the ability of automatic fault detection and recovery. When a network node is down or loses contact, other network nodes in the supercomputing cluster can still automatically take over the tasks. The above decentralized configuration method by region greatly reduces the pressure on the core switch and also greatly reduces cross-regional communication.

[0095] The present invention has the following technical effects: By determining each aggregation switch, each access switch under each aggregation switch, and each network node under each access switch according to the real-time network topology of the supercomputing cluster, in the case where the configuration file of the master node in each network node is detected to be updated, for each aggregation switch, according to the node status information of each network node connected to the aggregation switch via the access switch, determine the aggregation node corresponding to the aggregation switch, and update the aggregation node based on the configuration file of the master node, so as to determine one aggregation node under each aggregation switch in a regionalized manner, which is convenient for subsequently updating other network access nodes under the corresponding aggregation switch based on the aggregation node. Furthermore, for each access switch, in the case where none of the network nodes connected to the access switch are updated, according to the node status information of each network node under the access switch, determine the access node corresponding to the access switch, and update the access node based on the configuration file of the aggregation node under the aggregation switch corresponding to the access node, so as to more finely determine one access node under each access switch in a regionalized manner, which is convenient for subsequently using the access node to perform configuration updates on other network nodes under the corresponding access switch. For each access node, based on the configuration file of the access node, update each network node under the access switch corresponding to the access node, without relying on a single network node for configuration updates, achieving the effect of decentralized configuration, improving the availability and automation capabilities, greatly reducing the pressure on the core switch, and reducing cross-regional communication.

[0096] Embodiment 2

[0097] Figure 3 It is a schematic structural diagram of an electronic device provided by an embodiment of the present invention. As Figure 3 shown, the electronic device 300 includes one or more processors 301 and a memory 302.

[0098] The processor 301 may be a central processing unit (CPU) or other forms of processing units with data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 300 to perform desired functions.

[0099] The memory 302 may include one or more computer program products, and the computer program products may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory, etc. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage media, and the processor 301 may run the program instructions to implement the supercomputing cluster decentralized configuration method of any embodiment of the present invention described above and / or other desired functions. Various contents such as initial external parameters, thresholds, etc. may also be stored in the computer-readable storage media.

[0100] In one example, the electronic device 300 may further include: an input device 303 and an output device 304, and these components are interconnected through a bus system and / or other forms of connection mechanisms (not shown). The input device 303 may include, for example, a keyboard, a mouse, etc. The output device 304 may output various information to the outside, including warning prompt information, braking force, etc. The output device 304 may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.

[0101] Of course, for simplicity, Figure 3 only some of the components related to the present invention in the electronic device 300 are shown, and components such as buses, input / output interfaces, etc. are omitted. In addition, according to specific application scenarios, the electronic device 300 may further include any other appropriate components.

[0102] Embodiment III

[0103] In addition to the above methods and devices, an embodiment of the present invention may also be a computer program product, which includes computer program instructions, and when the computer program instructions are run by a processor, the processor is caused to execute the steps of the supercomputing cluster decentralized configuration method provided by any embodiment of the present invention.

[0104] The computer program product may be written in any combination of one or more programming languages for programming code to perform the operations of the embodiments of the present invention. The programming languages include object-oriented programming languages, such as Java, C++, etc., and also include conventional procedural programming languages, such as the "C" language or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, executed as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0105] In addition, an embodiment of the present invention may also be a computer-readable storage medium storing computer program instructions, which, when run by a processor, cause the processor to execute the steps of the supercomputing cluster decentralized configuration method provided by any embodiment of the present invention.

[0106] The computer-readable storage medium may adopt any combination of one or more readable media. The readable media may be a readable signal medium or a readable storage medium. The readable storage medium may include, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the readable storage medium (a non-exhaustive list) include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0107] It should be noted that the terms used in the present invention are only for describing specific embodiments and do not limit the scope of the present application. As shown in the specification of the present invention, unless the context clearly indicates an exception, words such as "a", "an", "one", and / or "the" do not specifically refer to the singular and may also include the plural. The term "comprising", "including", or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, or device including a series of elements not only includes those elements but also includes other elements not explicitly listed, or further includes elements inherent to such a process, method, or device. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of additional identical elements in the process, method, or device including the said element.

[0108] It should also be noted that the orientation or positional relationship indicated by terms such as "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus cannot be construed as a limitation on the present invention. Unless otherwise clearly specified and defined, terms such as "installed", "connected", "coupled" should be understood in a broad sense. For example, it may be a fixed connection, a detachable connection, or an integral connection; it may be a mechanical connection or an electrical connection; it may be directly connected or indirectly connected through an intermediate medium, and it may be the internal communication of two elements. For those of ordinary skill in the art, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0109] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some or all of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the technical solutions of the embodiments of the present invention.

Claims

1. A method for decentralized configuration of a supercomputing cluster, characterized in that: include: According to the real-time network topology of the supercomputing cluster, determine each aggregation switch, each access switch under each aggregation switch, and each network node under each access switch; When it is detected that the configuration file of the master node in each network node is updated, for each aggregation switch, according to the node status information of each network node connected to the aggregation switch via the access switch, the aggregation node corresponding to the aggregation switch is determined, and the aggregation node is updated based on the configuration file of the master node; For each access switch, if all network nodes connected to the access switch are not updated, determine the access node corresponding to the access switch according to the node status information of each network node under the access switch, and update the access node based on the configuration file of the aggregation node under the aggregation switch corresponding to the access node; For each access node, each network node under the access switch corresponding to the access node is updated based on the configuration file of the access node.

2. The method according to claim 1, characterized in that The step of determining the aggregation node corresponding to the aggregation switch according to the node status information of each network node connected to the aggregation switch via the access switch includes: Obtaining node status information of each network node connected to the aggregation switch via the access switch; wherein the node status information includes central processing unit utilization, memory remaining rate, bandwidth occupancy rate, packet loss rate and network retransmission rate; For each network node connected to the aggregation switch via an access switch, determine a comprehensive evaluation value of the network node according to each node status information of the network node and a preset weight corresponding to each node status information; According to the comprehensive evaluation value of each network node connected to the aggregation switch via the access switch, an aggregation node corresponding to the aggregation switch is determined.

3. The method according to claim 2, characterized in that The step of determining the aggregation node corresponding to the aggregation switch according to the comprehensive evaluation value of each network node connected to the aggregation switch via the access switch includes: Determine the current cycle number, and select each network node whose comprehensive evaluation value is greater than or equal to the first threshold as a candidate node; According to the candidate node and the current cycle number, a convergence node corresponding to the convergence switch is determined.

4. The method according to claim 3, characterized in that The step of determining the aggregation node corresponding to the aggregation switch according to the candidate node and the current cycle number includes: In response to the candidate nodes not being empty, randomly determining a convergence node from the candidate nodes as the convergence node corresponding to the convergence switch; In response to the candidate node being empty, when the current number of cycles is less than a preset number, returning to the step of acquiring node status information of each network node connected to the aggregation switch via the access switch; In response to the candidate nodes being empty, when the current number of cycles is equal to the preset number of times, each network node whose comprehensive evaluation value is greater than or equal to the second threshold is used as a candidate node, and a aggregation node corresponding to the aggregation switch is randomly determined from the candidate nodes.

5. The method according to claim 2, characterized in that: The acquiring of node status information of each network node connected to the aggregation switch via the access switch includes: Determine the time period to be processed according to the current time and the preset time interval; For each information type of the node status information, a time sequence corresponding to the information type in the to-be-processed time period is acquired, and the node status information corresponding to the information type is determined according to the time sequence.

6. The method according to claim 1, characterized in that The updating, for each access node, of each network node under the access switch corresponding to the access node based on the configuration file of the access node includes: For each access node, taking the access switch corresponding to the access node as the target switch; For each network node under the target switch except the access node, a configuration file is obtained from any access node under the target switch, and the network node is updated based on the configuration file, and the updated network node is used as a new access node.

7. The method according to claim 1, characterized in that After the sink node is updated based on the configuration file of the master node, the method further includes: For each access switch, if there is a master node or a sink node among the network nodes connected to the access switch, the master node or the sink node is determined as the access node corresponding to the access switch.

8. The method according to claim 1, characterized in that Also includes: For each network node, when the network node completes configuration of the network node based on the configuration file, the configuration status and version information corresponding to the network node in the node status table is updated, and the updated node status table is broadcast to each other network node.

9. An electronic device, characterized in that: The electronic device comprises: Processor and memory; The processor is used to execute the steps of the supercomputing cluster decentralized configuration method as described in any one of claims 1 to 8 by calling the program or instruction stored in the memory.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a program or instruction, which enables a computer to execute the steps of the method for decentralized configuration of a supercomputing cluster as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Node deployment method, server, system and storage medium

    CN113971033A

  • Distributed cluster communication method and system, electronic equipment and readable storage medium

    CN117155929A

  • Method and device for automatically deploying server, server and storage medium

    CN118869469A

  • Increased resource usage efficiency in providing updates to distributed computing devices

    US20230214203A1