A server disk performance testing method, device, equipment and storage medium

By automatically obtaining and transmitting configuration item parameters in the basic management controller of the server, the problem of high cost and low efficiency of manual setting parameters in the existing technology is solved, and automated and batch disk performance testing is realized, which improves the credibility of the test results. degree and efficiency.

CN118796646BActive Publication Date: 2024-12-20INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411274391.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-12
Publication Date
2024-12-20
Estimated Expiration
2044-09-12

AI Technical Summary

Technical Problem

Existing server disk performance testing methods rely on manual parameters, which leads to high cost, low efficiency and difficulty in implementing batch testing. Inaccurate parameter settings may lead to distortion of test results.

Method used

By using the secure shell protocol to establish a communication connection with the operating system in the basic management controller of the server, sending configuration item parameter acquisition requests to the RAID card, and using the redfish command to transmit performance test scripts and configuration item acquisition requests, automatically creating test parameters Configuration file for performance testing.

Benefits of technology

It realizes automated disk performance testing, saves labor costs and time, improves the credibility of test results, and supports batch testing, improving testing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118796646B_ABST
    Figure CN118796646B_ABST
Patent Text Reader

Abstract

The present application discloses a server disk performance test method, device, equipment and storage medium, which relates to the field of computer technology, including: establishing a connection with an operating system based on SSH; sending a RAID configuration item parameter acquisition request for a FIO disk performance test tool to a RAID card to obtain RAID configuration item parameter information; using a redfish command to transmit an FIO performance test script to the operating system and sending a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the test tool to run the FIO performance test script in the operating system and obtain system configuration item parameter information and disk I / O information; sending a test parameter configuration file created based on the parameter information and disk I / O information to the operating system to perform a performance test on the disk in the server. The present application can realize automated disk performance testing and improve the credibility of test results and test efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a server disk performance testing method, device, equipment and storage medium. Background Art

[0002] Currently, when a disk in a server is tested for performance, the test is usually performed using a FIO (Flexible I / O Tester, an open source tool for testing storage I / O performance) disk performance test tool pre-installed in the server's Linux (an open source operating system) operating system.

[0003] Moreover, when performing disk performance testing through the FIO disk performance testing tool, relevant performance testing parameters are usually set manually, such as rw (read / write, read / write mode parameters), bs (block size of a single I / O operation), numjobs (number of threads in a test task) and other parameters, so as to write an FIO performance testing script and run the FIO performance testing script in the Linux operating system of the server, so that the testing tool simulates actual or specific workloads, and obtains performance testing results under different performance testing parameters, such as IOPS (Input / Output Operations Per Second, i.e., the number of read / write (I / O) operations per second), throughput, latency and other performance testing results, thereby evaluating the performance of the disk in different working scenarios.

[0004] However, the disk performance test method performed in the server's operating system through the above-mentioned test tool relies on the operation and maintenance / testing / technical engineer to log in to the server's operating system to operate, and the engineer needs to manually input the performance test parameters required by the test tool, which increases the labor cost and time cost. In addition, since different performance test parameters represent disk throughput, latency and other information under different circumstances, they need to be set according to the actual business situation / system parameters to ensure that the disk performance test can simulate and represent the actual situation when the business is running, thereby improving the credibility of the FIO disk performance test. However, the acquisition of the current actual business situation and system parameters requires engineers to issue commands in the operating system respectively and the BMC communicates with the raid card components to obtain them, and then hand them over to professional component / system engineers for analysis. Since the current actual business situation and the acquisition of system parameters are not related, the difficulty of selecting disk performance test parameters is increased.

[0005] In addition, because the traditional parameter setting method requires logging into the server's operating system, such as using a keyboard and mouse physically connected to the server or logging in through the BMC (Baseboard Management Controller) remote desktop function, batch FIO disk performance testing operations cannot be implemented, which increases the difficulty of server disk batch performance testing. Summary of the invention

[0006] In view of this, the purpose of this application is to provide a server disk performance test method, device, equipment and storage medium, which can realize automated disk performance testing, save labor costs and time costs, and avoid distortion of performance test results caused by inaccurate manual parameter settings, improve the credibility of test results, and realize batch disk performance testing, thereby improving test efficiency. The specific scheme is as follows:

