Adaptation method, device, equipment and medium

By obtaining the server configuration files and storing them in the server, the problem of long and low efficiency of bus interface equipment adaptation processes in the prior art is solved, and more efficient equipment adaptation and better maintenance are achieved.

CN119576423AActive Publication Date: 2025-03-07INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 13 Cites 0 Cited by

Patent Information

Application Number
CN202411736926.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-03-07
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

In the prior art, adding adaptation information of the bus interface device to the boot system of the server requires recompilation and release of the boot system version, resulting in long adaptation process and low efficiency.

Method used

By obtaining the current server information of the bus interface device to be adapted, the configuration file of the current server is obtained from the pre-established adapter file database based on this information, and storing it in the server, the server is controlled to restart so that the system can adapt the device according to the configuration file information.

Benefits of technology

This method decouples the device adaptation and boot system code, avoids modification of boot system code, shortens the adaptation process, improves the adaptation efficiency, and provides better maintenance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576423A_ABST
    Figure CN119576423A_ABST
Patent Text Reader

Abstract

The invention discloses an adaptation method and device, equipment and a medium, and relates to the technical field of computers. Compared with a mode of adding the adaptation information of the bus interface device in the boot system code for adaptation, the method provided by the invention has the advantages that the boot system of the server realizes the adaptation of the bus interface device by utilizing the information of the configuration file, and the code of the boot system is not modified; according to the method and the system, equipment adaptation and codes of a boot system are decoupled, so that adaptation does not depend on modification of the codes of the boot system any more, adaptation information is provided by a configuration file, and the boot system only needs to adapt to bus interface equipment according to the information of the configuration file; therefore, the adaptation process is shortened, and the adaptation efficiency is improved; compared with the upgrading of the guiding system, the file can be adjusted more flexibly, the transmission process from the research and development end to the client base is greatly reduced, and better maintainability is provided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to an adaptation method, device, equipment and medium. Background Art

[0002] In the current server boot system (such as the Basic Input / Output System (BIOS)), newly added bus interface devices (such as devices compliant with the Peripheral Component Interconnect Express (PCIE) standard) often need to adapt device asset information, device allocation resources and other information before they can be used on the server.

[0003] The relevant bus interface device adaptation process usually adds the adaptation information of the bus interface device to the boot system code, and adapts the newly added bus interface device so that it can meet the server's requirements for the newly added device. However, in this method, there is a strong binding relationship between the adaptation of the newly added device and the code of the boot system. When the newly added device is adapted, it is often necessary to support it by recompiling the boot system version and re-releasing it. Since the boot system version upgrade cycle is usually relatively long, the method of adding the adaptation information of the bus interface device to the boot system code for adaptation has the problems of long adaptation process and low adaptation efficiency.

[0004] It can be seen that how to improve the efficiency of bus interface device adaptation is a technical problem that people in this field need to solve urgently. Summary of the invention

[0005] The purpose of the present invention is to provide an adaptation method, device, equipment and medium to solve the problem of long adaptation process and low adaptation efficiency in the method of adding adaptation information of bus interface equipment in boot system code for adaptation.

[0006] In order to solve the above technical problems, the present invention provides an adaptation method, comprising:

[0007] Get the information of the current server of the bus interface device to be adapted;

[0008] Acquire a current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server;

[0009] storing the current configuration file in the current server;

[0010] The current server is controlled to restart so that a boot system of the current server adapts a bus interface device according to information of the current configuration file.

[0011] On the one hand, the information in the configuration file corresponding to the server is stored in a preset format; the information in the configuration file corresponding to the server includes at least the information of the server and the adaptation list information corresponding to the server; wherein the adaptation list information includes at least the quantity information of the bus interface devices, the adaptation information of each bus interface device and the information representing the end of the adaptation information.

[0012] On the other hand, the adaptation file database is located in the cloud server; the cloud server establishes the adaptation file database including:

[0013] Receive and parse the configuration file corresponding to the server sent by the host;

[0014] Establishing the adaptation file database according to the received configuration file, and using the server information obtained after parsing the configuration file as an index of the adaptation file database;

[0015] The acquiring the current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server comprises:

[0016] The current configuration file corresponding to the current server is obtained from the adaptation file database according to the index represented by the information of the current server.

[0017] On the other hand, the information in the configuration file also includes key information; the order in which the information in the adaptation list information is stored is the number information of the bus interface devices, the adaptation information of each bus interface device, and the information representing the end of the adaptation information;

[0018] The host sends the configuration file corresponding to the server to the cloud server, including:

[0019] The host side loads and parses a configuration file corresponding to at least one server;

[0020] Verify the key information of the configuration file and obtain the verification result;

[0021] If it is detected that the verification result is verification failure, returning to the step of verifying the key information of the configuration file and obtaining the verification result;

[0022] If it is detected that the verification result is passed, the current file format of the configuration file is obtained;

[0023] In the case where it is detected that the current file format is the same as the preset format, obtaining the number of bus interface devices in the configuration file; wherein the number of bus interface devices in the configuration file is determined by the number information of the bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information;

[0024] Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server;

[0025] If not, return to the step of verifying the key information of the configuration file and obtaining the verification result;

