Operating system installation system and method, storage medium and program product
By adopting a tree-structured operating system installation system in a multi-data center environment, centralized management of operating system installation is achieved, which solves the problem of low operating system installation efficiency in the existing technology, and improves efficiency by dynamically adjusting the system architecture. Data synchronization efficiency and system stability.
Patent Information
- Application Number
- CN202411446480.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-16
- Publication Date
- 2025-01-21
AI Technical Summary
The existing PXE-based operating system installation methods lack unified centralized management methods in multi-data center environments, resulting in low operating system installation efficiency.
The operating system installation system adopts a tree structure, and forwards the operating system installation request to the target node PXE server step by step through the root node PXE server, and installs the operating system on the non-root node PXE server. At the same time, the non-root node PXE server can determine whether network congestion occurs on the upper-layer node and switch to the backup node to achieve dynamic adjustment of the system architecture.
It achieves centralized management of data center server operating system installation, improves the efficiency of operating system installation, and improves data synchronization efficiency and system stability by dynamically adjusting the system architecture.
Smart Images

Figure CN119336411A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to an operating system installation system, method, storage medium and program product. Background Art
[0002] Preboot Execution Environment (PXE) is a network-based computer startup protocol, mainly used to boot and start computer systems through the network when there is no local storage device or the local storage device is unavailable. The PXE service allows the computer to obtain the operating system image or other startup programs from the server on the network to complete the system startup and installation.
[0003] At present, the existing PXE-based operating system installation method, when it is necessary to install server operating systems in multiple data centers, is generally implemented by setting up PXE servers in each data center. However, according to the existing technology, if it is necessary to perform a reinstallation operation on one or several servers in a specified data center, it is necessary to log in to the PXE server of the specified data center to perform the operation, and there is a lack of unified centralized management means, resulting in low efficiency in operating system installation. Summary of the invention
[0004] The present invention provides an operating system installation system, method, storage medium and program product, which can realize centralized management of operating system installation of a data center server and improve the installation efficiency of the operating system.
[0005] According to one aspect of the present invention, there is provided an operating system installation system, comprising a plurality of pre-boot execution environment (PXE) servers, wherein the operating system installation system is a tree-like structure, and each PXE server corresponds to a node of the tree-like structure;
[0006] The root node PXE server is used to obtain the first target node PXE server corresponding to the operating system installation request when the operating system installation request is detected, and send the operating system installation request to the first target node PXE server in a step-by-step forwarding manner;
[0007] The non-root node PXE server is used to, when receiving an operating system installation request, forward the operating system installation request to the first target node PXE server if it is determined that the current node is not the first target node PXE server, and if it is determined that the current node is the first target node PXE server, install the operating system on a matching data center server according to the operating system installation request.
[0008] Optionally, non-root PXE servers are also used to:
[0009] It is determined whether the associated upper-level node PXE server has network congestion, and when it is determined that the associated upper-level node PXE server has network congestion, switching to a standby node PXE server corresponding to the upper-level node PXE server.
[0010] Optional, non-root node PXE server, specifically used for:
[0011] Get the current network indicator data of the associated upper node PXE server;
[0012] Inputting the current network indicator data into a pre-trained network congestion prediction model, obtaining a network congestion prediction result output by the network congestion prediction model, and judging whether the associated upper node PXE server has network congestion according to the network congestion prediction result;
[0013] Wherein, the network congestion prediction model is established based on a neural network method.
[0014] Optionally, non-root PXE servers are also used to:
[0015] Generate heartbeat information according to the node information and the lower-level node list, and send the heartbeat information to the associated upper-level node PXE server; and
[0016] When the heartbeat information sent by the lower-layer node PXE server is received, if it is detected according to the heartbeat information that the lower-layer node PXE server is updated, the lower-layer node list is updated according to the heartbeat information.
[0017] Optionally, the root node PXE server is also used to:
[0018] According to the configuration editing operation of the user, a configuration update file and a corresponding configuration update type are obtained. If it is determined that the configuration update type is a general configuration update, when a configuration update query request sent by a PXE server of each lower node is detected, the configuration update file is sent to each lower node PXE server;
[0019] The non-root node PXE server is also used to periodically send configuration update query requests to the associated upper-level node PXE server, and when receiving the configuration update file corresponding to the general configuration update sent by the associated upper-level node PXE server, perform configuration update according to the configuration update file, and forward the configuration update file to the associated lower-level node PXE servers.
[0020] Optionally, the root node PXE server is also used to:
[0021] If it is determined that the configuration update type is a special configuration update, obtaining a second target node PXE server corresponding to the configuration update file, and judging whether there is an upper-layer non-root node PXE server associated with the second target node PXE server according to the current system architecture;
[0022] If so, upon detecting a configuration update query request sent by the upper-level non-root node PXE server, the configuration update file is sent to the upper-level non-root node PXE server, so that the configuration update file is forwarded to the second target node PXE server through the upper-level non-root node PXE server, so that the second target node PXE server performs a configuration update according to the configuration update file.
[0023] Optionally, each node PXE server is also used to:
[0024] When an access request sent by a PXE server of another node is detected, it is determined whether the PXE server of another node is included in a preset whitelist, and if so, the access of the PXE server of another node is allowed.
[0025] According to another aspect of the present invention, there is provided an operating system installation method, which is applied to the operating system installation system described in any embodiment of the present invention, comprising:
[0026] When the root node PXE server detects an operating system installation request, it obtains a first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner;
[0027] When a non-root node PXE server receives an operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server; and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request.
[0028] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, wherein the computer program is used to enable a processor to implement the operating system installation method described in any embodiment of the present invention when executed.
[0029] According to another aspect of the present invention, a computer program product is provided, comprising a computer program, wherein when the computer program is executed by a processor, the operating system installation method according to any embodiment of the present invention is implemented.
[0030] The technical solution of the embodiment of the present invention is that when the root node PXE server detects an operating system installation request, it obtains the first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner; when the non-root node PXE server receives the operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server, and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request; by adopting a tree architecture system, a centralized operating system installation service is implemented based on the root node PXE server, centralized management of the operating system installation of the data center server can be implemented, and the installation efficiency of the operating system can be improved.
[0031] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0033] Figure 1 is a structural diagram of an operating system installation system provided according to Embodiment 1 of the present invention;
[0034] Figure 2 is a schematic diagram of the structure of another operating system installation system provided according to the first embodiment of the present invention;
[0035] Figure 3 This is a flowchart of an operating system installation method provided according to Embodiment 2 of the present invention. DETAILED DESCRIPTION
[0036] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0037] It should be noted that the terms "first", "second", "target", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0038] Embodiment 1
[0039] Figure 1 A structural diagram of an operating system installation system is provided for the first embodiment of the present invention. The operating system installation system 10 includes multiple pre-boot execution environment PXE servers. The operating system installation system 10 is a tree-like structure, and each PXE server corresponds to a node of the tree-like structure. In this embodiment, the hierarchy of the tree-like structure can be adaptively adjusted according to the number of data centers or the synchronization performance bottleneck of the PXE server, and a PXE server is deployed in each data center.
[0040] For example, the tree structure may include three levels, the root node PXE server 11 is located at the first level, the non-root node PXE server 12 is located at the second level and the third level, and the non-root node PXE server 12 may include a child node PXE server and a leaf node PXE server. The child node PXE server is located at the second level, the leaf node PXE server is located at the third level, and the node PXE servers at the same level are not connected. The root node PXE server 11 is connected to the leaf node PXE server through the child node PXE server.
[0041] The root node PXE server 11 is used to obtain the first target node PXE server corresponding to the operating system installation request when the operating system installation request is detected, and send the operating system installation request to the first target node PXE server in a step-by-step forwarding manner.
[0042] In this embodiment, if the administrator needs to perform operating system installation on one or several servers in a data center, the administrator can log in to the root node PXE server 11 and send an operating system installation request. The operating system installation request may include information such as a request type identifier, a data center identifier, and a server identifier. The root node PXE server 11 can perform content parsing on the received operating system installation request to obtain the server identifier and the corresponding data center identifier on which the operating system needs to be installed; then, the first target node PXE server, i.e., the PXE server specifically responsible for the operating system installation, can be determined based on the server identifier and data center identifier obtained by parsing, as well as the locally stored system configuration information, such as the correspondence between the data center identifier and the PXE server identifier.
[0043] Furthermore, the root node PXE server 11 can send the operating system installation request to the first target node PXE server in a step-by-step forwarding manner according to the pre-stored Internet Protocol (IP) addresses and system architectures of the various node PXE servers 11. For example, the structure of the operating system installation system 10 can be as follows: Figure 2 As shown, it includes three levels, the L0 PXE server is the root node PXE server 11, if the current first target node PXE server is the L2 PXE server of the data center D, the L0 PXE server first sends the operating system installation request and the identifier of the L2PXE server of the data center D to the L1 PXE server of the data center B, and then forwards the operating system installation request to the L2 PXE server of the data center D according to the received identifier of the L2PXE server of the data center D.
[0044] Optionally, when sending the operating system installation request, the root node PXE server 11 may also send the identifiers of the PXE servers at each node in the forwarding path at the same time, and the identifiers may be arranged in the order of forwarding to achieve level-by-level forwarding. Referring to the previous example, the L0 PXE server may send the operating system installation request, the identifier of the L1 PXE server of data center B, and the identifier of the L2 PXE server of data center D to the L1 PXE server of data center B at the same time.
[0045] The non-root node PXE server 12 is used to, when receiving an operating system installation request, forward the operating system installation request to the first target node PXE server if it is determined that the current node is not the first target node PXE server, and if it is determined that the current node is the first target node PXE server, install the operating system on a matching data center server according to the operating system installation request.
[0046] Specifically, when each non-root node PXE server 12 receives an operating system installation request, it can compare the PXE server identifier of the node with the target node PXE server identifier for consistency to determine whether the node is a target node PXE server; typically, if the identifiers are determined to be consistent, it can be determined that the node is the first target node PXE server, and then the Intelligent Platform Management Interface (IPMI) command can be used to complete the automatic installation of the operating system for the designated data center server.
[0047] Secondly, if it is determined that the identifiers are inconsistent, it can be determined that the current node is not the first target node PXE server, and the operating system installation request can be forwarded to the corresponding non-root node PXE server 12 at the next level according to the locally stored downstream node information.
[0048] The technical solution of the embodiment of the present invention is that when the root node PXE server 11 detects an operating system installation request, it obtains the first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner; when the non-root node PXE server 12 receives the operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server, and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request; by adopting a tree-structured system, a centralized operating system installation service is implemented based on the root node PXE server 11, centralized management of the operating system installation of the data center server can be implemented, and the operating system installation efficiency can be improved.
[0049] Optionally, the non-root node PXE server 12 is further used for:
[0050] It is determined whether the associated upper-level node PXE server has network congestion, and when it is determined that the associated upper-level node PXE server has network congestion, switching to a standby node PXE server corresponding to the upper-level node PXE server.
[0051] In this embodiment, after the operating system installation system 10 is established, if the upper node PXE server is not the root node PXE server 11, the current non-root node PXE server 12 can perform real-time network congestion detection or prediction on the associated upper node PXE server. Once it is detected that the associated upper node PXE server has or will have network congestion, it can automatically switch to the corresponding standby node PXE server to achieve dynamic adjustment of the system architecture.
[0052] The advantage of the above settings is that it can realize dynamic adjustment of the system architecture and improve data synchronization efficiency.
[0053] Optionally, the non-root node PXE server 12 is specifically used to: obtain current network indicator data of the associated upper-level node PXE server;
[0054] Inputting the current network indicator data into a pre-trained network congestion prediction model, obtaining a network congestion prediction result output by the network congestion prediction model, and judging whether the associated upper node PXE server has network congestion according to the network congestion prediction result;
[0055] Wherein, the network congestion prediction model is established based on a neural network method.
[0056] Specifically, when judging network congestion, the current network indicator data can be obtained through the real-time telemetry data of the network device, such as the bandwidth usage of the network interface, network delay, network interface throughput, number of messages sent and received per second, packet loss rate, etc. Then, the network congestion can be judged based on the current network indicator data through the pre-trained network congestion prediction model to obtain the network congestion prediction result. The network congestion prediction result includes whether network congestion will occur or not.
[0057] It should be noted that real-time telemetry data can only determine the current network congestion. In order to predict the network congestion in the future, based on the current network indicator data, the historical network indicator data stored in the monitoring system can also be combined to jointly determine the future network congestion. For example, the network usage in the future can be estimated based on the peaks and troughs of network traffic, statistical data within a period, and histograms.
[0058] In a specific implementation, when making a network congestion judgment, first, collect raw data. Relevant data sources may include network traffic data, network delay, packet loss rate, and network topology information, and extract features from the raw data so that the machine learning algorithm can use them. Common features may include time features, traffic features, delay features, and historical congestion status. Then, network congestion prediction is regarded as a classification problem. The classification model may use logistic regression, support vector machine, neural network, etc., and the model may be trained and optimized based on the extracted features to obtain a network congestion prediction model. Finally, the trained network congestion prediction model may be deployed to each node PXE server to monitor the network traffic of the upper node PXE server in real time and predict future network congestion.
[0059] Optionally, the non-root node PXE server 12 is further used for:
[0060] Generate heartbeat information according to the node information and the lower-level node list, and send the heartbeat information to the associated upper-level node PXE server; and
[0061] When the heartbeat information sent by the lower-layer node PXE server is received, if it is detected according to the heartbeat information that the lower-layer node PXE server is updated, the lower-layer node list is updated according to the heartbeat information.
[0062] In this embodiment, the lower-level node PXE server can periodically send heartbeat information to the upper-level node PXE server. The heartbeat information can include the node information of the current node PXE server, such as the data center identifier, its own server identifier, etc., and the lower-level node information of the current node PXE server, such as the lower-level node list, etc. Figure 2 For example, for the L1 PXE server of data center B, the heartbeat information sent to the L0 PXE server of data center A may include data center B, L1 PXE server, and lower-level node PXE servers (L2 PXE server of data center D and L2 PXE server of data center E). It can be understood that for the lowest-level node PXE server, the heartbeat information may only include the node information.
[0063] Secondly, if it is detected according to the heartbeat information that the lower-level node PXE server is added, reduced or replaced, the local lower-level node list can be updated according to the node information and the lower-level node list in the heartbeat information.
[0064] In this embodiment, each non-leaf node PXE server dynamically maintains a lower-level node list. For example, for the L1 PXE server of data center B, its lower-level node list may be [D L2, E L2], and the lower-level node list may include multiple levels.
[0065] The advantage of the above configuration is that the connection status of each node PXE server can be regularly detected, and the switching or failure of the lower node PXE server can be discovered in time.
[0066] In a specific implementation, after the non-root node PXE server 12 determines that the associated upper-level node PXE server has network congestion and switches to the backup node PXE server corresponding to the upper-level node PXE server, the original upper-level node PXE server needs to delete the non-root node PXE server 12 from the downstream node list, or can delete the non-root node PXE server 12 from the downstream node list after the heartbeat information times out. At the same time, the backup node PXE server needs to add the non-root node PXE server 12 to the local downstream node list.
[0067] Each node PXE server of the operating system installation system 10 can dynamically update the local lower-level node list according to the heartbeat information sent by the lower-level node PXE server to complete the system architecture adjustment.
[0068] For example, Figure 2 For example, the upper layer of data center E is data center B. When it is detected that the L1 PXE server of data center B has network congestion, the L2 PXE server of data center E switches to the L1 PXE server of data center C. At this time, after the heartbeat information of the L1 PXE server of data center B times out, the L2 PXE server of data center E is deleted from the downstream node list, that is, {D L2, E L2} is changed to {D L2}, and the heartbeat information sent to the L0 PXE server of data center A is changed from {B L1, D L2, E L2} to {B L1, D L2}.
[0069] At the same time, the L1 PXE server in data center C can add the L2 PXE server in data center E to its own downstream node list based on the heartbeat information of the L2 PXE server in data center E, changing from {F L2} to {E L2, F L2}, and the heartbeat information sent to the L0 PXE server in data center A changes from {C L1, F L2} to {C L1, E L2, F L2}.
[0070] Optionally, the root node PXE server 11 is further used to: obtain a configuration update file and a corresponding configuration update type according to a configuration editing operation of a user, and if it is determined that the configuration update type is a general configuration update, upon detecting a configuration update query request sent by each lower-layer node PXE server, send the configuration update file to each lower-layer node PXE server;
[0071] The non-root node PXE server 12 is also used to periodically send configuration update query requests to the associated upper-level node PXE server, and upon receiving a configuration update file corresponding to a general configuration update sent by the associated upper-level node PXE server, perform configuration updates according to the configuration update file, and forward the configuration update file to each associated lower-level node PXE server.
[0072] In this embodiment, the root node PXE server 11 is responsible for the maintenance of PXE-related configurations across data centers, and the lower-level node PXE server automatically pulls the relevant configurations of the upper-level node PXE server through the PULL method and updates it to the local PXE server. Among them, the configuration update type can include general configuration updates and special configuration updates, and the configuration update type can be determined according to the type identifier. The general configuration update is applicable to the PXE servers of all data centers, and each non-root node PXE server 12 will synchronize the general configuration update to the local at a regular time level by level.
[0073] Specifically, when the configuration update type is a general configuration update, the lower-level node PXE server periodically sends a configuration update query request to the associated upper-level node PXE server to pull the configuration update file and perform a local configuration update based on the configuration update file. The configuration of the PXE server may include an operating system image file, an IP address of a data center server, etc.
[0074] Optionally, the root node PXE server 11 is further used to: if it is determined that the configuration update type is a special configuration update, obtain a second target node PXE server corresponding to the configuration update file, and determine whether there is an upper-layer non-root node PXE server associated with the second target node PXE server according to the current system architecture;
[0075] If so, upon detecting a configuration update query request sent by the upper-level non-root node PXE server, the configuration update file is sent to the upper-level non-root node PXE server, so that the configuration update file is forwarded to the second target node PXE server through the upper-level non-root node PXE server, so that the second target node PXE server performs a configuration update according to the configuration update file.
[0076] In another case, when the configuration update type is a special configuration update, it is only applicable to the PXE server of a specific data center. For example, this can be achieved by specifying the data center identifier and PXE server identifier to which the configuration file applies, or by fuzzy matching multiple data center identifiers through regular expressions. Only the PXE server of the data center with a matching identifier can pull the configuration update file and update it locally. Alternatively, if the identifier of the current node PXE server does not match, but the identifier of the lower node PXE server matches, the current node PXE server also needs to pull the corresponding configuration update file from the upper node PXE server.
[0077] Specifically, the root node PXE server 11 can parse the configuration update file to obtain the corresponding second target node PXE server, that is, the applicable designated node PXE server; then, it can be determined based on the locally stored system architecture whether the root node PXE server 11 and the second target node PXE server need to pass through other node PXE servers, that is, whether there is an upper-level non-root node PXE server associated with the second target node PXE server. If it is determined that it does not exist, the root node PXE server 11 can directly send the configuration update file to the second target node PXE server based on the IP address of the second target node PXE server. If it is determined that it exists, the configuration update file and the identifier of the second target node PXE server can be first sent to the upper-level non-root node PXE server, and the upper-level non-root node PXE server can further forward the configuration update file to the second target node PXE server.
[0078] When each non-root node PXE server 12 receives the configuration update file, it can determine the consistency between the node identifier and the identifier of the target node PXE server. If they are consistent, the local configuration can be updated according to the configuration update file; if they are inconsistent, the lower-level node PXE server that matches the identifier of the target node PXE server can be found from the downstream node list, and the configuration update file can be sent to the lower-level node PXE server. It can be understood that when there are many levels of node PXE servers, the lower-level node PXE servers can be determined step by step according to the downstream node lists of each level until the target node PXE server is reached.
[0079] Optionally, each node PXE server is further used to: when detecting an access request sent by another node PXE server, determine whether the other node PXE server is included in a preset whitelist, and if so, allow the other node PXE server to access.
[0080] In this embodiment, in order to ensure the security of the public network, the PXE server of each data center pulls the configuration of the upper-level PXE server by PULL, avoiding exposing the IP of the PXE server of each data center directly to the public network, thereby improving the security of the solution. The upper-level node PXE server can only allow access to the specified lower-level node PXE server by whitelisting. For access requests sent by node PXE servers that are not in the preset whitelist, they can be directly discarded.
[0081] Optionally, in order to improve the high availability and processing performance of the service, the PXE server of each node and the PXE service itself can adopt a combination of load balancer, virtual IP and instance multi-active. Typically, Haproxy or Nginx can be used as a load balancer. The load balancer can point the upstream upstream to each PXE instance through configuration and track the availability status of each upstream PXE in real time. Secondly, deploy the signaling keepalive protocol (such as Keepalived, etc.) on each node where the load balancer is located, determine the node where the virtual IP is located through protocol interaction and provide services to the outside world. PXE can be deployed with multiple instances. When one of the PXE instances fails, Nginx can switch to other healthy instances in real time. Moreover, the load balancer is also deployed with multiple instances. When one of the load balancers fails, the signaling keepalive protocol can distribute the virtual IP to other healthy load balancer nodes in real time.
[0082] Embodiment 2
[0083] Figure 3 A flowchart of an operating system installation method is provided for the second embodiment of the present invention. This embodiment is applicable to the case where an operating system is installed or reinstalled on a server in a distributed data center. This method can be applied to the operating system installation system 10 described in the first embodiment of the present invention. Figure 3 As shown, the method includes:
[0084] S210. When the root node PXE server detects an operating system installation request, it obtains a first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner.
[0085] In this embodiment, the tree-structured operating system installation system 10 can realize centralized management of server reinstallation services in distributed data centers. Specifically, all users can perform operating system installation configuration by accessing the root node PXE server 11, and the root node PXE server 11 can automatically forward the operating system installation request to the corresponding target node PXE server according to the user's configuration information.
[0086] S220. When a non-root node PXE server receives an operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server; and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request.
[0087] Specifically, for a non-root node PXE server 12 that is not a target node PXE server, the operating system installation request can be automatically forwarded; and for a non-root node PXE server 12 that is a target node PXE server, the operating system can be remotely installed on a matching data center server in the form of an IPMI command based on the operating system installation request.
[0088] The technical solution of the embodiment of the present invention is that when the root node PXE server 11 detects an operating system installation request, it obtains the first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner; when the non-root node PXE server 12 receives the operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server, and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request; by adopting a tree-structured system, a centralized operating system installation service is implemented based on the root node PXE server 11, centralized management of the operating system installation of the data center server can be implemented, and the operating system installation efficiency can be improved.
[0089] In this embodiment, based on the PULL mechanism of the lower-level node PXE server, the consistency of the PXE server configuration of multiple data centers can be automatically achieved without human intervention, and by introducing PXE configuration classification, the PXE configuration is divided into general configuration and special configuration, while covering the special customized needs and general needs of PXE installation in each data center, thereby improving the flexibility of configuration; moreover, through centralized services, remote reinstallation operations can be performed on any server in any data center without logging in to each data center to perform operations, thereby realizing centralized server installation management; secondly, the lower-level node PXE server automatically switches the upper-level node PXE server according to the network congestion of the upper-level node PXE server, thereby realizing automatic networking of the PXE server.
[0090] Embodiment 3
[0091] In the present embodiment, the operating system installation method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit. In some embodiments, part or all of the computer program may be loaded and / or installed on an electronic device via a read-only memory and / or a communication unit. When the computer program is loaded into a random access memory and executed by a processor, one or more steps of the operating system installation method described above may be performed. Alternatively, in other embodiments, the processor may be configured to perform the operating system installation method in any other appropriate manner (e.g., by means of firmware).
[0092] The processor may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of processors include, but are not limited to, central processing units, graphics processing units, various special artificial intelligence computing chips, various processors running machine learning model algorithms, digital signal processors, and any appropriate processors, controllers, microcontrollers, etc. The processor executes the various methods and processes described above, such as an operating system installation method.
[0093] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays, application specific integrated circuits, application specific standard products, systems on a chip, load programmable logic devices, computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0094] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0095] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device, or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory, an optical fiber, a portable compact disk read-only memory, an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0096] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a cathode ray tube or a liquid crystal display) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0097] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local area networks, wide area networks, blockchain networks, and the Internet.
[0098] A computing system may include clients and servers. Clients and servers are generally remote from each other and typically interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship to each other. The server may be a cloud server.
[0099] This embodiment may also include a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the operating system installation method provided by any embodiment of the present invention.
[0100] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0101] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. An operating system installation system, characterized in that: It includes multiple pre-boot execution environment (PXE) servers, the operating system installation system is a tree structure, and each PXE server corresponds to a node of the tree structure; The root node PXE server is used to obtain the first target node PXE server corresponding to the operating system installation request when the operating system installation request is detected, and send the operating system installation request to the first target node PXE server in a step-by-step forwarding manner; The non-root node PXE server is used to, when receiving an operating system installation request, forward the operating system installation request to the first target node PXE server if it is determined that the current node is not the first target node PXE server, and if it is determined that the current node is the first target node PXE server, install the operating system on a matching data center server according to the operating system installation request.
2. The operating system installation system according to claim 1, characterized in that: Non-root PXE server, also used for: It is determined whether the associated upper-level node PXE server has network congestion, and when it is determined that the associated upper-level node PXE server has network congestion, switching to a standby node PXE server corresponding to the upper-level node PXE server.
3. The operating system installation system according to claim 2, characterized in that: Non-root node PXE server, specifically used for: Get the current network indicator data of the associated upper node PXE server; Inputting the current network indicator data into a pre-trained network congestion prediction model, obtaining a network congestion prediction result output by the network congestion prediction model, and judging whether the associated upper node PXE server has network congestion according to the network congestion prediction result; Wherein, the network congestion prediction model is established based on a neural network method.
4. The operating system installation system according to claim 1, characterized in that: Non-root PXE server, also used for: Generate heartbeat information according to the node information and the lower node list, and send the heartbeat information to the associated upper node PXE server; as well as When the heartbeat information sent by the lower-layer node PXE server is received, if it is detected according to the heartbeat information that the lower-layer node PXE server is updated, the lower-layer node list is updated according to the heartbeat information.
5. The operating system installation system according to claim 1, characterized in that: The root node PXE server is also used to: According to the configuration editing operation of the user, a configuration update file and a corresponding configuration update type are obtained. If it is determined that the configuration update type is a general configuration update, when a configuration update query request sent by a PXE server of each lower node is detected, the configuration update file is sent to each lower node PXE server; The non-root node PXE server is also used to periodically send configuration update query requests to the associated upper-level node PXE server, and when receiving the configuration update file corresponding to the general configuration update sent by the associated upper-level node PXE server, perform configuration update according to the configuration update file, and forward the configuration update file to the associated lower-level node PXE servers.
6. The operating system installation system according to claim 5, characterized in that: The root node PXE server is also used to: If it is determined that the configuration update type is a special configuration update, obtaining a second target node PXE server corresponding to the configuration update file, and judging whether there is an upper-layer non-root node PXE server associated with the second target node PXE server according to the current system architecture; If so, upon detecting a configuration update query request sent by the upper-level non-root node PXE server, the configuration update file is sent to the upper-level non-root node PXE server, so that the configuration update file is forwarded to the second target node PXE server through the upper-level non-root node PXE server, so that the second target node PXE server performs a configuration update according to the configuration update file.
7. The operating system installation system according to claim 1, characterized in that: The PXE server on each node is also used for: When an access request sent by a PXE server of another node is detected, it is determined whether the PXE server of another node is included in a preset whitelist, and if so, the access of the PXE server of another node is allowed.
8. A method for installing an operating system, characterized in that: An operating system installation system applied to any one of claims 1 to 7, comprising: When the root node PXE server detects an operating system installation request, it obtains a first target node PXE server corresponding to the operating system installation request, and sends the operating system installation request to the first target node PXE server in a step-by-step forwarding manner; When a non-root node PXE server receives an operating system installation request, if it is determined that the current node is not the first target node PXE server, the operating system installation request is forwarded to the first target node PXE server; and if it is determined that the current node is the first target node PXE server, the operating system is installed on the matching data center server according to the operating system installation request.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is used to enable a processor to implement the operating system installation method according to claim 8 when executed.
10. A computer program product, characterized in that The invention comprises a computer program, which implements the operating system installation method according to claim 8 when being executed by a processor.