[0007] In a first aspect, the present application discloses a server disk performance testing method, which is applied to a basic management controller in a server, comprising:

[0008] Establishing a communication connection with the operating system of the server based on a secure shell protocol;

[0009] Sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information;

[0010] Using a pre-developed redfish command to transmit the FIO performance test script to the operating system and send a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool, so as to run the FIO performance test script in the operating system and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script;

[0011] A test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result.

[0012] Optionally, the server disk performance testing method further includes:

[0013] A redfish command is used to send a request for obtaining the running result of the FIO performance test script to the operating system, so as to obtain the script running result after the operating system runs the FIO performance test script.

[0014] Optionally, the server disk performance testing method further includes:

[0015] A redfish command is used to send an execution progress acquisition request for the FIO performance test script to the operating system to obtain the real-time script execution progress during the operation of the FIO performance test script by the operating system.

[0016] Optionally, the sending a RAID configuration item parameter acquisition request for a FIO disk performance test tool in the operating system to the RAID card of the server to acquire RAID configuration item parameter information includes:

[0017] A RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system is sent to the RAID card of the server through a preset command and based on the MCTP over PCIE protocol to obtain RAID configuration item parameter information; the preset command is a Redfish command or an IPMI command.

[0018] Optionally, the sending a RAID configuration item parameter acquisition request for a FIO disk performance test tool in the operating system to the RAID card of the server to acquire RAID configuration item parameter information includes:

[0019] A RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system is sent to the RAID card of the server by calling the storlib library to acquire RAID configuration item parameter information.

[0020] Optionally, the server disk performance testing method further includes:

[0021] Creating an automatic configuration parameter function switch in the basic management controller, and turning on the automatic configuration parameter function switch;

[0022] Accordingly, sending the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system includes:

[0023] Obtain the current state of the automatic configuration parameter function switch to obtain the switch state;

[0024] If the switch state indicates that the automatic configuration parameter function switch is turned on, a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system.

[0025] Optionally, the process of obtaining the disk I / O information further includes:

[0026] Obtaining disk I / O information during the execution of the FIO performance test script through a disk IO monitoring tool;

[0027] Accordingly, sending the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system includes:

[0028] Parsing the disk I / O information to obtain parsed I / O information;

[0029] A test parameter configuration file is created based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information, and the test parameter configuration file is sent to the operating system.

[0030] Optionally, the creating a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information, and the parsed I / O information includes:

[0031] Determine whether the same configuration item exists in the RAID configuration item parameter information, the system configuration item parameter information, and the parsed I / O information;

[0032] If there are identical configuration items, the maximum / minimum parameter values ​​are determined from the parameter information corresponding to the identical configuration items according to the preset selection rules to obtain the target configuration item parameter value, and a test parameter configuration file is created based on the target configuration item parameter value and the RAID configuration item parameter information, the system configuration item parameter information and the parameter information of other configuration items in the parsed I / O information except the identical configuration item.

[0033] Optionally, the creating a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information, and the parsed I / O information includes:

[0034] The RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information are input into a preset logical mapping table, so as to perform standardized matching on the parameter values ​​of each configuration item required by the FIO disk performance testing tool according to the order of the input items recorded in the preset logical mapping table and the mapping relationship between the input items and the corresponding output items, so as to obtain a test parameter configuration file.

[0035] Optionally, the using of a pre-developed redfish command to transmit the FIO performance test script to the operating system and to send a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool includes:

[0036] Using a pre-developed redfish command, a version acquisition request for the FIO disk performance test tool is sent to the operating system of the server to obtain version information of the FIO disk performance test tool;

[0037] Determine whether the FIO disk performance test tool is the latest version based on the version information;

[0038] If the FIO disk performance test tool is the latest version, the FIO performance test script is transmitted to the operating system through the redfish command, and a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool are sent to the operating system.

[0039] Optionally, establishing a communication connection with the operating system of the server based on a secure shell protocol includes:

[0040] Establishing a connection with the server and obtaining identity information of the server;

[0041] The server is authenticated based on the identity information, and if the server identity authentication is passed, a communication connection with the operating system of the server is established through a secure shell protocol.

[0042] Optionally, the server disk performance testing method further includes:

[0043] The RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information are output to the web interface of the basic management controller through the serial port connected to the basic management controller, so as to visualize the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information.