[0026] If so, a preview interface of the configuration file is provided on the host side, and the configuration file is encrypted and packaged and sent to the cloud server.

[0027] On the other hand, the obtaining of information about the current server of the bus interface device to be adapted includes:

[0028] Obtaining the request sent by the client through the cloud server, and determining the information of the current server of the bus interface device to be adapted according to the content of the request; wherein the request sent by the client is sent by a server in a server cluster connected to the client;

[0029] The acquiring the current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server comprises:

[0030] In the cloud server, according to the information of the current server, a current configuration file corresponding to the current server is obtained from a pre-established adaptation file database, and the current configuration file corresponding to the current server is sent to the client, so that the current configuration file corresponding to the current server is obtained through the client;

[0031] Before storing the current configuration file in the current server, the method further includes:

[0032] The current configuration file is sent to the current server of the corresponding bus interface device to be adapted through the client.

[0033] On the other hand, the host sends the configuration file corresponding to the server to the cloud server, including:

[0034] The host sends at least one version of configuration file corresponding to the server to the cloud server;

[0035] After obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted according to the content of the request, before obtaining the current configuration file corresponding to the current server from a pre-established adaptation file database in the cloud server according to the information of the current server, the method further includes:

[0036] Determining in the cloud server whether a current version of the configuration file of the current server is smaller than a version of the stored configuration file according to the content of the request;

[0037] If yes, then obtaining, in the cloud server, a current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server;

[0038] If not, a prompt message indicating that the response request has failed is sent to the client through the cloud server.

[0039] On the other hand, after sending the current configuration file to the current server of the corresponding bus interface device to be adapted through the client and before storing the current configuration file in the current server, the method further includes:

[0040] Updating the current version of the configuration file by using the current configuration file of the current server through the client;

[0041] After the configuration file is updated, the client receives prompt information indicating the success or failure of the update sent by the current server within a preset time period;

[0042] In the case where prompt information indicating successful update is received through the client, entering the step of storing the current configuration file in the current server;

[0043] In the case where prompt information indicating that the update has failed is received through the client, the method returns to the step of updating the current version of the configuration file through the client and using the current configuration file of the current server.

[0044] In order to solve the above technical problems, the present invention further provides an adaptation device, comprising:

[0045] A first acquisition module, used to acquire information of a current server of the bus interface device to be adapted;

[0046] A second acquisition module, configured to acquire a current configuration file corresponding to the current server from a pre-established adaptation file database according to information of the current server;

[0047] A storage module, used for storing the current configuration file in the current server;

[0048] The control module is used to control the current server to restart so that the boot system of the current server adapts the bus interface device according to the information of the current configuration file.

[0049] In order to solve the above technical problems, the present invention further provides an adaptation device, comprising:

[0050] Memory for storing computer programs;

[0051] A processor is used to implement the steps of the above-mentioned adaptation method when executing the computer program.

[0052] In order to solve the above technical problem, the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above adaptation method are implemented.

[0053] The beneficial effect of the present invention lies in that, compared with the method of adding the adaptation information of the bus interface device in the boot system code to adapt the newly added bus interface device, the boot system of the server in the method provided by the present invention uses the information of the configuration file to realize the adaptation of the bus interface device, and the code of the boot system is not modified, that is, the device adaptation and the boot system code are decoupled, so that the adaptation no longer depends on the modification of the boot system code, but the adaptation information is provided by the configuration file. The boot system only needs to adapt the bus interface device according to the information in the configuration file. Since the cycle of file modification is shorter than the cycle of boot system version upgrade, the adaptation process is shortened and the adaptation efficiency is improved. Compared with the upgrade of the boot system itself, the file can be adjusted more flexibly, and the transmission process from the R&D end to the customer group is greatly reduced, providing better maintainability.

[0054] In addition, an adaptation file database is established through a cloud server, and in the process of establishing the adaptation file database by the cloud server, the server information is used as an index of the adaptation file database, so that when the current configuration file corresponding to the current server is obtained, the current configuration file corresponding to the current server can be quickly found according to the index.

[0055] The information in the configuration file is stored in a preset format, and the information in the configuration file at least includes information about the server, the adaptation list information corresponding to the server, and the key information, and the adaptation list information at least includes the number of bus interface devices, the adaptation information of each bus interface device, and information indicating the end of the adaptation information. Before the host sends the configuration file corresponding to the server to the cloud server, the configuration file can be verified according to the key information, the file format, and the number of bus interface devices, thereby avoiding the loss of information in the configuration file as much as possible.

[0056] When obtaining the information of the current server of the bus interface device to be adapted, the cloud server receives the request sent by the client and determines the information of the current server of the bus interface device to be adapted according to the content of the request, and the request sent by the client is sent by the server in the server cluster connected to the client, that is, the client realizes the unified management of the server cluster, and the client uniformly sends the request configuration file to the cloud server, and receives the configuration file sent by the cloud server.

[0057] After obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted according to the content of the request, before obtaining the current configuration file corresponding to the current server from the pre-established adaptation file database according to the information of the current server in the cloud server, the cloud server determines whether the current version of the configuration file of the current server is less than the version of the stored configuration file according to the content of the request, that is, the configuration file version is verified. When the current version of the configuration file of the current server is less than the version of the stored configuration file, the current configuration file corresponding to the current server is obtained from the adaptation file database, and the adaptation file is updated, thereby ensuring that the adaptation file of the server can be upgraded successfully as much as possible.

