Bare metal equipment deployment method and system and storage medium

By optimizing the deployment process of bare metal devices through an image distribution platform, and by using a base image to download user images in parallel and mount them on a network shared hard drive, the problem of long deployment time for bare metal devices is solved, and efficient device deployment is achieved.

CN120929097APending Publication Date: 2025-11-11JINAN INSPUR DATA TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511096956.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-06
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

An unreasonable deployment process for bare metal equipment results in long self-test times during startup, low deployment efficiency, and negatively impacts user experience.

Method used

The deployment process is optimized by using an image distribution platform. The user image is downloaded in parallel using the base image, and the user image is written to a network shared hard drive after the power-on self-test, avoiding a second power-on self-test and directly starting the user operating system.

Benefits of technology

It effectively saves deployment time, improves user experience, and increases the deployment efficiency of bare metal devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120929097A_ABST
    Figure CN120929097A_ABST
Patent Text Reader

Abstract

The invention provides a bare metal equipment deployment method and system and a storage medium, and relates to the field of cloud computing, and the method comprises the steps that a mirror image distribution platform downloads a basic mirror image, triggers bare metal equipment to execute a starting process when the basic mirror image is downloaded, and downloads a user mirror image in parallel when the bare metal equipment performs power-on self-test; when the bare metal equipment finishes power-on self-test, acquiring a basic mirror image from the mirror image distribution platform, starting a basic operating system by utilizing the basic mirror image, and publishing a hard disk of the bare metal equipment as a network sharing hard disk; the mirror image distribution platform mounts a network sharing hard disk when the user mirror image finishes downloading, writes the user mirror image into the network sharing hard disk, controls the bare metal equipment to close power-on self-test when the user mirror image finishes writing, and triggers the bare metal equipment to execute a restart process; starting a user operating system by using the user mirror image under the condition that the bare metal equipment does not carry out power-on self-test, and finishing the deployment of the bare metal equipment; the deployment process of the bare metal equipment can be optimized, so that the deployment time is saved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of cloud computing technology, and in particular to a method, system, and storage medium for deploying bare metal devices. Background Technology

[0002] Bare metal devices are a type of equipment in cloud computing infrastructure that can be rented by users. With their zero virtualization loss, dedicated hardware access, and high-performance computing capabilities, they have become important devices in key scenarios such as artificial intelligence training, high-performance computing, and edge computing.

[0003] In related technologies, the deployment efficiency of bare metal equipment is low due to unreasonable deployment process settings and the time-consuming power-on self-test process. Summary of the Invention

[0004] This invention provides a method, system, and storage medium for deploying bare metal devices, which can save deployment time by optimizing the bare metal device deployment process and thus improve the user experience.

[0005] To address the aforementioned technical problems, this invention provides a method for deploying bare metal equipment, comprising:

[0006] The image distribution platform downloads the base image, triggers the bare metal device to execute the boot process when the base image download is complete, and downloads the user image in parallel while the bare metal device performs a power-on self-test;

[0007] When a bare metal device completes its power-on self-test, it obtains a base image from the image distribution platform, uses the base image to start the base operating system, and publishes its own hard drive as a network shared hard drive.

[0008] When the user image download is complete, the image distribution platform mounts the network shared hard drive, writes the user image to the network shared hard drive, and controls the bare metal device to disable the power-on self-test when the user image is written, and triggers the bare metal device to perform the restart process.

[0009] Bare metal devices can be deployed by booting a user operating system from a user image without performing a power-on self-test.

[0010] The present invention also provides a bare metal device deployment system, comprising:

[0011] The image distribution platform is used to download the base image. When the base image download is complete, it triggers the bare metal device to execute the boot process and downloads the user image in parallel while the bare metal device is performing a power-on self-test. When the user image download is complete, it mounts the network shared hard drive published by the bare metal device, writes the user image to the network shared hard drive, and controls the bare metal device to shut down the power-on self-test when the user image writing is complete, and triggers the bare metal device to execute the restart process.

[0012] Bare metal devices are used to obtain a base image from an image distribution platform during a power-on self-test (POST), use the base image to boot a base operating system, and publish their own hard drives as network shared hard drives. Alternatively, without a POST, they can use a user image to boot a user operating system, thus completing the bare metal device deployment.

[0013] The present invention also provides a non-volatile computer-readable storage medium storing computer-executable instructions, which, when loaded and executed by a processor, implement the above-described bare metal device deployment method.