[0044] In a second aspect, the present application discloses a computer program product, including a computer program / instruction, which implements the aforementioned server disk performance testing method when executed by a processor.

[0045] In a third aspect, the present application discloses an electronic device, comprising a processor and a memory; wherein the processor implements the aforementioned server disk performance testing method when executing a computer program stored in the memory.

[0046] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the aforementioned server disk performance testing method is implemented.

[0047] It can be seen that the present application is applied to the BMC in the server, firstly establishes a communication connection with the operating system of the server based on the secure shell protocol, and then sends a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information, and then uses the pre-developed redfish command to transmit the FIO performance test script to the operating system and send a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool, so as to run the FIO performance test script in the operating system, and obtain the system configuration item parameter information and the disk I / O information during the execution of the FIO performance test script, and finally sends a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system, so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result. This application first establishes a communication connection between the BMC and the server's operating system through the secure shell protocol, thereby realizing data transmission between the BMC and the server's operating system. When a disk performance test is required, a RAID configuration item parameter acquisition request is first sent to the RAID card to obtain the RAID configuration item parameter information, and then the FIO performance test script is transmitted to the operating system through a preset redfish command to run the test script in the operating system, and a system configuration item parameter acquisition request is sent to the operating system to obtain the system configuration item parameter information, and then a disk I / O configuration item acquisition request is sent to the operating system to obtain the disk I / O information during the execution of the FIO performance test script. Finally, based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information The system creates a test parameter configuration file based on the information and sends it to the operating system, so as to perform performance tests on the disks in the server based on the parameter information in the configuration file, thereby realizing automated disk performance testing and saving the manpower and time costs caused by manual parameter adjustment. In addition, since the automatic settings are made according to the actual business conditions of the server and the system hardware configuration, the distortion of performance test results caused by inaccurate manual parameter settings is avoided, the credibility of the test results is improved, and the engineers' analysis and judgment of system performance issues are enhanced. In addition, the redfish command is used to send configuration item parameter acquisition instructions related to the disk performance test, and the redfish command has concurrency, so it can perform disk performance tests on multiple servers at the same time, thereby realizing batch disk performance testing and improving test efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0049] Figure 1 A flow chart of a server disk performance testing method disclosed in this application;

[0050] Figure 2 A specific server disk performance test flow chart disclosed in this application;

[0051] Figure 3 A flow chart of a specific server disk performance testing method disclosed in this application;

[0052] Figure 4 This is a structural diagram of an electronic device disclosed in this application. DETAILED DESCRIPTION

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

[0054] The present application embodiment discloses a server disk performance test method, which is applied to a basic management controller in a server. Figure 1 As shown, the method includes:

[0055] Step S11: establishing a communication connection with the operating system of the server based on the secure shell protocol.

[0056] It should be noted that the server disk performance test solution proposed in this application is applied to the basic management controller (i.e., BMC) in the server, and when the server disk performance test is required, a communication connection with the server's operating system (OS) is first established through the secure shell protocol (SSH, Secure Shell), that is, the BMC and the server's operating system communicate through the SSH protocol. The operating system can be a Linux operating system.

[0057] In a specific implementation, the communication connection established with the operating system of the server based on the secure shell protocol may specifically include: establishing a connection with the server and obtaining the identity information of the server; authenticating the server based on the identity information, and if the server identity authentication passes, establishing a communication connection with the operating system of the server through the secure shell protocol. In this embodiment, a connection between the BMC and the server may be established first, and then the identity information of the server may be obtained, such as the user name and password for logging into the server, and then the server may be authenticated based on the obtained identity information. If the server identity authentication passes, it indicates that the logged-in user is a legitimate user, and at this time, a communication connection may be established with the operating system of the current server through the secure shell protocol. By verifying the identity of the server and establishing a communication connection with the operating system after the verification passes, the security of the disk performance test can be improved.

[0058] Step S12: sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to acquire RAID configuration item parameter information.

[0059] In this embodiment, after establishing a communication connection with the operating system of the server, further, a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the current operating system is sent to the RAID (disk array, Redundant Arrays of Independent Disks) card of the server, thereby obtaining corresponding RAID configuration item parameter information, such as the write strategy in the RAID card, the RAID card array stripe value and other parameter information.