[0058] When the configuration file update is detected, the client receives prompt information sent by the current server within a preset time to indicate the success or failure of the update, so that the update result of the configuration file can be easily understood. After the adaptation file is successfully updated, the current configuration file is stored on the current server, so that after the server is restarted, the server's boot system can adapt the bus interface device according to the latest version of the configuration file, improving the stability and reliability of the system.

[0059] In addition, the present invention also provides an adaptation device, an adaptation equipment and a computer-readable storage medium, which have the same or corresponding technical features as the above-mentioned adaptation method and have the same effects as above. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] In order to more clearly illustrate the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0061] Figure 1 A flowchart of an adaptation method provided by an embodiment of the present invention;

[0062] Figure 2 A schematic diagram of a data structure of a configuration file of a server provided in an embodiment of the present invention;

[0063] Figure 3 A structural topology diagram of an adaptation system provided by an embodiment of the present invention;

[0064] Figure 4 An overall flow chart of an adaptation method provided by an embodiment of the present invention;

[0065] Figure 5 A structural diagram of an adaptation device provided in another embodiment of the present invention. DETAILED DESCRIPTION

[0066] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0067] The core of the present invention is to provide an adaptation method, device, equipment and medium to solve the problem of long adaptation process and low adaptation efficiency in the method of adding adaptation information of bus interface equipment in boot system code for adaptation.

[0068] In the current server boot system, newly added devices often need to be adapted before they can be used on the server, which mainly includes device asset information and device allocation resources. Currently, the adaptation for this part of the content provides relevant device adaptation information and resource allocation information in the form of solidification in the boot system code, forming a strong binding relationship with the boot system firmware, and needs to be achieved by updating the boot system. However, with the increase in the types of models, the diversification of devices, and the increasing number of bus interface devices, the adaptation process is long, the adaptation efficiency is low, and the code maintenance is difficult. Therefore, an embodiment of the present invention provides a new adaptation method.

[0069] In order to enable those skilled in the art to better understand the solution of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods. Figure 1 A flowchart of an adaptation method provided by an embodiment of the present invention is shown in FIG. Figure 1 As shown, the method includes:

[0070] S10: Obtain information of the current server of the bus interface device to be adapted;

[0071] S11: acquiring a current configuration file corresponding to the current server from a pre-established adaptation file database according to information of the current server;

[0072] S12: storing the current configuration file in the current server;

[0073] S13: Control the current server to restart so that the boot system of the current server adapts the bus interface device according to the information of the current configuration file.

[0074] There is no limitation on the current server of the bus interface device to be adapted, and it is determined according to the actual situation. The information of the server includes at least server platform information, server generation information and server model information.

[0075] In order to improve the adaptation efficiency, the embodiment of the present invention directly performs adaptation based on the configuration file. The information in the configuration file corresponding to the server includes at least the information of the server and the adaptation list information corresponding to the server; wherein, the adaptation list information includes at least the number information of the bus interface devices, the adaptation information of each bus interface device, and the information representing the end of the adaptation information. In order to achieve unified management of the configuration files of various servers, the information in the configuration file corresponding to the server is stored in a preset format. In order to improve the security of the configuration file, the information in the configuration file also includes key information. There is no limitation on the specific format of storage. For example, for the configuration file corresponding to any server, the file header can be the key information, followed by the server information and the adaptation list information corresponding to the server. Similarly, the information in the adaptation list information is also stored in a certain format, such as the order in which the information in the adaptation list information is stored is the number information of the bus interface devices, the adaptation information of each bus interface device, and the information representing the end of the adaptation information.

[0076] The following is a detailed description of the content of the configuration file (also known as the adaptation information file). The configuration file contains a verification key in the file header to confirm the security of the file. The content part mainly contains the following information and data structure:

[0077] 1. Server platform information;

[0078] 2. Server generation information;

[0079] 3. Server model information (including customized models);

[0080] 4. Adaptation list information.

[0081] The server platform information structure is three-byte character information. The detailed data structure and content correspondence are as follows:

[0082] The first byte is the server central processing unit (CPU) platform information, which is a single-byte character information: for example, a represents the first platform; b represents the second platform; c represents the third platform;

[0083] The second byte is the server product platform information, which is a single-byte character information: A represents artificial intelligence (AI) server; E represents edge server; G represents general server; S represents storage server;

[0084] The third byte is the supplementary information of the server product platform. It is a single-byte character information used to mark special server types under the same product line. It is currently a reserved byte.

[0085] The second part is the server generation information, which is used in the file to mark the content of different server generation information areas under the same server product platform. It is mainly five-byte information, which mainly includes the following corresponding relationships:

[0086] The first byte is the server product generation information, which is a single-byte digital information and can represent 0-255.

[0087] The second and third bytes are double-byte character information for different CPU types in product generations. Different generations of products may use the same generation but different CPUs. Therefore, in some cases, the CPU information needs to be marked for distinction. An example is as follows:

[0088] 1. If there is no special distinction for this generation, the data content is empty, that is, hexadecimal 0x00;

[0089] 2. If there are different CPU types, it will be a non-empty single character message, and there will be different information depending on the different generation platforms.

[0090] The last two bytes are reserved information and are empty by default.

[0091] The third part is the server model information, which is the division of specific product models under the same generation and type of CPU. It is 7-byte character information. The last 6 bytes are the product configuration information corresponding to the server model. The last two bytes are customer customization information, which is supplemented for customer customized models. If the information is empty, it is non-customized. If there is string information, it is customized. This information corresponds to the customer identity (Identification, ID) in the server code and is a hexadecimal number.

[0092] The fourth part is the adaptation list information, which is a variable-length list content. The main structure is as follows: a header containing length information (characterizing the number of bus interface devices), a body containing multiple device adaptation information, and a footer of a special adaptation information structure indicating the end of the list.

[0093] The header information contains double-byte digital information, which can be used to indicate the number of subsequent main body structures. If this part is invalid here, it can still be identified by the special end field at the end of the table. The device adaptation information that can be supported is 0-65535 devices.

[0094] The main structure mainly includes the following contents: equipment asset information and equipment allocation resource information, specifically, including Vender ID, Device ID, firmware version (FW Version, where FW is the abbreviation of Firmware), bandwidth split requirements, whether it is multi-host and the number of multiple devices, memory-mapped I / O (MMIO) resource requirements, input / output (IO) resource requirements, and bus (BUS) resource requirements. All bytes are digital information, Vender ID and Device ID are double bytes, FW version is three bytes, one byte is whether it is multi-host and the number of multiple devices, of which 1 bit is multi-host confirmation, 7 bits are the number of multiple devices, and one byte is bandwidth split. MMIO is 4 bytes of digital information, and IO and BUS resource requirements are both 3 bytes of digital information, indicating the optional number of requirements in KB, which supports the description of resource requirements within 4T and 16G respectively.

[0095] The footer structure is 7 bytes of digital information, corresponding to the Vender ID, Device ID plus the length of FW Version. When the corresponding Vender ID and Device ID are 0, and the FW Version is 3-byte hexadecimal 0xFF, it proves to be the footer.

[0096] Developers fill the file content with the device content that needs to be supported and adapted according to the file structure. When new devices are added, the corresponding device content can be maintained in an incremental manner under the corresponding model.

[0097] The Vender ID and Device ID are used to identify the specific device, and the FW Version is used to distinguish the devices that need to be specially split according to the FW version. If it is 0, the version is not distinguished. Each byte corresponds to a segment of the FW Version number. If it is FF, the segment version number can be any number.

[0098] For Multi-host and multi-device number bits, if the device is a multi-core device, it usually needs to be specially split and the specific number of multi-cores needs to be clarified. Therefore, when the first bit of this byte is set, the last 7 bits, which are the number of multi-cores, will be read to determine how many devices need to be displayed.

[0099] The special split bit can be triggered by both FW Version and Multi-host enable. When enabled, the data segment is valid, and special bandwidth device splitting can be performed on the device without relying on the original splitting logic.

[0100] MMIO, IO, and BUS resource requirements usually record the resource reservation required by the device. When a device requires resource reservation, the corresponding resource bit is non-empty data. If the system detects that there is data, it will make corresponding resource reservation judgments for the corresponding device.

[0101] Figure 2 A schematic diagram of the data structure of a configuration file of a server provided in an embodiment of the present invention. The file content determines the space occupied by the key according to the selection of the encryption algorithm. Figure 2 The part in the dotted box above is the server platform, generation, and model information. The main part contains 4 adapter device contents, of which the first device is Vender ID 0x47, Device ID 0x32, bandwidth split requirement 4x4, FW Version 2.16.3, 0x83 (1|0000011) contains multiple devices, and the device is 3. 10G MMIO resources are reserved, and no IO resources and BUS resources are required.

[0102] The configuration files of various servers form an adaptation file database so that various servers (servers of various platforms and models) can adapt to the newly added bus interface devices. When configuring the current server using the configuration file, the current configuration file corresponding to the current server is obtained from the pre-established adaptation file database according to the information of the current server, and then the current configuration file is stored in the current server. In order to avoid the loss of the configuration file after the server is restarted, the configuration file can be stored in the storage device on the server motherboard.

[0103] After the current server is restarted, the boot system of the current server parses the configuration file and adjusts the corresponding adaptation strategy according to the content of the adaptation device list. For example, if the corresponding device is identified through the Vender ID, Device ID and FWVersion, the boot system adjusts the bandwidth allocation of the corresponding detected device, adjusts the corresponding reserved resource size and other actions.

[0104] Compared to the method of adding the adaptation information of the bus interface device in the boot system code to adapt the newly added bus interface device, the method provided in this embodiment uses the information of the configuration file in the server boot system to adapt the bus interface device without modifying the boot system code, that is, the device adaptation and the boot system code are decoupled, so that the adaptation no longer depends on the modification of the boot system code, but the adaptation information is provided by the configuration file. The boot system only needs to adapt the bus interface device according to the information in the configuration file. Since the cycle of file modification is shorter than the cycle of boot system version upgrade, the adaptation process is shortened and the adaptation efficiency is improved. Compared with the upgrade of the boot system itself, the file can be adjusted more flexibly and the transmission process from the R&D end to the customer group is greatly reduced, providing better maintainability.