[0014] The beneficial effects of this invention are as follows: In this invention, the image distribution platform first downloads the base image and triggers the bare metal device to execute the boot process when the base image download is complete. Subsequently, while the bare metal device performs a power-on self-test (POST), the user image is downloaded in parallel. This allows for the parallel download of a large user image during the time-consuming POST process, reducing deployment time. Afterward, when the bare metal device completes its POST, it can obtain the base image from the image distribution platform, use the base image to boot the base operating system, and publish its own hard drive as a network shared hard drive. Meanwhile, when the user image download is complete, the image distribution platform mounts the network shared hard drive, writes the user image to the network shared hard drive, and controls the bare metal device to disable its POST and triggers a restart process. This is because the bare metal device has already undergone a POST, so a second POST is unnecessary. Therefore, without performing a POST, the bare metal device can boot the user operating system using the user image to complete bare metal device deployment, saving the time spent on a second POST. By optimizing the deployment process of bare metal equipment, this invention can effectively save deployment time, thereby improving the user experience.

[0015] The present invention also provides a bare metal device deployment system and a non-volatile computer-readable storage medium, which have the above-mentioned beneficial effects. Attached Figure Description

[0016] To more clearly illustrate the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0017] Figure 1 This is a structural block diagram of a bare metal deployment system provided in an embodiment of the present invention;

[0018] Figure 2 This is a structural block diagram of another bare metal deployment system provided in an embodiment of the present invention;

[0019] Figure 3 A flowchart illustrating a bare metal device deployment method provided in an embodiment of the present invention;

[0020] Figure 4 A flowchart of another bare metal device deployment method provided in an embodiment of the present invention. Detailed Implementation

[0021] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of the present invention.

[0022] It should be noted that, in the description of this invention, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., used in this invention are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0023] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0024] Bare metal devices are rentable devices within cloud computing infrastructure. With their zero virtualization overhead, dedicated hardware access, and high-performance computing capabilities, they have become crucial for key scenarios such as artificial intelligence training, high-performance computing, and edge computing. However, the deployment process for bare metal devices in related technologies is not well-designed. On one hand, bare metal devices are physical hardware devices, and their boot-up self-test time is relatively long. On the other hand, the user images required for deploying bare metal devices are large, resulting in lengthy download and installation times. Furthermore, the current technology executes multiple deployment operations for bare metal devices sequentially, leading to prolonged deployment time and a degraded user experience.

[0025] In view of this, in order to improve the deployment efficiency of bare metal devices, the present invention can provide a bare metal device deployment method, which can optimize the bare metal device deployment process, and merge and simplify multiple time-consuming operations, thereby saving deployment time and improving the user experience.

[0026] To facilitate understanding, the system architecture applicable to this embodiment will be described below. Please refer to... Figure 1 , Figure 1 This is a structural block diagram of a bare metal deployment system provided in an embodiment of the present invention. The system may include an image distribution platform (bare metal Conductor) and bare metal devices, which can establish a communication connection via a network. The image distribution platform can be used to download the image files required for deployment, control the bare metal devices to start, and write the image files to the bare metal devices. It should be noted that this embodiment does not limit the internal structure of the image distribution platform; for example, the image distribution platform may consist of one or more image distribution nodes.

[0027] Please refer to Figure 2 , Figure 2 This is a structural block diagram of another bare metal deployment system provided in an embodiment of the present invention. Figure 2 In addition, this system may include a scheduling platform (bare metal API), and the image distribution platform may consist of at least two image distribution nodes. The scheduling platform, image distribution nodes, and bare metal devices can all establish communication connections via a network. The scheduling platform is used to receive user requests, allocate suitable bare metal devices to users, and, within the image distribution platform, allocate target image distribution nodes to provide image download and startup control functions for the bare metal devices.

[0028] Based on the above system structure description, the bare metal device deployment method provided by this invention will be introduced below. Please refer to... Figure 3 , Figure 3 A flowchart illustrating a bare metal device deployment method provided in an embodiment of the present invention. This method may include:

[0029] S101: The image distribution platform downloads the base image. When the base image download is complete, it triggers the bare metal device to execute the boot process and downloads the user image in parallel while the bare metal device performs a power-on self-test.

[0030] In this embodiment, the order in which the image distribution platform downloads image files can be adjusted. Specifically, when deploying bare metal devices, the image distribution platform can first download the base image. The base image is the basic image file required to boot the bare metal device; its size is small, typically less than 10MB, so the download time is short. Once the base image download is complete, the image distribution platform can immediately initiate the boot process on the bare metal device and simultaneously begin downloading the user image. The reason for this setup is that, since the bare metal device is a physical hardware device, it requires a significant amount of time for power-on self-test (POST); simultaneously, the user image is large, typically at least 10GB, so downloading it also consumes considerable time. Therefore, by changing the POST and user image download operations from the original method of downloading the user image first and then controlling the bare metal device to perform the POST, they can be performed in parallel, effectively saving deployment time.