[0060] In a specific implementation, the sending of a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information may specifically include: sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server through a preset command and based on the mctp over pcie protocol to obtain RAID configuration item parameter information; the preset command is a redfish command or an IPMI command. In this embodiment, see Figure 2As shown, a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the current operating system can be sent to the RAID card of the server through a preset command, such as a redfish (a RESTful-based API) command or an IPMI (Intelligent Platform Management Interface) command and based on the mctp over pcie (implementing the MCTP (Peripheral Component Interconnect Express, a high-speed, point-to-point serial communication standard) protocol on the PCIe (Message-based Clean Touch Protocol, a message-based communication protocol) bus) protocol, thereby acquiring the RAID configuration item parameter information required by the FIO disk performance test tool.

[0061] In another specific implementation, the sending of a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information may specifically include: sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server by calling the storlib library to obtain RAID configuration item parameter information. In this embodiment, see Figure 2 As shown, the RAID configuration item parameter acquisition request for the FIO disk performance test tool in the current operating system can be sent to the RAID card of the current server by calling the storlib (a library for Python), thereby obtaining the RAID configuration item parameter information required by the FIO disk performance test tool. The RAID configuration item parameter information includes but is not limited to the queue depth supported by the RAID card, write strategy (such as write-through WT, i.e. Write Through, write-back WB, i.e. Write Back, etc.), RAID strategy (such as RAID0 to 10, JBOD mode, etc.), and voltage and temperature of the RAID card.

[0062] Step S13: Use the pre-developed redfish command to transmit the FIO performance test script to the operating system and send a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool, so as to run the FIO performance test script in the operating system and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script.

[0063] It should be pointed out that the present application pre-creates multiple redfish commands and configures corresponding functions for each redfish command, so as to use these redfish commands to implement disk performance testing. Specifically, after obtaining the RAID configuration item parameter information, the pre-developed first redfish command can be used to transmit the FIO performance test script to the current operating system (i.e., OS) so as to run the FIO performance test script in the current operating system, wherein the parameters in the FIO performance test script include but are not limited to rw, bs, numjobs and other parameters; then, a system configuration item parameter acquisition request for the FIO disk performance test tool is sent to the current operating system through the second redfish command, so as to obtain the system configuration item parameter information required by the FIO disk performance test tool, and then a disk I / O configuration item acquisition request for the FIO disk performance test tool is sent to the current operating system through the third redfish command, so as to obtain the disk I / O information during the execution of the FIO performance test script. Among them, the system configuration item parameter information includes but is not limited to the queue depth supported by the block device, whether the system supports IO merging and other information; the disk I / O information includes but is not limited to concurrent processes, block size, queue depth and other information when the disk is running.

[0064] In this embodiment, the method may further include: using a redfish command to send a request for obtaining the running result of the FIO performance test script to the operating system, so as to obtain the script running result after the operating system runs the FIO performance test script. Figure 2 As shown, the fourth preset redfish command can also be used to send a request for obtaining the running result of the FIO performance test script to the operating system of the server, so as to obtain the script running result after the operating system runs the FIO performance test script (that is, the test result generated after the initial FIO performance test script runs), and then the operating system can also return the script running result to the BMC. The script running result includes but is not limited to performance test results such as IOPS, throughput, and latency.

[0065] In addition, the method may further include: using a redfish command to send an execution progress acquisition request for the FIO performance test script to the operating system to obtain the real-time script execution progress during the operation of the FIO performance test script by the operating system. Figure 2 As shown, the fifth redfish command created in advance can also be used to send an execution progress acquisition request for the FIO performance test script to the operating system, thereby obtaining the real-time script execution progress of the operating system during the running of the FIO performance test script, and then the operating system can also return the real-time script execution progress to the BMC.

[0066] Step S14: Send a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system, so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result.

[0067] In this embodiment, after obtaining the system configuration item parameter information and the disk I / O information during the execution of the FIO performance test script, a test parameter configuration file can be automatically created based on the above RAID configuration item parameter information, the above system configuration item parameter information and the above disk I / O information, and then the file is sent to the operating system. After the operating system receives the above test parameter configuration file, the FIO disk performance test tool pre-installed in the system can be used to perform a performance test on the disk in the current server based on the parameter information in the above test parameter configuration file to obtain the corresponding performance test results.