[0105] In order to achieve centralized management of configuration files, in practice, the adaptation file database is located in the cloud server. The cloud server establishes the adaptation file database including:

[0106] Receive and parse the configuration file corresponding to the server sent by the host;

[0107] An adaptation file database is established according to the received configuration file, and the server information obtained after parsing the configuration file is used as an index of the adaptation file database.

[0108] The host end may be a computer, etc. When obtaining the current configuration file corresponding to the current server, the current configuration file corresponding to the current server may be obtained from the adaptation file database according to the index represented by the information of the current server. The host end sends at least one version of the configuration file corresponding to the server to the cloud server, and accordingly, at least one version of the configuration file corresponding to the server exists in the adaptation file database.

[0109] In the process of sending the configuration file to the cloud server, in order to avoid the loss of configuration file information, the host sends the configuration file corresponding to the server to the cloud server including:

[0110] The host side loads and parses at least one configuration file corresponding to the server;

[0111] Verify the key information of the configuration file and obtain the verification result;

[0112] If the verification result is detected as failed, return to the step of verifying the key information of the configuration file and obtaining the verification result;

[0113] If the verification result is detected as passed, the current file format of the configuration file is obtained;

[0114] When it is detected that the current file format is the same as the preset format, the number of bus interface devices in the configuration file is obtained;

[0115] Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server;

[0116] If not, return to the step of verifying the key information of the configuration file and obtaining the verification result;

[0117] If so, a preview interface of the configuration file is provided on the host side, and the configuration file is encrypted and packaged and sent to the cloud server.

[0118] If the preset format is key information, server information, number of bus interface devices, adaptation information of each bus interface device, and information indicating the end of the adaptation information, and the current file format is also key information, server information, number of bus interface devices, adaptation information of each bus interface device, and information indicating the end of the adaptation information, then the file format of the configuration file is correct. The number of bus interface devices in the configuration file is determined by the number of bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information.

[0119] In the method provided in this embodiment, before the host sends the configuration file corresponding to the server to the cloud server, the configuration file is verified according to the key information, file format and the number of bus interface devices, thereby avoiding the loss of information in the configuration file as much as possible. A preview interface of the configuration file is provided on the host side, so that the user can view the content of the configuration file and can also enter the information of the server to be searched to check whether there is a configuration file for the server.

[0120] In practice, there may be multiple servers of the bus interface device to be adapted. In order to achieve unified management of the servers of the bus interface device to be adapted, in implementation, the information of the current server of the bus interface device to be adapted is obtained including:

[0121] Obtaining the request sent by the client through the cloud server, and determining the information of the current server of the bus interface device to be adapted according to the content of the request; wherein the request sent by the client is sent by a server in the server cluster connected to the client;

[0122] Obtaining the current configuration file corresponding to the current server from the pre-established adaptation file database according to the information of the current server includes:

[0123] In the cloud server, according to the information of the current server, a current configuration file corresponding to the current server is obtained from a pre-established adaptation file database, and the current configuration file corresponding to the current server is sent to the client, so that the current configuration file corresponding to the current server is obtained through the client;

[0124] Before storing the current configuration file in the current server, also include:

[0125] The current configuration file is sent to the current server of the corresponding bus interface device to be adapted through the client.

[0126] The client connects to the server cluster and manages the server cluster. The client can be a computer, mobile phone, etc. Figure 3 A structural topology diagram of an adaptation system provided by an embodiment of the present invention. Figure 3 As shown in the figure, the adaptation system includes a server cluster, a client for managing the server cluster, a host, and a cloud server. The client is the client's target server, which is mainly responsible for receiving adaptation information content, parsing information, and implementing adaptation solutions. The host is responsible for managing the main part of the solution update upload, which includes tasks such as previewing and uploading configuration files. The server is the only distribution channel, storing the configuration files uploaded by the host, and sending the corresponding configuration update data when the client sends an update request and passes the verification.

[0127] In order to ensure that the configuration file corresponding to the server of the bus interface device to be adapted is the latest version, after obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted according to the content of the request, before obtaining the current configuration file corresponding to the current server from the pre-established adaptation file database according to the information of the current server in the cloud server, it also includes:

[0128] In the cloud server, judging whether the current version of the configuration file of the current server is smaller than the version of the stored configuration file according to the content of the request;

[0129] If yes, then in the cloud server, according to the information of the current server, a current configuration file corresponding to the current server is obtained from a pre-established adaptation file database;

[0130] If not, a prompt message indicating that the response request has failed is sent to the client via the cloud server.

[0131] If the current version of the configuration file of the current server is version 1.0, and the version of the stored configuration file is also version 1.0, there is no need to obtain the current configuration file corresponding to the current server from the adaptation file database. If the current version of the configuration file of the current server is version 1.0, and the version of the stored configuration file is also version 2.0, the current configuration file corresponding to the current server can be obtained from the pre-established adaptation file database, and the configuration file stored in the cloud server can be used to upgrade the version of the configuration file of the current server.