[0031] It should be noted that the image can consist of a kernel image and a ramdisk image. A bare metal proxy service can be configured within the ramdisk image; this service is used to load the user image, as described in subsequent embodiments.

[0032] It should also be noted that the image distribution platform can trigger the power-on and startup of bare metal devices through out-of-band commands, such as by sending IPMI (Intelligent Platform Management Interface) commands to the bare metal device to trigger its power-on and startup.

[0033] Furthermore, when a bare metal device performs a power-on self-test (POST), it can either execute all self-test items for a complete self-test or perform a quick self-test, executing only the essential self-test items. However, the aforementioned complete and quick self-tests still struggle to effectively balance the completeness and efficiency of the self-test. Therefore, this embodiment can also incorporate a self-test item adjustment mechanism within the image distribution platform. Specifically, preset self-test drivers corresponding to the hardware devices within the bare metal device can be set in the image distribution platform. These preset self-test drivers can be provided by the hardware device manufacturers and can adjust the self-test items of specific hardware devices by sending out-of-band commands to the bare metal device. In this way, the image distribution platform can combine user self-test requirements with the aforementioned preset self-test drivers to adjust the self-test items of each hardware device, ensuring that the bare metal device's self-test better meets user needs. This ensures that the user executes the essential self-test items they wish to perform while avoiding unnecessary self-test items, thereby effectively improving the balance between the completeness and efficiency of the self-test.

[0034] Based on this, triggering the boot process on the bare metal device when the base image is downloaded can include:

[0035] Step 11: The image distribution platform sends the first out-of-band management command to the bare metal device to trigger the bare metal device to execute the boot process;

[0036] Step 12: The image distribution platform uses the preset self-test driver corresponding to the hardware device in the bare metal device to send a second out-of-band management command to the bare metal device to adjust the self-test items corresponding to each hardware device;

[0037] Step 13: The bare metal equipment performs a power-on self-test on each hardware device according to the self-test items that have been adjusted for each hardware device.

[0038] Specifically, application service types can be pre-defined for each bare metal device, and target self-test items can be set for each application service type. Subsequently, the image distribution platform can send a second out-of-band management command to the bare metal device based on the current application service type of the bare metal device, using the self-test driver corresponding to the hardware device in the bare metal device, so as to enable the target self-test items only for the hardware device.

[0039] Based on this, the image distribution platform uses the self-test driver corresponding to the hardware device in the bare metal device to send a second out-of-band management command to the bare metal device to adjust the self-test items corresponding to each hardware device, which may include:

[0040] Step 21: The image distribution platform determines the application service type corresponding to the bare metal device, and determines the target self-test items corresponding to each hardware device in the bare metal device according to the application service type;

[0041] Step 22: Use the self-test driver corresponding to the hardware device in the bare metal device to send a second out-of-band management command to the bare metal device to enable the target self-test item only for the hardware device.

[0042] Of course, the image distribution platform can also adjust the self-test order between hardware devices and selectively disable the power-on self-test of some hardware devices through these preset self-test drivers, thereby further optimizing the power-on self-test process of bare metal devices, making the power-on self-test more targeted and more time-saving.

[0043] Furthermore, a management controller (such as a substrate management controller) can be set in the bare metal device, and the image distribution platform can send the above-mentioned out-of-band management commands to the management controller of the bare metal device so that the management controller triggers the bare metal device to start executing the startup process and adjusts the self-test items corresponding to each hardware device in the bare metal device.

[0044] Based on this, the image distribution platform sends a first out-of-band management command to the bare metal device, which may include:

[0045] Step 31: The image distribution platform sends the first out-of-band management command to the management controller of the bare metal device, so that the management controller triggers the bare metal device to start the boot process.

[0046] Sending a second out-of-band management command to a bare metal device may include:

[0047] Step 41: The image distribution platform sends a second out-of-band management command to the management controller of the bare metal device, so that the management controller adjusts the self-test items corresponding to each hardware device according to the second out-of-band management command.

[0048] S102. When the bare metal device completes the power-on self-test, it obtains the base image from the image distribution platform, uses the base image to start the base operating system, and publishes its own hard drive as a network shared hard drive.