[0068] In this embodiment, the process of obtaining the disk I / O information may also include: obtaining the disk I / O information during the execution of the FIO performance test script through a disk IO monitoring tool. For example, the disk I / O information during the execution of the FIO performance test script is obtained through the blktrace (block trace, a tracing tool for the block device I / O layer in the Linux kernel) tool, specifically obtaining the disk I / O information when the I / O reaches the block device layer (block layer); wherein the disk I / O information includes but is not limited to the read and write process name, process number, execution time, read and write physical block number, block size and other information, through which the disk I / O status can be known.

[0069] Correspondingly, the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system, which may specifically include: parsing the disk I / O information to obtain parsed I / O information; creating a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information, and sending the test parameter configuration file to the operating system. It should be pointed out that the blktrace tool collects a lot of disk I / O information, but only a part of it is needed for disk performance testing. Therefore, it is necessary to parse the disk I / O information to obtain information that can be used for disk performance testing, namely the parsed I / O information, and then create a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information, and send it to the server's operating system.

[0070] In a specific implementation, the creation of a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information may specifically include: determining whether there are identical configuration items in the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information; if there are identical configuration items, determining the maximum / minimum parameter value from the parameter information corresponding to the identical configuration item according to a preset selection rule to obtain a target configuration item parameter value, and creating a test parameter configuration file based on the target configuration item parameter value and the parameter information of other configuration items in the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information except the identical configuration item. In this embodiment, it is first determined whether there are the same configuration items in the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information, such as the queue depth supported by the RAID in the RAID configuration item parameter information and the queue depth supported by the disk in the parsed I / O information both involve the queue depth configuration item. If there are the same configuration items, the maximum or minimum parameter value is determined from the parameter information corresponding to the same configuration item according to the preset selection rule, so as to obtain the target configuration item parameter value, for example, the queue depth parameter (i.e., iodepth) required by the FIO disk performance test tool is set to the minimum value of the queue depth supported by the Raid card and the disk; the numjobs (number of threads in the test task) parameter required by the FIO disk performance test tool is set to the maximum value of the queue depth of the Raid card and the disk response speed from the parsed I / O information; the block size (block size of a single I / O operation) parameter required by the FIO disk performance test tool is set to the minimum value of the block size in the parsed I / O information, the RAID configuration item parameter information and the system configuration item parameter information. Further, a test parameter configuration file is created based on the determined value and the parameter information of other configuration items except the same configuration item.

[0071] In another specific implementation, the creation of a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information may specifically include: inputting the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information into a preset logical mapping table, so as to perform standardized matching on the parameter values ​​of each configuration item required by the FIO disk performance test tool according to the order of the input items recorded in the preset logical mapping table and the mapping relationship between the input items and the corresponding output items, and obtain a test parameter configuration file. In this embodiment, a logical mapping table is pre-created, and the mapping table records the input items and the corresponding output items, wherein the input items are the configuration items required by the FIO disk performance test tool, and the output items are the parameter values ​​of the corresponding input items. The data format and selection criteria of the parameter values ​​are also recorded in the logical mapping table, such as the queue depth parameter (iodepth) should be set to the minimum value of the queue depth supported by the Raid card and the disk. Through the preset logic mapping table, the parameter values ​​of various configuration items required by the FIO disk performance test tool can be automatically set in a function mapping manner, and the parameter values ​​can be standardized to ensure that the set parameter values ​​meet the calling requirements of the FIO disk performance test tool. It should be pointed out that the creation of the logic mapping table can be participated in by experienced system engineers, component engineers, and test engineers, and iteratively tuned, thereby improving the usability of the FIO disk performance test tool.

[0072] In addition, the server disk performance test method may further include: outputting the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the web interface of the basic management controller through a serial port connected to the basic management controller, so as to visualize the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information. Figure 2 As shown in the figure, in addition to saving the RAID configuration item parameter information, system configuration item parameter information and disk I / O information to the storage space inside the BMC, the RAID configuration item parameter information, system configuration item parameter information and disk I / O information can also be output to the BMC web interface through the serial port connected to the BMC, such as the UART interface of the BMC, so as to visualize the above information, so that engineers can more intuitively observe the disk IO throughput in real time and handle the abnormality in time when it is found.