[0132] In the method provided in this embodiment, the configuration file version is verified. Only when the current version of the configuration file of the current server is smaller than the version of the stored configuration file, the current configuration file corresponding to the current server is obtained from the adaptation file database, and the adaptation file is updated, thereby ensuring that the adaptation file of the server can be upgraded successfully as much as possible.

[0133] After receiving the configuration file sent by the cloud server, in order to ensure the integrity of the configuration file information and avoid the loss of the configuration file information, the client parses the configuration file after receiving the configuration file sent by the cloud server, and obtains the number information of the bus interface devices recorded in the configuration file and the number of bus interface devices corresponding to the adaptation information when it is detected that the format of the configuration file meets the preset format; determines whether the number information of the bus interface devices recorded in the configuration file is the same as the number of bus interface devices corresponding to the adaptation information; if so, updates the current version of the configuration file using the current configuration file of the current server; if not, returns to the step of obtaining the request sent by the client through the cloud server, and determining the information of the current server of the bus interface device to be adapted according to the content of the request;

[0134] When it is detected that the format of the configuration file does not meet the preset format, the process returns to the step of obtaining the request sent by the client through the cloud server, and determining the information of the current server of the bus interface device to be adapted according to the content of the request.

[0135] Specifically, when detecting whether the format of the configuration file meets the preset format, if it is detected that no information indicating the end of the adaptation information is found in the configuration file, it means that the format of the configuration file does not meet the requirement.

[0136] In the method provided in this embodiment, after receiving the configuration file sent by the cloud server, the client parses the configuration file and verifies the format of the configuration file and the number of bus interface devices in the configuration file. If the verification fails, the client resends the request to the cloud server; if the verification passes, the client uses the received configuration file to update the configuration file of the server, thereby ensuring the integrity of the configuration file information as much as possible and avoiding the loss of the configuration file information.

[0137] In order to learn the result of the configuration file update of the server, after the client sends the current configuration file to the current server of the corresponding bus interface device to be adapted, and before the current configuration file is stored in the current server, the method further includes:

[0138] Update the current version of the configuration file by using the current configuration file of the current server through the client;

[0139] After the configuration file is updated, the client receives prompt information sent by the current server within a preset time period to indicate the success or failure of the update;

[0140] When prompt information indicating that the update is successful is received through the client, the step of storing the current configuration file in the current server is entered;

[0141] In the case where prompt information indicating that the update has failed is received through the client, the process returns to the step of updating the current version of the configuration file through the client using the current configuration file of the current server.

[0142] The preset time is not limited and is determined according to actual conditions. In the method provided in this embodiment, after the client updates the current version of the configuration file using the current configuration file of the current server, the server feeds back the update result to the client, so that the user can understand the update result of the configuration file.

[0143] In order to enable those skilled in the art to better understand the solution of the present invention, the present invention will be further described in detail below in conjunction with the accompanying drawings and specific implementation methods. Figure 4 An overall flow chart of an adaptation method provided by an embodiment of the present invention, such as Figure 4 As shown, the method includes:

[0144] S14: The host side loads the configuration file;

[0145] S15: verify the key;

[0146] S16: Determine whether the key verification is passed; if so, proceed to step S17; if not, return to step S15;

[0147] S17: Determine whether the configuration file format and the number of devices meet the corresponding requirements; if not, return to step S15; if so, proceed to step S18;

[0148] S18: Parse the configuration file to provide content preview and retrieval location;

[0149] S19: Establish a connection between the host and the cloud server, upload the configuration file to the cloud server, unpack the file according to the content, and establish an index and a corresponding database;

[0150] S20: The client sends a request to the cloud server;

[0151] S21: After the client sends a request, the cloud server checks whether the requested version exists; if not, it returns to step S20; if so, it proceeds to step S22;

[0152] S22: The cloud server sends the configuration file of the corresponding model to the client. The client detects the server that needs the configuration file to be upgraded and distributes the configuration file to the corresponding server. The server updates it to the motherboard flash memory.

[0153] S23: restart the server of the configuration file to be upgraded, apply the new configuration file, add relevant support for the corresponding device, and adjust the boot system adaptation policy according to the configuration file.

[0154] In implementation, the overall adaptation method includes the following process:

[0155] 1) The host establishes communication with the server to verify whether there are errors in the current file key and file structure content. After the verification is passed, the file will be loaded and parsed by the host, and the adaptation information of each model can be displayed and uploaded on the host.

[0156] 2) The host will package the file verification information and the main body and upload it to the server. The server will save the data in sub-packages according to the structure level based on the platform information and model information of the main body. The main body is the actual content, and the platform, generation and other information are index directories of the sub-package information. Thus, a database of adaptation files related to each platform and model is established. The database is established according to the version uploaded by the host, and the client can request any uploaded version.

[0157] 3) When the client sends an update request, it will upload index information including platform, model, etc. to the server. The server will find the corresponding adaptation file content of the index directory item based on the information, and will issue it according to the version requested by the client.

[0158] 4) After receiving the data file, the client will update the server files selected in the network that need to be upgraded, thereby achieving batch upgrades. After the server is successfully updated, it will feedback the update results to the client, and the update results of each server can be displayed through the client management software.