[0049] In this embodiment, the bare metal device can enable PXE (Preboot Execution Environment) and initialize its PXE network card and request an IP address from the DHCP server during the power-on self-test (POST). Subsequently, the bare metal device can obtain a base image from the image distribution platform via the PXE network card and use the base image to boot the base operating system. Then, the bare metal device can use the bare metal proxy service in the RAM disk image to publish its hardware as a network shared hard drive (iSCSI endpoint, Internet Small Computer System Interface) and wait for the image distribution platform to load the user image onto its hardware.

[0050] S103: When the user image download is complete, the image distribution platform mounts the network shared hard drive, writes the user image to the network shared hard drive, and controls the bare metal device to disable the power-on self-test when the user image writing is complete, and triggers the bare metal device to perform the restart process.

[0051] In this embodiment, when the image distribution platform completes the user image download, it can mount the network shared hard drive provided by the bare metal device and then write the user image to the network shared hard drive to complete the mounting process. Subsequently, the image distribution platform needs to control the bare metal device to restart so that it can boot based on the user image. Considering that the bare metal device has already performed a power-on self-test and is unlikely to experience hardware failure in the short term, to avoid additional deployment time due to a second power-on self-test, the image distribution platform can control the bare metal device to disable the power-on self-test before triggering the restart. This allows the device to boot using the user image without performing a power-on self-test, thereby saving deployment time.

[0052] Specifically, the image distribution platform can control bare metal devices to disable power-on self-test via out-of-band management commands.

[0053] Based on this, controlling the shutdown and power-on self-test of bare metal equipment can include:

[0054] Step 41: The image distribution platform sends a third out-of-band management command to the bare metal device to trigger the bare metal device to disable its power-on self-test.

[0055] S104. Bare metal devices can be deployed by booting the user operating system using a user image without performing a power-on self-test.

[0056] In this embodiment, the bare metal device will boot the user operating system using the user image without performing a power-on self-test, thereby completing the secondary boot in a short time and improving the efficiency of bare metal device deployment.

[0057] Furthermore, since bare metal devices may require subsequent reboots, and performing a power-on self-test (POST) during these reboots is essential, the image distribution platform can control the bare metal device to re-enable the POST upon completion of the second boot. Specifically, the image distribution platform can also control the bare metal device to initiate the POST via out-of-band management commands.

[0058] Therefore, after completing the deployment of bare metal equipment, it may also include:

[0059] Step 51: The image distribution platform sends a fourth out-of-band management command to the bare metal device to trigger the bare metal device to start a power-on self-test.

[0060] Based on the above embodiments, in this invention, the image distribution platform first downloads the base image and triggers the bare metal device to execute the boot process when the base image download is complete. Then, while the bare metal device performs a power-on self-test (POST), the user image is downloaded in parallel. This allows for the parallel download of a large user image during the time-consuming POST process, reducing deployment time. Subsequently, upon completing the POST, the bare metal device obtains the base image from the image distribution platform, uses the base image to boot the base operating system, and publishes its hard drive as a network shared hard drive. Meanwhile, when the user image download is complete, the image distribution platform mounts the network shared hard drive, writes the user image to the network shared hard drive, and controls the bare metal device to disable the POST and triggers a restart process. This is because the bare metal device has already undergone a POST, so a second POST is unnecessary. Therefore, without performing a POST, the bare metal device can boot the user operating system using the user image to complete bare metal device deployment, saving the time spent on a second POST. By optimizing the deployment process of bare metal equipment, this invention can effectively save deployment time, thereby improving the user experience.

[0061] Based on the above embodiments, to further improve the efficiency of image download and loading, this embodiment can set up an image distribution platform containing at least two image distribution nodes, and improve deployment efficiency through reasonable scheduling by a scheduling platform. This will be described in detail below. In one embodiment, the method may further include:

[0062] S201. When the scheduling platform receives a creation request sent by the user, it allocates the bare metal device to be scheduled and allocates the target image distribution node corresponding to the bare metal device in the image distribution platform.

[0063] In this embodiment, when the scheduling platform receives a creation request from a user, it can allocate a suitable bare metal device according to the user's needs and allocate the target image distribution node corresponding to the bare metal device in the image distribution platform. Here, there can be one or more target image distribution nodes. When there are multiple target image distribution nodes, they can be further divided into primary image distribution nodes and secondary image distribution nodes, with the primary image distribution node leading the user's image loading process.

[0064] S202. The target image distribution node downloads the base image. When the base image download is complete, it triggers the bare metal device to execute the boot process and downloads the user image in parallel while the bare metal device performs a power-on self-test.

[0065] S203. When the bare metal device completes the power-on self-test, it obtains the base image from the image distribution platform, uses the base image to start the base operating system, and publishes its own hard drive as a network shared hard drive.