[0073] It can be seen that the embodiment of the present application is applied to the BMC in the server, firstly establishes a communication connection with the operating system of the server based on the secure shell protocol, and then sends a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information, and then uses the pre-developed redfish command to transmit the FIO performance test script to the operating system and send a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool, so as to run the FIO performance test script in the operating system, and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script, and finally sends a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system, so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result. In the embodiment of the present application, a communication connection is first established between the BMC and the operating system of the server through the secure shell protocol, thereby realizing data transmission between the BMC and the operating system of the server. When a disk performance test is required, a RAID configuration item parameter acquisition request is first sent to the RAID card to obtain the RAID configuration item parameter information. Then, the FIO performance test script is transmitted to the operating system through a preset redfish command to run the test script in the operating system, and a system configuration item parameter acquisition request is sent to the operating system to obtain the system configuration item parameter information. Then, a disk I / O configuration item acquisition request is sent to the operating system to obtain the disk I / O information during the execution of the FIO performance test script. Finally, based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information, the FIO performance test script is executed. O information creates a test parameter configuration file and sends it to the operating system to perform performance tests on the disks in the server based on the parameter information in the configuration file, thereby realizing automated disk performance testing and saving the manpower and time costs caused by manual parameter adjustment. In addition, since the automatic settings are made according to the actual business conditions of the server and the system hardware configuration, the distortion of performance test results caused by inaccurate manual parameter settings is avoided, the credibility of the test results is improved, and the engineers' analysis and judgment of system performance issues are enhanced. In addition, the redfish command is used to send configuration item parameter acquisition instructions related to the disk performance test, and the redfish command has concurrency, so it can perform disk performance tests on multiple servers at the same time, thereby realizing batch disk performance testing and improving test efficiency.

[0074] The present application embodiment discloses a specific server disk performance test method, which is applied to a basic management controller in a server. Figure 3 As shown, the method includes:

[0075] Step S21: Establishing a communication connection with the operating system of the server based on the secure shell protocol.

[0076] Step S22: Sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to acquire RAID configuration item parameter information.

[0077] Step S23: using a pre-developed redfish command to send a version acquisition request for the FIO disk performance test tool to the operating system of the server to obtain version information of the FIO disk performance test tool.

[0078] In this embodiment, after obtaining the RAID configuration item parameter information, a pre-developed redfish command is used to send a version acquisition request for the FIO disk performance test tool to the operating system of the current server, thereby obtaining the version information of the FIO disk performance test tool in the current operating system.

[0079] Step S24: determining whether the FIO disk performance test tool is the latest version based on the version information.

[0080] In this embodiment, after obtaining the version information of the FIO disk performance test tool, it is further determined based on the version information whether the running FIO disk performance test tool is the latest version.

[0081] Step S25: If the FIO disk performance test tool is the latest version, the FIO performance test script is transmitted to the operating system through the redfish command, and a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool are sent to the operating system to run the FIO performance test script in the operating system and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script.

[0082] In this embodiment, if the FIO disk performance testing tool is the latest version, the FIO performance testing script is transmitted to the current operating system through another pre-created redfish command, and a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance testing tool are sent to the operating system, so as to run the FIO performance testing script in the operating system and obtain system configuration item parameter information and disk I / O information during the execution of the above-mentioned FIO performance testing script.

[0083] Step S26: Send a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system, so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result.

[0084] The server disk performance test method may further include: creating an automatic configuration parameter function switch in the basic management controller, and turning on the automatic configuration parameter function switch. In this embodiment, the automatic configuration parameter function can be turned on and off by switching the UART interface switch of the BMC, that is, the present application pre-creates an automatic configuration parameter function switch in the BMC, and turns on the switch before performing the disk performance test.

[0085] Correspondingly, the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system, which may specifically include: obtaining the current state of the automatic configuration parameter function switch to obtain the switch state; if the switch state indicates that the automatic configuration parameter function switch is turned on, the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system. In this embodiment, before generating the test parameter configuration file, the current state of the automatic configuration parameter function switch can be obtained to obtain the corresponding switch state. If the switch state indicates that the automatic configuration parameter function switch is turned on, a test parameter configuration file is created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information, and sent to the operating system. When the parameters of the FIO disk performance test tool need to be manually set by a technician, the automatic configuration parameter function switch can be turned off first, and then the manual parameter setting can be performed. It can be seen that by setting the automatic configuration parameter function switch, not only manual parameter setting can be achieved, but also automatic parameter setting can be achieved through this solution, thereby meeting the diverse disk performance test requirements.