[0159] 5) The server needs to be online to be updated. The system software tools are required to write the data in the table to the storage device on the motherboard, usually a separate Flash on the motherboard.

[0160] 6) After the update is completed, the Flash content will be parsed by the boot system when the server is restarted next time. The boot system will adjust the corresponding adaptation strategy according to the content of the adaptation device list. For example, if the corresponding device is identified through the Vender ID, Device ID and FWVersion, the boot system will adjust the bandwidth allocation of the corresponding detected device, adjust the corresponding reserved resource size, and other actions.

[0161] The embodiment of the present invention provides a solution for performing device adaptation within the boot system for traditional servers, and connects to the cloud service to implement data updates such as machine bus interface device topology, bus interface device adaptation, and asset information adaptation (i.e., upgrading the adaptation content through the cloud service), so that it is possible to achieve decoupling of asset information configuration from the boot system, and effectively solve the defect that device adaptation depends on the boot system version. After decoupling the two parts, the adaptation of new devices can be completed without changing the boot system, thereby achieving efficient update or adjustment of different models or configurations; and compared with the upgrade of the boot system itself, the list file can be adjusted more flexibly, and the transmission process from the R&D end to the customer group is greatly reduced, providing better maintainability.

[0162] In the above embodiments, the adaptation method is described in detail, and the present invention also provides embodiments corresponding to the adaptation device and the adaptation equipment. It should be noted that the present invention describes the embodiments of the device part from two perspectives, one is based on the functional module perspective, and the other is based on the hardware perspective.

[0163] An adaptation device provided by an embodiment of the present invention, based on the perspective of functional modules, includes:

[0164] A first acquisition module, used to acquire information of a current server of the bus interface device to be adapted;

[0165] A second acquisition module is used to acquire a current configuration file corresponding to the current server from a pre-established adaptation file database according to information of the current server;

[0166] A storage module, used to store the current configuration file in the current server;

[0167] The control module is used to control the current server to restart so that the boot system of the current server adapts the bus interface device according to the information of the current configuration file.

[0168] In some embodiments, the adapting device further comprises:

[0169] The first sending module is used to send the current configuration file to the current server of the corresponding bus interface device to be adapted through the client.

[0170] In some embodiments, the adapting device further comprises:

[0171] A judgment module, used to judge in the cloud server whether the current version of the configuration file of the current server is less than the version of the stored configuration file according to the content of the request; if so, trigger the acquisition submodule; if not, trigger the second sending module;

[0172] The acquisition submodule is used to acquire the current configuration file corresponding to the current server from the pre-established adaptation file database according to the information of the current server in the cloud server;

[0173] The second sending module is used to send prompt information indicating a failure in responding to the request to the client through the cloud server.

[0174] In some embodiments, the adapting device further comprises:

[0175] An update module, used to update the current version of the configuration file by using the current configuration file of the current server through the client;

[0176] A receiving module, used to receive prompt information indicating the success or failure of the update sent by the current server through the client within a preset time period starting from the detection of the update configuration file;

[0177] When prompt information indicating that the update is successful is received through the client, the storage module is triggered;

[0178] When prompt information indicating update failure is received through the client, the update triggering module is returned.

[0179] Since the embodiments of the apparatus part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the apparatus part, which will not be repeated here.

[0180] Figure 5 This is a structural diagram of an adaptation device provided by another embodiment of the present invention. This embodiment is based on the hardware perspective, such as Figure 5 As shown, the adapting equipment includes:

[0181] A memory 20, used for storing computer programs;

[0182] The processor 21 is used to implement the steps of the adaptation method mentioned in the above embodiment when executing the computer program.

[0183] Among them, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one hardware form of a digital signal processor (DSP), a field-programmable gate array (FPGA), and a programmable logic array (PLA). The processor 21 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU; the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an AI processor, which is used to process computing operations related to machine learning.

[0184] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, it can implement the relevant steps of the adaptation method disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include, but is not limited to, the data involved in the adaptation method mentioned above, etc.

[0185] In some embodiments, the adapter device may further include a display screen 22 , an input / output interface 23 , a communication interface 24 , a power supply 25 , and a communication bus 26 .

[0186] Those skilled in the art will understand that Figure 5 The structure shown in the figure does not constitute a limitation on the adaptation device, and may include more or fewer components than shown in the figure.

[0187] The adaptation device provided by the embodiment of the present invention includes a memory and a processor. When the processor executes the program stored in the memory, it can implement the following method: the adaptation method, the effect is the same as above.

[0188] An embodiment of the present invention further provides a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned adaptation method when executed by a processor.

[0189] Finally, the present invention also provides an embodiment corresponding to a computer-readable storage medium. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps recorded in the above method embodiment are implemented.

[0190] It is understandable that if the method in the above embodiment is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc. Various media that can store program codes.

[0191] The computer-readable storage medium provided by the present invention includes the above-mentioned adaptation method, and the effect is the same as above.

[0192] The above is a detailed introduction to an adaptation method, device, equipment and medium provided by the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principle of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the present invention.

[0193] It should also be noted that, in this specification, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.

Claims