[0066] S204. When the user image download is complete, the target image distribution node mounts the network shared hard drive, writes the user image to the network shared hard drive, and controls the bare metal device to disable the power-on self-test when the user image writing is complete, and triggers the bare metal device to execute the restart process.

[0067] In this embodiment, to prevent the bare metal device from interfacing with an image distribution node that has not downloaded the user image, the scheduling platform must take the lead in associating the target image distribution node with the bare metal device. Specifically, when the bare metal device completes its deployment on the network shared hard drive, it needs to send a first notification message to the scheduling platform. This first notification message indicates that the bare metal device has completed its initial startup and the deployment of the network shared hard drive, and may also contain the necessary information for mounting the network shared hard drive. Subsequently, the scheduling platform can determine the target image distribution node corresponding to the bare metal device and send the first notification message to the target image distribution node. When the user image is downloaded, the target image distribution node can mount the network shared hard drive according to the first notification message. In this way, the target image distribution node can be associated with the bare metal device, avoiding situations where the bare metal device cannot hit the cache in the image distribution platform.

[0068] Based on this, before the target image distribution node mounts the network shared hard drive when the user image download is complete, it may also include:

[0069] Step 61: When the bare metal device completes the deployment of the network shared hard drive, it sends the first notification information to the scheduling platform;

[0070] Step 62: When the scheduling platform receives the first notification information, it determines the target image distribution node corresponding to the bare metal device and sends the first notification information to the target image distribution node.

[0071] The target image distribution node mounts a network shared hard drive when the user image download is complete, which may include:

[0072] Step 71: When the user image download is complete, the target image distribution node mounts the network shared hard drive according to the first notification information.

[0073] Furthermore, this embodiment can introduce multiple target image distribution nodes to participate in user image loading. Specifically, each target image distribution node can load a portion of the user image. When a slave image distribution node completes the loading of its assigned portion, it needs to send a completion message to the master image distribution node. The master image distribution node can determine that the write was successful once it has completed the loading of its assigned portion and confirmed that all slave image distribution nodes have sent completion messages. In this way, by using multiple image distribution nodes for loading, this embodiment can further improve the deployment efficiency of bare metal devices.

[0074] Based on this, the target image distribution node includes a master image distribution node and slave image distribution nodes; when the user image download is complete, the target image distribution node mounts the network shared hard drive and writes the user image to the network shared hard drive, which may include:

[0075] Step 81: When the user image download is complete, the image distribution node mounts the network shared hard drive, writes the first data from the user image to the network shared hard drive, and sends a completion message to the main image distribution node when the first data has been written.

[0076] Step 82: When the user image download is complete, the primary image distribution node mounts the network shared hard drive, writes the second data from the user image to the network shared hard drive, and determines that the user image writing is complete when the second data has been written and all secondary image distribution nodes have sent completion information.

[0077] Furthermore, after completing the user image writing, the primary image distribution node can send a second notification to the bare metal device to inform it that the image writing is complete. Subsequently, the bare metal device can cancel its publication of the network shared hard drive and send a third notification to the scheduling platform to inform it that it is ready to begin the secondary boot. The scheduling platform can forward the third notification to the target image distribution node, enabling the target image distribution node to control the bare metal device to begin the secondary boot.

[0078] S205. Bare metal devices can be deployed by booting the user operating system using a user image without performing a power-on self-test.

[0079] Based on the above embodiments, the bare metal equipment deployment method described below will be fully described using specific flowcharts. Please refer to... Figure 4 , Figure 4 A flowchart illustrating another method for deploying bare metal devices according to an embodiment of the present invention. This method may include the following steps:

[0080] (1) Before deploying the elastic bare metal system, the bare metal server needs to be registered. In addition to registering IPMI information, the manufacturer, equipment hardware, and application service type also need to be registered. This embodiment can define a complete list of server power-on self-tests, and each server manufacturer provides its own implementation driver. After starting the bare metal deployment, before starting the deployment, the corresponding self-test driver is obtained according to the manufacturer. If not, the default PXE boot and secondary boot are used. The bare metal conductor does not interfere with the bare metal BIOS self-test configuration. Because the BIOS and hardware (hardware design interfaces) used by different servers are different, even if it is a fast self-test of the server, or a test for the CPU, GPU, hard disk, and memory, the offset, width, and size of the value written to the register are different. The IPMI protocol provides the IPMI Tool Raw user space tool, which provides a set of general, low-level IPMI operations. The server manufacturer implements it according to its own design details. At the same time, the power-on self-test is adjusted according to the bare metal hardware and usage scenario, and the high priority of the power-on self-test for a certain manufacturer's server, a certain scenario, and a certain type of hardware.