[0086] For more specific processing procedures of the above steps S21, S22, and S26, reference may be made to the corresponding contents disclosed in the aforementioned embodiments, which will not be described in detail here.

[0087] It can be seen that the embodiment of the present application first establishes a communication connection with the operating system of the server based on the secure shell protocol, and then sends a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information, and uses the pre-developed redfish command to send a version acquisition request for the FIO disk performance test tool to the operating system of the server to obtain the version information of the FIO disk performance test tool. Then, based on the version information, it is determined whether the FIO disk performance test tool is the latest version. If so, the FIO performance test script is transmitted to the operating system through the redfish command, and a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool are sent to the operating system to run the FIO performance test script in the operating system, and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script. Finally, the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information is sent to the operating system to perform a performance test on the disk in the server. This application determines whether the FIO disk performance test tool is the latest version, and performs subsequent disk performance tests when it is the latest version. This can avoid errors caused by the unavailability of some functions when the FIO disk performance test tool is not the latest version, thereby improving the success rate of disk performance testing. In addition, this application implements communication between the operating system and the BMC through the SSH protocol, and can automatically obtain system configuration item parameters, thereby realizing automated disk performance testing, saving the manpower and time costs brought by manual parameter adjustment, and reducing FIO disk failures caused by FIO parameter settings not matching the hardware / system setting items, or not matching the actual business model. The distortion of disk performance test improves the credibility of FIO disk performance test results, thereby improving the accuracy of engineers' analysis and judgment of system performance problems; in addition, the disk performance test process of this solution is issued by BMC through redfish commands. Due to the concurrency characteristics of redfish, engineers can perform FIO disk performance tests on multiple servers at the same time, thereby improving the efficiency of FIO disk performance tests that require logging into the BMC remote desktop during traditional FIO tests. This helps engineers analyze the disk IO performance bottleneck of the server under specific business more quickly and accurately, so as to make corresponding optimizations later, such as hardware setting modifications, business model adjustments, etc.

[0088] Furthermore, the present application also discloses an electronic device. Figure 4 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content in the diagram cannot be regarded as any limitation on the scope of use of the present application.

[0089] Figure 4 A schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the server disk performance test method disclosed in any of the aforementioned embodiments. In addition, the electronic device 20 in this embodiment may specifically be an electronic computer.

[0090] In this embodiment, the power supply 23 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0091] In addition, the memory 22, as a carrier for storing resources, can be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon can include an operating system 221, a computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0092] The operating system 221 is used to manage and control the hardware devices and computer programs 222 on the electronic device 20, which can be Windows Server, Netware, Unix, Linux, etc. In addition to the computer program that can be used to complete the server disk performance test method performed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 222 can further include computer programs that can be used to complete other specific tasks.

[0093] Furthermore, the present application also discloses a computer-readable storage medium for storing a computer program; wherein the computer program, when executed by a processor, implements the aforementioned disclosed server disk performance test method. For the specific steps of the method, reference may be made to the corresponding contents disclosed in the aforementioned embodiments, and no further description will be given here.

[0094] Furthermore, an embodiment of the present application also discloses a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the server disk performance testing method disclosed above.

[0095] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or 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.

