Containerized PXE service deployment systems, methods, apparatuses, and storage media
By containerizing the PXE service deployment system and dynamically scheduling the service containers of the PXE server, the IO bottleneck and bandwidth limitation in large-scale installation tasks are resolved, the management complexity and resource consumption of the distributed PXE server are reduced, and efficient operating system installation is achieved.
Patent Information
- Application Number
- CN202311789319.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-22
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2043-12-22
AI Technical Summary
Existing PXE server deployment methods suffer from insufficient IO performance and network bandwidth issues when performing large-scale installation tasks, leading to unstable execution processes. Furthermore, distributed deployments are complex and consume excessive resources.
The containerized PXE service deployment system includes a control terminal, a PXE server, a PXE service configuration module, and a PXE service scheduling module. It uses containerization technology to achieve distributed deployment of the PXE server and scales up and down based on performance indicators to dynamically schedule the number of service containers.
It solves the IO bottleneck and bandwidth limitation problems under large-scale installation tasks, reduces the management complexity and resource consumption of distributed PXE servers, and realizes simple and fast operating system installation.
Smart Images

Figure CN118827685B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of cloud computing, in particular to a containerized PXE service deployment system, method, device and storage medium. BACKGROUND
[0002] Pre-boot Execution environment (PXE) is also known as pre-execution environment, which provides a mechanism for starting a computer using a network interface. This mechanism allows the computer to start without relying on local data storage devices (such as hard disks) or locally installed operating systems. With the continuous development of PXE technology, several mainstream PXE service deployment methods have been developed, and the core of these methods is to rely on DHCP (Dynamic Host Configuration Protocol), TFTP (Trivial File Transfer Protocol), FTP (File Transfer Protocol), NFS (Network File System) and other services. The existing scheme is a C-S architecture, i.e., a server-client architecture. First, the server starts the DHCP, TFTP and FTP services. After receiving the DHCP modification instruction, the configuration information in the DHCP service configuration file is dynamically modified according to the modification information in the DHCP modification instruction. After receiving the DHCP request message sent by the pre-installed configuration PXE client, the DHCP response message including the configuration information in the current DHCP service configuration file is returned to the PXE client, so that the PXE client downloads the installation and boot configuration file according to the IP address and the address of the installation and boot configuration file in the configuration information, and completes the installation and configuration of its own PXE service through the installation and boot configuration file.
[0003] At present, the mainstream PXE service deployment method includes PXE server single node deployment: using a single node (a physical machine or a virtual machine) as the PXE server to perform operating system pushing on the installed nodes. Using a single node as the PXE server can meet the needs of small-scale and small-batch installation, but when a large number of installation tasks are performed (such as more than 50 machines), the IO performance of the PXE server will be obviously insufficient, and the network bandwidth problem will also be generated, which will affect the execution process of the entire PXE service and even cause a high probability of failure.
[0004] PXE server multi-node distributed deployment: in the case of three-layer network opening, multiple nodes are used as the service end of PXE, and distributed PXE service environment is provided. In a large number of installation tasks, the distributed deployment of the PXE service end has obvious advantages compared with the single-node PXE service end. In the case of three-layer network opening, using multiple nodes as the service end of PXE and providing a distributed PXE environment can better solve the IO and bandwidth problems, but the deployment and management of the PXE service end will bring great complexity, and more resources need to be preoccupied to deploy the PXE service end. SUMMARY
[0005] Embodiments of the present application provide a containerized PXE service deployment system, method, device and storage medium, to solve the technical problems of the existing distributed deployment of the PXE service end, such as complexity of PXE service end deployment and management, and resource occupation.
[0006] In a first aspect, embodiments of the present application provide a containerized PXE service deployment system, comprising:
[0007] A control end is configured to provide an operation page, wherein the operation page is configured to allow a user to define configuration parameters;
[0008] A PXE service end comprises a plurality of service containers;
[0009] A PXE service configuration module is configured to configure the service containers of the PXE service end according to the configuration parameters;
[0010] A PXE service scheduling module is configured to deploy the PXE service end to a corresponding container host, monitor performance indicators of the PXE service end, and scale the PXE service end according to the performance indicators.
[0011] In an embodiment, the service containers comprise a DHCP service container, a TFTP service container and an operating system installation source service container, and the PXE service scheduling module is further configured to:
[0012] Monitor performance indicators of each service container in the PXE service end, wherein the performance indicators comprise IO performance indicators and network throughput;
[0013] If the performance indicators reach a preset upper threshold, a task of increasing the service containers of the PXE service end is issued to scale up the PXE service end;
[0014] If the performance indicators reach a preset lower threshold, a task of reducing the service containers of the PXE service end is issued to release part of the service containers to scale down the PXE service end.
[0015] In an embodiment, the DHCP service container is configured to assign IP addresses and bind MAC addresses; the DHCP service container in the PXE server comprises one, and the TFTP service container and the operating system installation source service container comprise one or more.
[0016] In an embodiment, the control terminal comprises a container platform docking module, and the PXE server, the PXE service configuration module and the PXE service scheduling module are deployed on a container platform.
[0017] The container platform docking module is configured to determine whether the control terminal has docked a PXE service configuration module.
[0018] If the control terminal does not have a docked PXE service configuration module, the container platform docking module is further configured to obtain a node to be installed, install a lightweight container platform, and deploy a PXE service configuration module on the container platform to dock the control terminal.
[0019] In an embodiment, the control terminal further comprises:
[0020] A PXE container image repository comprising PXE container images adapted to various operating system installation source services, configured to provide a PXE container image registration service and provide a container platform docked with the configuration parameters with access to and pulling of required PXE container images.
[0021] An operating system image repository configured to provide operating system images adapted to physical machines and virtual machines respectively.
[0022] In an embodiment, the configuration parameters comprise a DHCP address pool range, a number of nodes to be installed, a host type corresponding to the nodes to be installed and a target operating system, and the host type is a physical machine or a virtual machine; the container platform docking module is further configured to:
[0023] According to the configuration parameters, determine PXE container images and operating system images required by the PXE server; the PXE container images at least comprise DHCP container images and TFTP container images.
[0024] Obtain the PXE container images required by the PXE server from the PXE container image repository, obtain the operating system images required by the PXE server from the operating system image repository, and assign the PXE service configuration module.
[0025] In an embodiment, the control terminal further comprises an operation interface module configured to provide the operation page; after the PXE service scheduling module deploys the PXE server to a corresponding container host, the PXE service scheduling module is further configured to:
[0026] determine whether all the to-be-installed nodes are installed, and if yes, release the service container of the PXE server and feed back the installation result of the to-be-installed nodes to the operation interface module.
[0027] In a second aspect, an embodiment of the present application provides a containerized PXE service deployment method, applied to the containerized PXE service deployment system as described in the first aspect, and the method comprises:
[0028] obtaining user-defined configuration parameters;
[0029] configuring the service container of the PXE server according to the configuration parameters;
[0030] deploying the PXE server to a corresponding container host and monitoring the performance indicators of the PXE server, and performing capacity expansion and contraction of the PXE server according to the performance indicators.
[0031] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory storing a computer program, and further comprising the containerized PXE service deployment system as described in the first aspect, and the processor implements the steps of the containerized PXE service deployment method as described in the second aspect when executing the program.
[0032] In a fourth aspect, an embodiment of the present application provides a non-transitory computer-readable storage medium, storing a computer program, and the computer program implements the steps of the containerized PXE service deployment method as described in the second aspect when executed by a processor.
[0033] In a fifth aspect, an embodiment of the present application provides a computer program product, comprising a computer program, and the computer program implements the steps of the containerized PXE service deployment method as described in the second aspect when executed by a processor.
[0034] The containerized PXE service deployment system, method, device and storage medium provided by the embodiments of the present application are based on a control end, a PXE server, a PXE service configuration module and a PXE service scheduling module, implement containerized distributed deployment of the PXE server, solve the IO bottleneck and bandwidth limitation problems of the PXE server under large quantities and high concurrency, and based on the containerized deployment of the PXE server, implement dynamic scheduling and deployment of the PXE server, can dynamically schedule and deploy the number of PXE servers according to the number of to-be-installed task nodes, and solve the problems of difficult management of distributed deployment of the PXE server and waste of resources. BRIEF DESCRIPTION OF DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description are some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0036] Figure 1 is one of the structural schematic diagrams of the containerized PXE service deployment system provided by the embodiments of the present application;
[0037] Figure 2 is the second structural schematic diagram of the containerized PXE service deployment system provided by the embodiments of the present application;
[0038] Figure 3 is the structural schematic diagram of the containerized PXE service deployment process provided by the embodiments of the present application;
[0039] Figure 4 is the structural schematic diagram of the containerized PXE service deployment process provided by the embodiments of the present application;
[0040] Figure 5 is the structural schematic diagram of the containerized PXE service deployment process provided by the embodiments of the present application;
[0041] Figure 6 is the structural schematic diagram of the electronic device provided by the embodiments of the present application. DETAILED DESCRIPTION
[0042] In order to make the purpose, technical solutions and advantages of the present application clearer, the technical solutions in the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some embodiments of the present application, not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.
[0043] The embodiments of the present application provide a containerized PXE service deployment system based on the problems existing in the distributed deployment of the existing PXE service, which can realize the simple configuration of the PXE service end, dynamically schedule and deploy the PXE service end, solve the IO bottleneck and bandwidth limitation problem of the PXE service end under large-scale concurrent installation, and reduce the complexity of the distributed PXE service end deployment and the resource occupation of the PXE service deployment.
[0044] Specifically, Figure 1 The structural schematic diagram of the containerized PXE service deployment system provided by the embodiments of the present application is shown in FIG. 1. Referring to FIG. 1, Figure 1The containerized PXE service deployment system (hereinafter referred to as the system) provided by the embodiments of the present application can include:
[0045] The control terminal 10 is configured to provide an operation page for a user to define configuration parameters.
[0046] The PXE server 20 includes a plurality of service containers.
[0047] The PXE service configuration module 30 is configured to configure the service containers of the PXE server according to the configuration parameters.
[0048] The PXE service scheduling module 40 is configured to deploy the PXE server to a corresponding container host and monitor the performance indicators of the PXE server and scale the PXE server according to the performance indicators.
[0049] The system includes the control terminal 10, the PXE server 20, the PXE service configuration module 20, and the PXE service scheduling module 40. The control terminal 10 is configured to provide an operation page for a user to define configuration parameters, which are parameters required for configuring the PXE server before deploying the PXE server. The PXE server includes a plurality of service containers, and different service containers are configured to provide different services.
[0050] Preferably, the control terminal 10 sends the configuration parameters defined by the user to the PXE service configuration module 30, and the PXE service configuration module 30 configures the service containers in the PXE server 20 according to the configuration parameters. The PXE service scheduling module 40 deploys the configured PXE server 20 to a corresponding container host, monitors the performance indicators of the PXE server 20, and scales the PXE server 20 according to the performance indicators.
[0051] Preferably, when deploying the PXE server 20, the control terminal 10 provides an overall operation entry, allowing the user to complete the operating system installation of a large number of nodes through simple page operations. After receiving the instruction of the control terminal 10, the PXE service configuration module 30 can perform final configuration on the containers in the PXE server for providing PXE services. Then, the PXE service scheduling module 40 pulls up the distributed PXE server components and automatically adjusts the number of distributed PXE servers 20 according to the order of magnitude of the nodes to be installed for deployment, thereby achieving simple and fast deployment of the PXE server 20, reducing the complexity of the PXE server 20 deployment, and thus reducing the resource occupation of the PXE server 20 deployment.
[0052] Preferably, the service containers in the PXE server 20 include a DHCP service container, at least one TFTP service container, and at least one operating system installation source service container. The PXE service scheduling module 40 is further configured to:
[0053] monitor performance indicators of the service containers in the PXE server; the performance indicators include IO performance indicators and network throughput;
[0054] if the performance indicators reach a preset upper threshold, issue a task of increasing the service containers of the PXE server to expand the PXE server;
[0055] if the performance indicators reach a preset lower threshold, issue a task of reducing the service containers of the PXE server to release part of the service containers and to shrink the PXE server.
[0056] The PXE server 20 is mainly composed of service containers with different functions, including a DHCP service container corresponding to the DHCP service, a TFTP service container corresponding to the TFTP service, and an operating system installation source service container corresponding to the operating system installation source service. Among them, the container providing the DHCP service is mainly used to issue IP addresses and bind MAC addresses, and since its function is simple and the read-write is light, a single container can be run without the need for distributed deployment. The TFTP service container and the operating system installation source service container need to accept the intelligent scheduling of the distributed service containers of the PXE service scheduling module 40 for real-time scheduling, distribute the service containers on different host computers, and maintain a dynamic state of increasing and decreasing in the PXE service process to ensure that the PXE server 20 does not touch the performance bottleneck. Therefore, the DHCP service container of the PXE server 20 includes one, and the TFTP service container and the operating system installation source service container include one or more.
[0057] Preferably, the PXE service scheduling module 40 is provided with a performance threshold of the service container, and the PXE service scheduling module 40 determines whether the performance index of each service container reaches the performance threshold based on the monitoring of the performance index of each service container of the PXE service end 20. The performance index in the PXE service scheduling module 40 includes an upper threshold and a lower threshold, and the performance index of each service container monitored by the PXE service scheduling module 40 includes IO performance and network throughput. Preferably, if the performance index of the service container of the PXE service end 20 reaches the preset upper threshold, the PXE service scheduling module 40 issues a task of increasing the service container of the PXE service end 20 to expand the PXE service end 20; if the performance index of the service container of the PXE service end 20 reaches the preset lower threshold, the PXE service scheduling module 40 issues a task of reducing the service container of the PXE service end 20 to release part of the service container of the PXE service end, and the PXE service end 20 is scaled down.
[0058] Optionally, the service container of the PXE service end 20 includes a DHCP service container, a TFTP service container and an operating system installation source service container, and the operating system installation source service container includes but is not limited to an HTTP service container, all of which run in the form of a single container. Since the function of the DHCP service container is simple and only IP issuing and MAC binding are performed, the DHCP service container always runs in the form of a single container. The TFTP service container and the HTTP service container maintain a large amount of read and write with the to-be-installed node in the entire PXE service process, and the performance index of the service container needs to be monitored by the PXE service scheduling module 40 in real time to dynamically expand and scale the container.
[0059] Preferably, the control end 10 includes a container platform interfacing module, and the PXE service end 20, the PXE service configuration module 30 and the PXE service scheduling module 40 are deployed on the container platform.
[0060] The container platform interfacing module is configured to determine whether the control end 10 has an interfaced PXE service configuration module 30.
[0061] If the control end 10 does not have an interfaced PXE service configuration module 30, the container platform interfacing module is further configured to obtain a to-be-installed node and install a lightweight container platform, and deploy the PXE service configuration module 30 on the container platform to interface the control end 10.
[0062] The PXE server 20, the PXE service configuration module 30 and the PXE service scheduling module 40 are deployed on a container platform. The system includes one or more container platforms, and the PXE server 20, the PXE service configuration module 30 and the PXE service scheduling module 40 are deployed in each container platform, so that the PXE server 20 is distributedly deployed. When the container platform docking module in the control terminal 10 receives the configuration parameters defined by the user in the operation page, the container platform docking module is configured to determine whether the control terminal 10 has a docked PXE service configuration module 30. If the control terminal 10 has a docked PXE service configuration module 30, the subsequent process is continued. If the control terminal 10 does not have a docked PXE service configuration module 30, the container platform docking module is further configured to extract a to-be-installed node and install a lightweight container platform. The PXE service configuration module 30 is deployed on the container platform, and is configured to dock the control terminal 10 to facilitate the delivery of configuration parameters.
[0063] Preferably, the control terminal 10 further includes a PXE container image warehouse and an operating system image warehouse. The PXE container image warehouse includes PXE container images adapted to multiple operating system installation source services, and is configured to provide a PXE container image registration service and provide a container platform docked with the configuration parameters with the required PXE container image. The operating system image warehouse is configured to provide operating system images adapted to physical machines and virtual machines, respectively.
[0064] Preferably, the system provided by the embodiments of the present application can adapt to multiple environments. In the existing environment, if there is a dockable container platform, the control terminal 10 can be directly docked with the container platform. If there is no dockable container platform in the existing environment, or if the network between the container platform and the to-be-installed node is not available, the container platform docking module extracts the to-be-installed node, automatically deploys a lightweight container platform, and automatically completes the docking.
[0065] Specifically, the configuration parameters defined by the user in the operation page include a DHCP address pool range, a number of to-be-installed nodes, a host type corresponding to the to-be-installed nodes and a target operating system. The host type is a physical machine or a virtual machine. The container platform docking module is further configured to:
[0066] According to the configuration parameters, the PXE container image and the operating system image required by the PXE server are determined. The PXE container image at least includes a DHCP container image and a TFTP container image.
[0067] The PXE container image required by the PXE server is obtained from the PXE container image warehouse, the operating system image required by the PXE server is obtained from the operating system image warehouse, and the PXE service configuration module is delivered.
[0068] If the configuration parameters defined by the user on the operation page include a PXE service configuration module 30 that has already been integrated, the container platform integration module determines the PXE container image and operating system container image required by the PXE server 20 based on the user-defined configuration parameters. The PXE container image includes at least a DHCP container image and a TFTP container image. The module pulls the required PXE container image and operating system image from the PXE container image repository and distributes them to the PXE service configuration module 30. The PXE service configuration module 30 configures the service containers in the PXE server 20 based on the PXE container image and operating system container image distributed by the container platform integration module. The PXE service scheduling module 40 then distributes the configured PXE server 20 to each node to be installed.
[0069] Furthermore, the control terminal 10 also includes an operation interface module, which provides an operation page. After deploying the PXE server 20 to the corresponding container host, the PXE service scheduling module 40 is also used for:
[0070] Determine whether all nodes to be installed have been installed. If so, release the service container of the PXE server and report the installation result of the nodes to be installed to the operation interface module.
[0071] The PXE service scheduling module 40 is also used to monitor the installation progress of each node to be installed, determine whether the PXE server 20 of each node to be installed has been fully installed, and if so, release the service container of the PXE server 20, thereby releasing the resources occupied by the PXE server, and feed back the installation result of the node to be installed through the operation interface module.
[0072] Reference Figure 2 The diagram shows another system architecture. In one embodiment, the system provided in this application consists of a control terminal 10, a PXE server 20, a PXE service configuration module 30, and a PXE service scheduling module 40. The operation interface module of the control terminal 10 provides the overall operation entry point, allowing users to complete the operating system installation for a large number of nodes through simple page operations. After receiving instructions from the operation interface module, the PXE service configuration module 30 performs final configuration on the container providing the PXE service. Then, through the PXE service scheduling module 40, it starts the distributed PXE server components and automatically adjusts the number of distributed PXE servers according to the number of nodes to be installed. When all nodes are installed, the PXE server will be automatically released, and a prompt message indicating that all nodes to be installed have been successfully installed will be displayed on the corresponding management platform interface or terminal display area.
[0073] Specifically, the control terminal 10 comprises an operation interface module, a PXE container image warehouse, an operating system image warehouse and a container platform docking module. The operation interface provides an operation page for an operator, and the user only needs to define a small amount of parameters on the operation page to realize the operating system installation of a large number of nodes; after the control terminal 10 confirms the parameters, the PXE service configuration module 30 is automatically scheduled to realize the final configuration of the PXE service container of the PXE service end 20. The PXE container image warehouse provides a PXE container image registration service, which can be freely accessed by the docking container platform and the required container image can be pulled; the PXE container image warehouse of the control terminal 10 has the container image of the PXE service end pre-customized by DHCP, TFTP, FTP, HTTP, NFS, etc., which can adapt to various forms of operating system installation source services. The operating system image warehouse provides pre-made operating systems such as centos and openeuler images, which can be adapted to physical machines and virtual machines respectively. The physical machine image contains various hardware drivers, and the virtual machine image contains virtualization platform compatible installation packages. The container platform docking module provides two docking schemes. In the case that there is a dockable container platform in the existing environment, the container platform can be directly docked through the container platform docking module, and the idle resources of the existing container platform are used to deploy the corresponding PXE service end 20; in the case that there is no dockable container platform in the existing environment, or the network between the container platform and the node to be installed is not available, the container platform docking module can also select the node to be installed, automatically deploy a lightweight container platform, and automatically dock to the control terminal 10.
[0074] Further, the PXE service end 20 is composed of service containers with different functions, including a DHCP service container corresponding to the DHCP service, a TFTP service container corresponding to the TFTP service, and an operating system installation source service container corresponding to the operating system installation source service. Among them, the service container providing the DHCP service only needs a single container to run without distributed deployment because of its simple function and light read-write. The TFTP service container and the operating system installation source service container need to be scheduled in real time by the PXE service scheduling module 40 to distribute the service containers on different host machines. In the PXE service process, the dynamic increase and decrease state is maintained to realize automatic scaling to ensure that the performance of the PXE service end 20 will not reach the bottleneck.
[0075] Further, the PXE service configuration module 30 is used to collect the configuration parameters issued by the control terminal 10, and to customize the configuration of the service containers required by the PXE service end 20, so as to ensure that the service containers in the PXE service end 20 can normally provide services after being pulled up.
[0076] Further, the PXE service scheduling module 40 is responsible for distributing the PXE service end 20 to different container host machines, and monitoring the IO pressure and bandwidth bottleneck of the PXE service end 20 in real time, so as to automatically adjust the number of PXE service ends 20, and ensure that the PXE service end 20 runs in the most efficient state.
[0077] Preferably, the PXE service configuration module 30, the PXE service scheduling module 40 and the PXE service end 20 are deployed in a container platform, and after the PXE service end 20 is installed, all service containers of the PXE service end 20 are released.
[0078] Referring to Figure 3 the deployment flowchart of the PXE service end, in Figure 3 , the user defines the configuration parameters on the operation page provided by the operation interface module of the control end 10, including the DHCP address pool range, the number of nodes to be installed, the host type of the node to be installed, whether it is a physical machine or a virtual machine, and the required target operating system, etc.
[0079] Further, the container platform interface module judges whether there is a connected PXE configuration module 30 in the existing network environment, if yes, it means that the control end 10 has a successfully connected container platform, and the next step can be continued; otherwise, it means that there is no connected container platform in the existing network environment, and the node to be installed needs to be extracted, and a lightweight container platform needs to be connected before the next step is continued.
[0080] Further, based on the connected container platform, the control end 10 issues the container image and operating system image required for this PXE service, including the DHCP container image, the TFTP container image, the operating system installation source image (taking the HTTP service image as an example) and the operating system image (taking openeuler as an example), then, the configuration parameters are issued to the PXE service configuration module 30, and it is checked whether the configuration parameters are missing, so as to determine whether the PXE service end 20 can be configured successfully, that is, whether the configured PXE service end 20 can normally provide services.
[0081] The PXE service configuration module 30 configures the service container of the PXE service end 20 according to the configuration parameters, the container image and the operating system image issued by the control end 10. Specifically, the DHCP address pool is transmitted to the DHCP service container, the MAC address binding is set, the pxelinux.0 is transmitted to the TFTP container for system pushing in legacy mode, the openeuler binding is given to the operating system installation source service container, and the openeuler operating system image is mounted to the specified mounting point in the container.
[0082] The PXE service scheduling module 40 schedules the service containers of the PXE service end 20. First, all the service containers of the PXE service end 20, including the DHCP service container, the TFTP service container and the HTTP service container, are in the form of a single container. Since the DHCP service function is simple and only performs simple IP address distribution and MAC address binding, the DHCP service container is always in the form of a single container. The TFTP service container and the HTTP service container need to maintain a large amount of read and write with the to-be-installed node during the PXE service process, and the PXE service scheduling module 40 needs to dynamically expand and shrink the service containers according to the real-time performance data of the service containers.
[0083] Preferably, referring to Figure 4 the flowchart of dynamically expanding and shrinking the service containers of the PXE service end 20 by the PXE service scheduling module 40, based on Figure 4 , the PXE service end 20 includes the DHCP service, the TFTP service and the HTTP service, wherein the HTTP service is an operating system installation source service, the DHCP service is a single container, and the TFTP service and the HTTP service each have multiple containers. The PXE service scheduling module 40 monitors the service containers of the PXE service end 20, counts the number of containers under each service of the PXE service end 20, collects the performance indicators of each service container, updates the number of containers according to the performance indicators, and adjusts the number of containers of the PXE service end 20 according to the task issued by the PXE service scheduling module 40.
[0084] Specifically, the PXE service scheduling module 40 first initiates a scheduling task, at least pulls up one container as a service end for each service, and collects the performance indicators of each container through the container monitoring service. The PXE service scheduling module 40 counts the number of containers under each service, such as the number of containers under the DHCP service, which is always one; the number of containers under the TFTP service and the HTTP service is two.
[0085] Further, the PXE service scheduling module 40 mainly collects the IO performance indicators and network throughput indicators of the service containers. When the IO performance or network throughput reaches a certain threshold (upper limit or lower limit), the number of containers under the TFTP service and the HTTP service is updated. If the IO performance or network throughput reaches the upper threshold, the PXE service scheduling module 40 increases the number of service containers and issues a task to pull up more service containers to reduce the IO performance and network throughput of each container. If the IO performance or network throughput reaches the lower threshold, the PXE service scheduling module 40 reduces the number of service containers and issues a task to release part of the service containers to not occupy too many resources. Finally, the TFTP service and the HTTP service adjust the number of containers according to the task issued by the PXE service scheduling module 40 to realize expansion and shrinkage.
[0086] The PXE service scheduling module 40 is further configured to monitor the installation progress of the to-be-installed nodes, determine whether the to-be-installed nodes have all been installed, and if so, release the service container of the PXE service end 20 and feed back the installation success result to the user through the operation interface module; otherwise, it is indicated that the PXE service is still being executed, and the PXE service end 20 continues to provide the service.
[0087] In the embodiment, based on the control end, the PXE service end, the PXE service configuration module and the PXE service scheduling module, the containerized distributed deployment of the PXE service end is realized, the IO bottleneck and bandwidth limitation problem of the PXE service end under the condition of large quantity and high concurrency is solved, and based on the containerized deployment of the PXE service end, the dynamic scheduling and deployment of the PXE service end is realized, the number of the PXE service ends can be dynamically scheduled and deployed according to the number of the to-be-installed task nodes, and the problem of difficult distributed deployment management and resource waste of the PXE service end is solved.
[0088] Further, through the PXE container image warehouse and the operating system image warehouse of the control end, the prefabrication management and dynamic configuration of the container image of the PXE service end are realized, so that the operator only needs to perform a small amount of simple operation to quickly start or release the PXE service end, and the complexity of the installation and release of the PXE service end is reduced.
[0089] Referring to Figure 5 The application embodiment further provides a containerized PXE service deployment method applied to the containerized PXE service deployment system described in the above embodiments. Figure 5 The application embodiment provides a containerized PXE service deployment method, and Fig. 1 is a flowchart of the containerized PXE service deployment method. Figure 5 The application embodiment provides a containerized PXE service deployment method, and Fig. 1 is a flowchart of the containerized PXE service deployment method.
[0090] In step 100, a user-defined configuration parameter is acquired.
[0091] In step 200, the service container of the PXE service end is configured according to the configuration parameter.
[0092] In step 300, the PXE service end is deployed to a corresponding container host, and the performance index of the PXE service end is monitored, and the PXE service end is scaled according to the performance index.
[0093] Firstly, a user-defined configuration parameter is acquired. The operation interface module of the system control end provides an operation interface and an operation page, and the user defines the configuration parameter on the operation page. The configuration parameter includes a DHCP address pool range, the number of to-be-installed nodes, the host type corresponding to the to-be-installed nodes and a target operating system, and the host type is a physical machine or a virtual machine.
[0094] According to the obtained configuration parameters, the service container of the PXE server is configured. Specifically, according to the obtained configuration parameters, the container images required by the PXE server are determined, including a PXE container image and an operating system container image, and the container images required by the PXE server are pulled to configure the service container. When the service container is configured, specifically, the service container of the PXE server includes a DHCP service container, a TFTP service container and an operating system installation source service container, the DHCP address pool is transmitted to the DHCP service container, the MAC address binding is set, the pxelinux.0 is transmitted to the TFTP service container to push the system in the legacy mode, the openeuler binding is performed on the operating system installation source service container, the openeuler system image is mounted to the specified mounting point in the container, and the configuration of the service container of the PXE server is completed.
[0095] The configured PXE server is deployed to the corresponding container host, and the performance indicators of the PXE server are monitored, and the capacity of the PXE server is expanded or reduced according to the performance indicators. The container host corresponding to the PXE server is the node to be installed, and the container host is a physical machine or a virtual machine. By monitoring the performance indicators of the PXE server, it is determined whether the performance of the service container of the PXE server meets the requirements, so that the service container of the PXE server can be dynamically expanded or reduced according to the number of nodes to be installed.
[0096] Specifically, the performance indicators of the PXE server include IO performance indicators and network throughput indicators, and when the capacity of the PXE server is expanded or reduced according to the performance indicators, the performance indicators of the PXE server are compared with the preset upper threshold and lower threshold. If the performance indicators of the PXE server are lower than the preset lower threshold, the number of service containers of the PXE server is reduced, and the service containers of the PXE server are scaled down; if the performance indicators of the PXE server are higher than the preset upper threshold, more container images are pulled to increase the number of service containers of the PXE server, and the service containers of the PXE server are scaled up.
[0097] It should be noted that the PXE server includes multiple services, such as DHCP service, TFTP service and operating system installation source service, and the number of containers running different services under the same PXE server can be the same or different. The monitoring of the performance indicators of the PXE server is specifically monitoring the performance indicators of the containers of different services under the PXE server respectively, and dynamically adjusting the number of containers of different services according to the monitored performance indicators of the service containers, so as to expand or reduce the capacity of the PXE server.
[0098] Further, while monitoring the performance indicators of the PXE server, the installation progress of each to-be-installed node is monitored, and after all the to-be-installed nodes are installed, the service container of the PXE server is released, so as to release the resources of the PXE server.
[0099] In the embodiment, by acquiring the user-defined configuration parameters, the service container of the PXE server is configured, then the configured PXE server is deployed to the corresponding container host, and the performance indicators of the PXE server are monitored to dynamically scale the service container of the PXE server. Through the distributed deployment of the PXE service, the IO bottleneck and bandwidth limitation of the PXE server are solved, and based on the containerized deployment of the PXE service, the complexity of the distributed deployment and management of the PXE server is reduced, and the resource occupation of the PXE service deployment is reduced.
[0100] Further, after the installation task is completed, the resources of the PXE server can be released in time, and the complexity of the distributed deployment and management of the PXE server is reduced.
[0101] The containerized PXE service deployment method provided in the embodiments of the present application can be correspondingly referred to the containerized PXE service deployment system described above, and will not be described here.
[0102] Figure 6 An example of an entity structure diagram of an electronic device is shown in Figure 6 As shown, the electronic device can include a processor 610, a communication interface 620, a memory 630, and a communication bus 640, and further include a containerized PXE service deployment system, wherein the processor 610, the communication interface 620, and the memory 630 can communicate with each other through the communication bus 640. The processor 610 can call the computer program in the memory 630 to execute the steps of the containerized PXE service deployment method, for example, including:
[0103] Acquiring user-defined configuration parameters;
[0104] According to the configuration parameters, the service container of the PXE server is configured;
[0105] The PXE server is deployed to the corresponding container host, and the performance indicators of the PXE server are monitored, and the PXE server is scaled according to the performance indicators.
[0106] Further, the logic instructions in the memory 630 described above can be implemented in the form of software functional units and sold or used as independent products, and can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application essentially or the parts that make contributions to the prior art or parts of the technical solutions can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, and various media that can store program codes.
[0107] In another aspect, the embodiments of the present application also provide a computer program product, which comprises a computer program, the computer program can be stored on a non-transitory computer readable storage medium, and the computer program is executed by a processor, so that the computer can execute the steps of the containerized PXE service deployment method provided by the above-mentioned embodiments, for example, including:
[0108] obtaining a user-defined configuration parameter;
[0109] configuring a service container of a PXE service end according to the configuration parameter;
[0110] deploying the PXE service end to a corresponding container host, monitoring a performance index of the PXE service end, and performing capacity expansion or contraction of the PXE service end according to the performance index.
[0111] In another aspect, the embodiments of the present application also provide a processor readable storage medium, which stores a computer program, and the computer program is used to make the processor execute the steps of the containerized PXE service deployment method provided by the above-mentioned embodiments, for example, including:
[0112] obtaining a user-defined configuration parameter;
[0113] configuring a service container of a PXE service end according to the configuration parameter;
[0114] deploying the PXE service end to a corresponding container host, monitoring a performance index of the PXE service end, and performing capacity expansion or contraction of the PXE service end according to the performance index.
[0115] The processor-readable storage medium can be any available medium or data storage device that a processor can access, including but not limited to a magnetic storage (e.g., floppy disk, hard disk, tape, MO, etc.), an optical storage (e.g., CD, DVD, BD, HVD, etc.), and a semiconductor storage (e.g., ROM, EPROM, EEPROM, NAND FLASH, SSD, etc.), etc.
[0116] The apparatus embodiments described above are merely illustrative, wherein the units described as separate components can or can not be physically separate, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed to multiple network units. Part or all of the modules can be selected to achieve the purpose of the embodiment scheme according to actual needs. Those skilled in the art can understand and implement without creative labor.
[0117] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be realized by means of software and necessary general hardware platform, and of course can also be realized by hardware. Based on such understanding, the above technical solutions can be embodied in the form of software product, which can be stored in a computer readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., including a plurality of instructions to make a computer device (which can be a personal computer, server, or network device, etc.) execute the method described in each embodiment or some part of the embodiment.
[0118] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for some technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A containerized PXE service deployment system, characterized in that, include: The control terminal provides an operation page for users to define configuration parameters. The PXE server consists of multiple service containers; The PXE service configuration module is used to configure the service container of the PXE server according to the configuration parameters. The PXE service scheduling module is used to deploy the PXE server to the corresponding container host, monitor the performance indicators of the PXE server, and scale the PXE server up or down according to the performance indicators. The control terminal includes a container platform interface module, and the PXE server, the PXE service configuration module, and the PXE service scheduling module are deployed on the container platform. The control terminal also includes: The PXE container image repository includes PXE container images that are compatible with various operating system installation source services. It is used to provide PXE container image registration services and to allow container platforms that interface with the configuration parameters to access and pull the required PXE container images. Operating system image repository, used to provide operating system images adapted for physical machines and virtual machines respectively; The container platform integration module is also used for: Based on the configuration parameters, determine the PXE container image and operating system image required by the PXE server; the PXE container image includes at least a DHCP container image and a TFTP container image; The PXE container image required by the PXE server is obtained from the PXE container image repository, and the operating system image required by the PXE server is obtained from the operating system image repository, and then distributed to the PXE service configuration module.
2. The containerized PXE service deployment system according to claim 1, characterized in that, The service containers include a DHCP service container, a TFTP service container, and an operating system installation source service container. The PXE service scheduling module is further used for: Monitor the performance metrics of each service container in the PXE server; the performance metrics include IO performance metrics and network throughput. If the performance index reaches the preset upper limit threshold, a task is issued to increase the service container of the PXE server to expand the capacity of the PXE server. If the performance index reaches the preset lower threshold, a task is issued to reduce the number of service containers on the PXE server to release some service containers and scale down the PXE server.
3. The containerized PXE service deployment system according to claim 2, characterized in that, The DHCP service container is used to issue IP addresses and bind MAC addresses; the DHCP service container in the PXE server includes one container, and the TFTP service container and the operating system installation source service container include one or more containers.
4. The containerized PXE service deployment system according to claim 1, characterized in that, The container platform interface module is used to determine whether the control terminal has an already interfaced PXE service configuration module; If the control terminal does not have a connected PXE service configuration module, the container platform docking module is also used to obtain the node to be installed, install a lightweight container platform, and deploy the PXE service configuration module on the container platform to dock with the control terminal.
5. The containerized PXE service deployment system according to claim 1, characterized in that, The configuration parameters include the DHCP address pool range, the number of nodes to be installed, the host type and target operating system corresponding to the nodes to be installed, and the host type is a physical machine or a virtual machine.
6. The containerized PXE service deployment system according to claim 1, characterized in that, The control terminal also includes an operation interface module, which provides the operation page; after the PXE service scheduling module deploys the PXE server to the corresponding container host, it is further used for: Determine whether all nodes to be installed have been installed. If so, release the service container of the PXE server and report the installation result of the nodes to be installed to the operation interface module.
7. A method for deploying containerized PXE services, characterized in that, Applied to the containerized PXE service deployment system as described in any one of claims 1 to 6, the method comprises: Retrieve user-defined configuration parameters; Configure the service container of the PXE server according to the configuration parameters; The PXE server is deployed on the corresponding container host, and the performance metrics of the PXE server are monitored. The PXE server is then scaled up or down based on the performance metrics.
8. An electronic device comprising a processor and a memory storing a computer program, characterized in that, It also includes the containerized PXE service deployment system as described in any one of claims 1 to 6, wherein when the computer program is executed by the processor, it implements the steps of the containerized PXE service deployment method as described in claim 7.
9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the containerized PXE service deployment method of claim 7.
Citation Information
Patent Citations
Virtual machine starting method and equipment
CN111857956A
HBase service management method, device and equipment and readable medium
CN112433845A