[0081] (2) The user sends an elastic bare metal creation request from the user image specified in the interface. After the computing service schedules and determines a suitable bare metal server, the bare metal API service delivers the deployment task to a Conductor service. This service mainly performs the following tasks:

[0082] 1) Download the kernel, ramdisk, and user image from the cluster image service. The first two files are small and can be downloaded directly. At the same time, the PXE service is built based on them, and the overall time is very short. The user image is larger and takes longer to download. Asynchronous download is started in the background. At the same time, a bare metal boot request is sent to the BMC based on the bare metal IPMI information, so that the image download and bare metal boot are performed in parallel.

[0083] 2) Before the bare metal PXE is started, the power-on self-test configuration is determined according to (1), and the bare metal is configured to perform a full self-test, selective full self-test, or fast self-test through IPMI.

[0084] After the bare metal system performs a self-test, it enables PXE boot, assigns a PXE IP address, pulls the kernel and ramdisk from the PXE server (i.e., Conductor) in step 1), and starts the system. The bare metal agent service integrated in the ramdisk starts, publishes the local hard drive as an iSCSI endpoint, notifies the bare metal API (containing iSCSI endpoint information), and then requests to be transferred to the Conductor service.

[0085] 3) The API notifies the target Conductor that the API needs to query previous records to determine which target Conductor the bare metal deployment request should be forwarded to. For example, if the conclusion is node 02 Conductor, then the request should be sent to this Conductor. This ensures that the user images that were asynchronously downloaded and cached earlier can be used later.

[0086] 4) The API can also confirm from previous records that multiple Conductors and multiple bare metals have successfully cached and deployed a user image. In this case, the request can be forwarded to multiple Conductor services with the subject "process bare metal system loading". The request data includes a list of all Conductors participating in this task, the primary and secondary roles of each Conductor in the group, and the iSCSI endpoint of the bare metal hard drive to be loaded.

[0087] 5) After receiving the request, the Conductor checks the user image cache readiness based on the bare metal iSCSI endpoint information and prepares for bare metal system infusion. If it is ready, it starts immediately; if not, it waits until it is ready. This process is mainly for the first time a user image is used in the system, or when the bare metal service considers improving parallel deployment and transfers the deployment request from the Conductor that uniquely caches a user image to other Conductor nodes that do not cache user images.

[0088] 6) The Conductor begins the system flushing process. If it is the only Conductor in the task group, it starts flushing after the image cache is ready, i.e., mounting the iSCSI endpoint on this node and writing the cached image data. If there are multiple Conductors in the task group, each node's Conductor mounts the iSCSI endpoint and then, based on the number of task group members, the current Conductor's number in the group member list, and the cache image size, autonomously determines the write offset and write data size of this node on the iSCSI hard drive according to a unified task allocation rule. When multiple Conductors are performing cooperative flushing, the group's master Conductor listens to message queue messages, waits for feedback from the other slave Conductors that the task is complete, confirms the overall task completion, notifies the bare metal agent service, and disconnects iSCSI. This design ensures that the flushing system's write operations to the hard drive fully utilize the disk I / O of each node and the network I / O bandwidth of the iSCSI network, improving write speed and reducing bare metal system write time.

[0089] The bare metal agent service cancels iSCSI publishing, notifies the bare metal API, and then notifies the Conductor.

[0090] 7) After receiving the request, Conductor disables the power-on self-test or sets up a fast self-test for the bare metal, and then restarts the bare metal.

[0091] Because there is no self-test or a fast self-test is used, bare metal can start up quickly, and the user system can be quickly made available. At this time, the agent service in the system sends a heartbeat to notify the Conductor.

[0092] 8) After receiving the request, the Conductor performs a power-on self-test on the bare metal.

[0093] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.

[0094] Please refer to Figure 1 , Figure 1 This is a structural block diagram of a bare metal device deployment system provided in an embodiment of the present invention. The system may include:

[0095] The image distribution platform is used to download the base image. When the base image download is complete, it triggers the bare metal device to execute the boot process and downloads the user image in parallel while the bare metal device is performing a power-on self-test. When the user image download is complete, it mounts the network shared hard drive published by the bare metal device, writes the user image to the network shared hard drive, and controls the bare metal device to shut down the power-on self-test when the user image writing is complete, and triggers the bare metal device to execute the restart process.