[0096] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0097] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0098] Finally, it should be noted that, in this article, 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 "include", "comprise" 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, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0099] The above is a detailed introduction to a server disk performance testing method, device, equipment and storage medium provided by the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A server disk performance testing method, characterized in that: Basic management controllers used in servers include: Establishing a communication connection with the operating system of the server based on a secure shell protocol; Sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information; the RAID configuration item parameter information includes a queue depth, a write strategy, a RAID strategy supported by the RAID card, and a voltage and temperature of the RAID card; The FIO performance test script is transmitted to the operating system by using the pre-developed redfish command, and a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool are sent, so as to run the FIO performance test script in the operating system, and obtain system configuration item parameter information and disk I / O information during the execution of the FIO performance test script; the system configuration item parameter information includes the queue depth supported by the block device and whether the system supports IO merging information, and the disk I / O information includes concurrent processes, block size, and queue depth when the disk is running; Sending a test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system, so that the FIO disk performance test tool performs a performance test on the disk in the server based on the parameter information in the test parameter configuration file to obtain a performance test result; The server disk performance test method further includes: using a redfish command to send a request for obtaining the running result of the FIO performance test script to the operating system, so as to obtain the script running result after the operating system runs the FIO performance test script; Using the redfish command, a request for obtaining the execution progress of the FIO performance test script is sent to the operating system to obtain the real-time script execution progress during the operation of the FIO performance test script by the operating system; The sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to obtain RAID configuration item parameter information includes: sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server through a preset command and based on the mctp overpcie protocol to obtain RAID configuration item parameter information; the preset command is a redfish command or an IPMI command; Or, by calling the storlib library, sending a RAID configuration item parameter acquisition request for the FIO disk performance test tool in the operating system to the RAID card of the server to acquire RAID configuration item parameter information; The server disk performance test method is characterized by further comprising: creating an automatic configuration parameter function switch in the basic management controller, and turning on the automatic configuration parameter function switch; Accordingly, the sending of the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system includes: acquiring the current state of the automatic configuration parameter function switch to obtain the switch state; if the switch state indicates that the automatic configuration parameter function switch is turned on, sending the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system; The process of obtaining the disk I / O information also includes: obtaining the disk I / O information during the execution of the FIO performance test script through a disk IO monitoring tool; The obtaining of disk I / O information during the execution of the FIO performance test script by using a disk IO monitoring tool includes: obtaining disk I / O information during the execution of the FIO performance test script by using a blktrace tool; Correspondingly, the sending of the test parameter configuration file created based on the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information to the operating system includes: parsing the disk I / O information to obtain parsed I / O information; creating a test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information, and sending the test parameter configuration file to the operating system; The creating of the test parameter configuration file based on the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information includes: determining whether there are identical configuration items in the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information; if there are identical configuration items, determining the maximum / minimum parameter value from the parameter information corresponding to the identical configuration item according to a preset selection rule to obtain a target configuration item parameter value, and creating a test parameter configuration file based on the target configuration item parameter value and the parameter information of other configuration items in the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information except the identical configuration item; Or, input the RAID configuration item parameter information, the system configuration item parameter information and the parsed I / O information into a preset logical mapping table, so as to perform standardized matching on the parameter values ​​of each configuration item required by the FIO disk performance test tool according to the order of the input items recorded in the preset logical mapping table and the mapping relationship between the input items and the corresponding output items, and obtain a test parameter configuration file; The method of using a pre-developed redfish command to transmit a FIO performance test script to the operating system and sending a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool includes: using a pre-developed redfish command to send a version acquisition request for the FIO disk performance test tool to the operating system of the server to obtain version information of the FIO disk performance test tool; judging whether the FIO disk performance test tool is the latest version based on the version information; if the FIO disk performance test tool is the latest version, transmitting the FIO performance test script to the operating system through the redfish command, and sending a system configuration item parameter acquisition request and a disk I / O configuration item acquisition request for the FIO disk performance test tool to the operating system.

2. The server disk performance testing method according to claim 1, characterized in that: The establishing of a communication connection with the operating system of the server based on the secure shell protocol includes: Establishing a connection with the server and obtaining identity information of the server; The server is authenticated based on the identity information, and if the server identity authentication is passed, a communication connection with the operating system of the server is established through a secure shell protocol.

3. The server disk performance testing method according to any one of claims 1 to 2, characterized in that: Also includes: The RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information are output to the web interface of the basic management controller through the serial port connected to the basic management controller, so as to visualize the RAID configuration item parameter information, the system configuration item parameter information and the disk I / O information.

4. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the server disk performance testing method according to any one of claims 1 to 3 is implemented.

5. An electronic device, characterized in that: It comprises a processor and a memory; wherein, when the processor executes the computer program stored in the memory, the server disk performance testing method as described in any one of claims 1 to 3 is implemented.

6. A computer-readable storage medium, characterized in that: Used to store computer programs; wherein, when the computer program is executed by a processor, the server disk performance testing method according to any one of claims 1 to 3 is implemented.