1. An adaptation method, characterized in that: include: Get the information of the current server of the bus interface device to be adapted; Acquire a current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server; storing the current configuration file in the current server; The current server is controlled to restart so that a boot system of the current server adapts a bus interface device according to information of the current configuration file.

2. The adaptation method according to claim 1, characterized in that: The information in the configuration file corresponding to the server is stored in a preset format; the information in the configuration file corresponding to the server includes at least the information of the server and the adaptation list information corresponding to the server; wherein the adaptation list information includes at least the quantity information of the bus interface devices, the adaptation information of each bus interface device and the information representing the end of the adaptation information.

3. The adaptation method according to claim 2, characterized in that: The adaptation file database is located in the cloud server; The cloud server establishes the adaptation file database including: Receive and parse the configuration file corresponding to the server sent by the host; Establishing the adaptation file database according to the received configuration file, and using the server information obtained after parsing the configuration file as an index of the adaptation file database; The acquiring the current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server comprises: The current configuration file corresponding to the current server is obtained from the adaptation file database according to the index represented by the information of the current server.

4. The adaptation method according to claim 3, characterized in that: The information in the configuration file also includes key information; the order in which the information in the adaptation list information is stored is the number information of the bus interface devices, the adaptation information of each bus interface device, and the information representing the end of the adaptation information; The host sends the configuration file corresponding to the server to the cloud server, including: The host side loads and parses a configuration file corresponding to at least one server; Verify the key information of the configuration file and obtain the verification result; If it is detected that the verification result is verification failure, returning to the step of verifying the key information of the configuration file and obtaining the verification result; If it is detected that the verification result is passed, the current file format of the configuration file is obtained; In the case where it is detected that the current file format is the same as the preset format, obtaining the number of bus interface devices in the configuration file; wherein the number of bus interface devices in the configuration file is determined by the number information of the bus interface devices in the adaptation list information, and / or by the number of bus interface devices corresponding to the adaptation information in the adaptation list information and the information indicating the end of the adaptation information; Determine whether the number of bus interface devices in the configuration file is the same as the number of bus interface devices corresponding to the pre-stored server; If not, return to the step of verifying the key information of the configuration file and obtaining the verification result; If so, a preview interface of the configuration file is provided on the host side, and the configuration file is encrypted and packaged and sent to the cloud server.

5. The adaptation method according to claim 3 or 4, characterized in that: The obtaining of information of the current server of the bus interface device to be adapted includes: Obtaining the request sent by the client through the cloud server, and determining the information of the current server of the bus interface device to be adapted according to the content of the request; wherein the request sent by the client is sent by a server in a server cluster connected to the client; The acquiring the current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server comprises: In the cloud server, according to the information of the current server, a current configuration file corresponding to the current server is obtained from a pre-established adaptation file database, and the current configuration file corresponding to the current server is sent to the client, so that the current configuration file corresponding to the current server is obtained through the client; Before storing the current configuration file in the current server, the method further includes: The current configuration file is sent to the current server of the corresponding bus interface device to be adapted through the client.

6. The adaptation method according to claim 5, characterized in that: The host sends the configuration file corresponding to the server to the cloud server, including: The host sends at least one version of configuration file corresponding to the server to the cloud server; After obtaining the request sent by the client through the cloud server and determining the information of the current server of the bus interface device to be adapted according to the content of the request, before obtaining the current configuration file corresponding to the current server from a pre-established adaptation file database in the cloud server according to the information of the current server, the method further includes: Determining in the cloud server whether a current version of the configuration file of the current server is smaller than a version of the stored configuration file according to the content of the request; If yes, then obtaining, in the cloud server, a current configuration file corresponding to the current server from a pre-established adaptation file database according to the information of the current server; If not, a prompt message indicating that the response request has failed is sent to the client through the cloud server.

7. The adaptation method according to claim 6, characterized in that: After sending the current configuration file to the current server of the corresponding bus interface device to be adapted through the client and before storing the current configuration file in the current server, the method further includes: Updating the current version of the configuration file by using the current configuration file of the current server through the client; After the configuration file is updated, the client receives prompt information indicating the success or failure of the update sent by the current server within a preset time period; In the case where prompt information indicating successful update is received through the client, entering the step of storing the current configuration file in the current server; In the case where prompt information indicating that the update has failed is received through the client, the method returns to the step of updating the current version of the configuration file through the client and using the current configuration file of the current server.

8. An adaptor, characterized in that: include: A first acquisition module, used to acquire information of a current server of the bus interface device to be adapted; A second acquisition module, configured to acquire a current configuration file corresponding to the current server from a pre-established adaptation file database according to information of the current server; A storage module, used for storing the current configuration file in the current server; The control module is used to control the current server to restart so that the boot system of the current server adapts the bus interface device according to the information of the current configuration file.

9. An adaption device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the adaptation method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the adaptation method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Method for acquiring resource information of server, resource pool management system and server

    CN103024079A

  • Service upgrade for management program or hardware manager

    CN103257870A

  • Parameter-regulable universal RS232-CAN (Controller Area Network) bus adapter

    CN104391814A

  • Multi-cloud management cloud service adaptation module management method

    CN110825452A

  • Server starting method of cloud platform and terminal

    CN111008043A