[0096] Bare metal devices are used to obtain a base image from an image distribution platform during a power-on self-test (POST), use the base image to boot a base operating system, and publish their own hard drives as network shared hard drives. Alternatively, without a POST, they can use a user image to boot a user operating system, thus completing the bare metal device deployment.

[0097] Optionally, the image distribution platform is also used to send a first out-of-band management command to the bare metal device to trigger the bare metal device to execute the boot process; and to send a second out-of-band management command to the bare metal device using a preset self-test driver corresponding to the hardware device in the bare metal device to adjust the self-test items corresponding to each hardware device.

[0098] Bare metal equipment is also used to perform power-on self-tests on each hardware device based on the self-test items that have been adjusted for each hardware device.

[0099] Optionally, the image distribution platform is also used to determine the application service type corresponding to the bare metal device, and to determine the target self-test items corresponding to each hardware device in the bare metal device according to the application service type; and to send a second out-of-band management command to the bare metal device using the self-test driver corresponding to the hardware device in the bare metal device, so as to enable the target self-test items only for the hardware device.

[0100] Optionally, the image distribution platform is also used to send a first out-of-band management command to the management controller of the bare metal device, so that the management controller triggers the bare metal device to start executing the startup process; and to send a second out-of-band management command to the management controller of the bare metal device, so that the management controller adjusts the self-test items corresponding to each hardware device according to the second out-of-band management command.

[0101] Optionally, the image distribution platform is also used to send a third out-of-band management command to the bare metal device to trigger the bare metal device to disable its power-on self-test.

[0102] Optionally, the image distribution platform is also used to send a fourth out-of-band management command to the bare metal device to trigger the bare metal device to start a power-on self-test.

[0103] Please refer to Figure 2 , Figure 2 This is a structural block diagram of another bare-metal device deployment system provided in an embodiment of the present invention. The system may further include a scheduling platform, and the image distribution platform contains at least two image distribution nodes.

[0104] The scheduling platform is used to allocate bare metal devices to be scheduled when it receives a creation request sent by a user, and to allocate the target image distribution node corresponding to the bare metal device in the image distribution platform;

[0105] The image distribution node is used to download the base image when selected as the target image distribution node. When the base image download is complete, it triggers the bare metal device to execute the boot process and downloads the user image in parallel while the bare metal device performs a power-on self-test. When the user image download is complete, it mounts the network shared hard drive and writes the user image to the network shared hard drive.

[0106] Optionally, the target image distribution node includes a master image distribution node and a slave image distribution node;

[0107] From the image distribution node, it is used to mount the network shared hard drive when the user image has finished downloading, write the first data from the user image to the network shared hard drive, and send a completion message to the main image distribution node when the first data has finished writing.

[0108] The primary image distribution node is used to mount the network shared hard drive when the user image download is complete, write the second data from the user image to the network shared hard drive, and determine that the user image writing is complete when the second data has been written and all the secondary image distribution nodes have sent completion information.

[0109] Optionally, the bare metal device is also used to send a first notification message to the scheduling platform when the network shared hard drive is published;

[0110] The scheduling platform is also used to determine the target image distribution node corresponding to the bare metal device when it receives the first notification information, and to send the first notification information to the target image distribution node.

[0111] The target image distribution node is also used to mount the network shared hard drive based on the first notification information when the user image download is complete.

[0112] Embodiments of the present invention also provide a computer-readable storage medium storing a computer program configured to execute the steps in any of the bare metal device deployment method embodiments described above when the computer program is run.

[0113] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0114] Embodiments of the present invention also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the bare metal device deployment method embodiments described above.

[0115] Embodiments of the present invention also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the bare metal device deployment method embodiments described above.

[0116] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.

[0117] The present invention has provided a detailed description of a bare metal device deployment method, system, and storage medium. Specific examples have been used to illustrate the principles and implementation methods of the invention. The descriptions of these embodiments are merely illustrative of the method and its core ideas. It should be noted that those skilled in the art can make various improvements and modifications to the invention without departing from its principles, and these improvements and modifications also fall within the scope of protection of the present invention.

Claims

1. A method for deploying bare metal equipment, characterized in that, include: The image distribution platform downloads the base image, triggers the bare metal device to execute the boot process when the base image download is complete, and downloads the user image in parallel while the bare metal device performs a power-on self-test; When the bare metal device completes its power-on self-test, it obtains the base image from the image distribution platform, uses the base image to start the base operating system, and publishes its own hard drive as a network shared hard drive. When the user image download is complete, the image distribution platform mounts the network shared hard drive, writes the user image to the network shared hard drive, and when the user image writing is complete, controls the bare metal device to disable power-on self-test and triggers the bare metal device to perform a restart process. Without performing a power-on self-test, the bare metal device uses the user image to boot the user operating system and complete the bare metal device deployment.

2. The bare metal equipment deployment method according to claim 1, characterized in that, The step of triggering the bare metal device to execute the boot process when the base image is downloaded includes: The image distribution platform sends a first out-of-band management command to the bare metal device to trigger the bare metal device to execute the startup process; The image distribution platform uses a preset self-test driver corresponding to the hardware device in the bare metal device to send a second out-of-band management command to the bare metal device to adjust the self-test items corresponding to each hardware device. The bare metal device performs a power-on self-test on each of the hardware devices according to the self-test items that have been adjusted for each hardware device.

3. The bare metal equipment deployment method according to claim 2, characterized in that, The image distribution platform sends a first out-of-band management command to the bare metal device, including: The image distribution platform sends the first out-of-band management command to the management controller of the bare metal device, so that the management controller triggers the bare metal device to start the startup process. Sending the second out-of-band management command to the bare metal device includes: The image distribution platform sends the second out-of-band management command to the management controller of the bare metal device, so that the management controller adjusts the self-test items corresponding to each hardware device according to the second out-of-band management command.

4. The bare metal equipment deployment method according to claim 1, characterized in that, The control of the bare metal equipment to shut down and perform a self-test includes: The image distribution platform sends a third out-of-band management command to the bare metal device to trigger the bare metal device to disable its power-on self-test.

5. The bare metal equipment deployment method according to claim 3, characterized in that, After completing the deployment of bare metal equipment, the following is also included: The image distribution platform sends a fourth out-of-band management command to the bare metal device to trigger the bare metal device to start a power-on self-test.

6. The method for deploying bare metal equipment according to any one of claims 1 to 5, characterized in that, The image distribution platform contains at least two image distribution nodes; The method further includes: When the scheduling platform receives a creation request from a user, it allocates a bare metal device to be scheduled and allocates the target image distribution node corresponding to the bare metal device in the image distribution platform. The image distribution platform downloads the base image, triggers the bare metal device to execute the boot process when the base image download is complete, and downloads the user image in parallel while the bare metal device performs a power-on self-test, including: The target image distribution node downloads the base image, triggers the bare metal device to execute the startup process when the base image download is completed, and downloads the user image in parallel while the bare metal device performs a power-on self-test; The image distribution platform mounts the network shared hard drive when the user image download is complete, and writes the user image to the network shared hard drive, including: When the user image download is complete, the target image distribution node mounts the network shared hard drive and writes the user image to the network shared hard drive.

7. The bare metal equipment deployment method according to claim 6, characterized in that, The target image distribution node includes a master image distribution node and a slave image distribution node; The target image distribution node mounts the network shared hard drive when the user image download is complete, and writes the user image to the network shared hard drive, including: When the user image download is complete, the slave image distribution node mounts the network shared hard drive, writes the first data from the user image to the network shared hard drive, and sends a completion message to the master image distribution node when the first data is written. When the user image download is complete, the primary image distribution node mounts the network shared hard drive, writes the second data from the user image to the network shared hard drive, and determines that the user image writing is complete when the second data writing is complete and all the secondary image distribution nodes have sent completion information.

8. The bare metal equipment deployment method according to claim 6, characterized in that, Before the target image distribution node mounts the network shared hard drive when the user image download is complete, it also includes: When the network shared hard drive is published, the bare metal device sends a first notification message to the scheduling platform; When the scheduling platform receives the first notification information, it determines the target image distribution node corresponding to the bare metal device and sends the first notification information to the target image distribution node. The target image distribution node mounts the network shared hard drive when the user image download is complete, including: When the user image download is complete, the target image distribution node mounts the network shared hard drive according to the first notification information.

9. A bare metal equipment deployment system, characterized in that, include: The image distribution platform is used to download the base image, trigger the bare metal device to execute the boot process when the base image is downloaded, and download the user image in parallel when the bare metal device performs a power-on self-test; When the user image is downloaded, the network shared hard drive published by the bare metal device is mounted, the user image is written to the network shared hard drive, and when the user image is written, the bare metal device is controlled to disable power-on self-test and the bare metal device is triggered to perform a restart process. The bare metal device is used to obtain the base image from the image distribution platform when completing the power-on self-test, use the base image to start the base operating system, and publish its own hard drive as a network shared hard drive; Without performing a power-on self-test, the user operating system is booted using the user image to complete the bare metal device deployment.

10. A non-volatile computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when loaded and executed by a processor, implement the bare metal device deployment method as described in any one of claims 1 to 8.