Method and device for accessing cloud platform to storage device and electronic device
Through the cloud platform, multiple interfaces are used to instruct the storage device to perform multiple storage functions, solving the problem of low efficiency in access storage devices in the prior art and realizing a more efficient access process.
Patent Information
- Application Number
- CN202410084823.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-19
- Publication Date
- 2025-07-22
AI Technical Summary
When a cloud platform accesses a storage device, the process of detecting storage functions in the prior art is complicated, resulting in low access efficiency.
The cloud platform instructs the storage device to execute multiple storage functions according to the implementation scheme corresponding to the multiple interfaces, and receives execution results, shortens acquisition time and improves efficiency.
Through multiple interfaces, the storage device is instructed to perform multiple storage functions, and multiple execution results are obtained in a single time, which improves the efficiency of cloud platform accessing storage devices.
Smart Images

Figure CN120358247A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computers, and in particular, to a method, apparatus, and electronic device for a cloud platform to access a storage device. Background Art
[0002] Before a cloud platform accesses a storage device, it is necessary to detect the storage functions provided by the storage device. The cloud platform provides an integrated set of storage services. An integrated set of storage services contains multiple storage services, and an integrated set of storage services corresponds to one interface. The cloud platform establishes a connection with the storage device through the interface and detects whether the storage device can provide multiple storage functions in the integrated set of storage services corresponding to the interface. For the integrated architecture of the set of storage services, all storage services in the set need to be detected each time, and the detection process is complex, resulting in low efficiency of the cloud platform accessing the storage device. Summary of the Invention
[0003] This application provides a method, apparatus, and electronic device for a cloud platform to access a storage device, which solves the problem of low efficiency of the cloud platform accessing the device.
[0004] In a first aspect, this application provides a method for a cloud platform to access a storage device. The method is executed by the cloud platform, and the cloud platform is connected to the storage device through multiple interfaces. The cloud platform provides implementation solutions for multiple storage functions, one implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface. The method includes: the cloud platform instructs the storage device to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces through the multiple interfaces. The cloud platform receives the execution results of the storage device. When the execution results indicate that multiple storage functions are successful, the cloud platform accesses the storage device.
[0005] Compared with the cloud platform instructing the storage device to implement multiple storage functions according to multiple implementation solutions corresponding to one interface through one interface, in this application, the cloud platform instructs the storage device to execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces through multiple interfaces. In this way, the cloud platform instructs the storage device to execute multiple storage functions through multiple interfaces and obtains the execution results of multiple storage functions at one time. Compared with the cloud platform obtaining the execution results of one storage function at a time, the time for obtaining the execution results of the storage device executing multiple storage functions is shortened, and the efficiency of the cloud platform accessing the storage device is improved.
[0006] In a possible implementation manner, when the execution results indicate that multiple storage functions are not successful, the cloud platform does not access the storage device.
[0007] For example, the cloud platform can determine whether the execution result indicates the successful execution of multiple storage functions in the following manner. Specifically, the cloud platform compares the storage functions successfully executed among the multiple storage functions with the access conditions. The access conditions are used to indicate the storage functions that the cloud platform requires the storage device to successfully execute. If the storage functions successfully executed among the multiple storage functions include the storage functions that the storage device needs to successfully execute, the cloud platform accesses the storage device. Otherwise, the cloud platform does not access the storage device. In this way, the cloud platform can quickly and accurately determine whether to access the storage device, improving the efficiency of the cloud platform in accessing the storage device.
[0008] In another possible implementation, the cloud platform sends commands to the storage device through multiple interfaces to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces. In this way, the storage device synchronously executes multiple storage functions, shortening the time required for the storage device to execute multiple storage functions and improving the efficiency of the cloud platform in accessing the storage device.
[0009] In another possible implementation, the execution result is the parameter returned after the storage device executes multiple storage functions. After the cloud platform receives the execution result of the storage device, the cloud platform uses multiple detection schemes to detect the parameters returned by the storage device when executing multiple storage functions, obtaining a detection result. The detection result includes the storage functions successfully executed and the storage functions not successfully executed among the multiple storage functions. One detection scheme is used to detect one storage function. In this way, the cloud platform directly detects the parameters returned by the storage device when executing the storage function using the detection scheme, quickly obtaining the storage functions successfully executed.
[0010] In another possible implementation, the cloud platform generates and publishes a test tool kit. The test tool kit is used to detect the storage functions provided by the storage device.
[0011] Exemplarily, the test tool kit can include at least one of the implementation solutions of multiple storage functions, access conditions, and detection schemes. The access conditions are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute. One detection scheme is used to detect one storage function.
[0012] In another possible implementation, the storage device is used to indicate the storage device after passing the detection of the test tool kit. In this way, pre-detecting the storage device using the storage tool kit improves the probability of the storage device passing the detection of the cloud platform and improves the efficiency of the cloud platform in accessing the storage device.
[0013] Second aspect, the present application provides a method for a cloud platform to access a storage device. The method is executed by the storage device, and the method includes: the storage device receives an instruction from the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces. One interface corresponds to one implementation solution, and one implementation solution is used to implement one storage function. The storage device obtains the execution results of the multiple storage functions and sends the execution results to the cloud platform. The storage device implements the storage functions according to the implementation solutions indicated by the cloud platform. In this way, the success rate of the storage device in executing the storage functions is improved, and the access efficiency is improved.
[0014] In a possible implementation manner, the storage device receives an instruction from the cloud platform through multiple interfaces to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces.
[0015] In another possible implementation manner, the storage device receives a test tool kit. The test tool kit is used to detect the storage functions provided by the storage device.
[0016] Exemplarily, the test tool kit may include at least one of: implementation solutions for multiple storage functions, access conditions, and detection schemes. The access conditions are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute. One detection scheme is used to detect one storage function.
[0017] In another possible implementation manner, before the storage device receives an instruction from the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces, the storage device implements multiple storage functions according to the implementation solutions for the multiple storage functions in the test tool kit.
[0018] Third aspect, the present application provides a device for a cloud platform to access a storage device. The device includes each module for executing the method in the first aspect or any possible design of the first aspect.
[0019] Fourth aspect, the present application provides a device for a cloud platform to access a storage device. The device includes each module for executing the method in the second aspect or any possible design of the second aspect.
[0020] Fifth aspect, the present application provides a device cluster. It includes at least one electronic device, and each electronic device includes a processor and a memory. The processor of at least one electronic device is used to execute the instructions stored in the memory of at least one electronic device, so that the device cluster executes the operation steps of the method in the first aspect or any possible implementation manner of the first aspect, or so that the device cluster executes the operation steps of the method in the second aspect or any possible implementation manner of the second aspect.
[0021] Sixth aspect, the present application provides a system for a cloud platform to access a storage device. The system includes: a first electronic device and a storage device. The first electronic device is configured to perform the operation steps of the method in the first aspect or any possible implementation manner of the first aspect. The storage device is configured to perform the operation steps of the method in the second aspect or any possible implementation manner of the second aspect.
[0022] Seventh aspect, the present application provides a computer-readable storage medium. It includes: computer software instructions; when the computer software instructions run on an electronic device, it causes the electronic device to perform the operation steps of the method in the first aspect or any possible implementation manner of the first aspect, or causes the electronic device to perform the operation steps of the method in the second aspect or any possible implementation manner of the second aspect, or causes the electronic device to perform the operation steps of the method in the third aspect or any possible implementation manner of the third aspect.
[0023] Eighth aspect, the present application provides a computer program product. When the computer program product runs on a computer, it causes the electronic device to perform the operation steps of the method in the first aspect or any possible implementation manner of the first aspect, or causes the electronic device to perform the operation steps of the method in the second aspect or any possible implementation manner of the second aspect, or causes the electronic device to perform the operation steps of the method in the third aspect or any possible implementation manner of the third aspect.
[0024] For the beneficial effects of the above third aspect to the eighth aspect, reference can be made to the description of any implementation manner in the first aspect or the second aspect, and details are not elaborated herein. Based on the implementation manners provided in the above aspects of the present application, further combinations can be made to provide more implementation manners. Description of the Drawings
[0025] Figure 1 It is a schematic diagram of the first cloud platform accessing a storage device;
[0026] Figure 2 It is a schematic diagram of the second cloud platform accessing a storage device;
[0027] Figure 3A It is a schematic diagram of the architecture of the cloud platform provided by the embodiment of the present application;
[0028] Figure 3B It is a schematic diagram of the structure of an access system provided by the embodiment of the present application;
[0029] Figure 4 It is a schematic diagram of a method for a cloud platform to access a storage device provided by the embodiment of the present application;
[0030] Figure 5 It is a flowchart of an offline access test provided by the embodiment of the present application;
[0031] Figure 6 It is a schematic diagram of the architecture for a cloud platform to access a storage device provided by an embodiment of the present application;
[0032] Figure 7 It is an example diagram of a cloud platform accessing a storage device provided by an embodiment of the present application;
[0033] Figure 8 It is a schematic diagram of the structure of a device for a cloud platform to access a storage device provided by an embodiment of the present application;
[0034] Figure 9 It is a schematic diagram of the structure of a device for a cloud platform to access a storage device provided by an embodiment of the present application;
[0035] Figure 10 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application;
[0036] Figure 11 It is a schematic diagram of the structure of a device cluster provided by an embodiment of the present application;
[0037] Figure 12 It is a connection diagram of an electronic device provided by an embodiment of the present application. Specific embodiments
[0038] For the sake of clear and concise description of the following embodiments, a brief introduction to the related technologies is given first.
[0039] Storage vendor: The provider of storage resources, which can provide physical storage resources for the cloud platform.
[0040] Cloud platform operator: Connect the physical storage resources provided by the storage vendor to the cloud platform as cloud storage resources, and uniformly manage, schedule, and allocate the cloud storage resources, etc.
[0041] Heterogeneous storage device: A storage device not provided by the cloud platform operator.
[0042] Before the cloud platform accesses a heterogeneous storage device, the cloud platform needs to detect the storage functions provided by the heterogeneous storage device to determine whether the storage device can meet the requirements of the cloud platform. If the heterogeneous storage device can meet the requirements of the cloud platform, the cloud platform accesses the heterogeneous storage device. The cloud platform uses the physical storage resources provided by the heterogeneous storage device accessed by the cloud platform as cloud storage resources, and the cloud platform provides storage services for third parties based on the cloud storage resources. Usually, the cloud platform can access the heterogeneous storage device in the following Method 1 or Method 2.
[0043] Method 1
[0044] Figure 1 It is a schematic diagram of the first method for a cloud platform to access a storage device, asFigure 1 As shown, the cloud platform defines an application programming interface (API) for heterogeneous storage device management. The storage device implements storage functions based on this API, such as the VASA framework. In this approach, the cloud platform defines the API for heterogeneous storage device management based on the cloud platform. This API is associated with the cloud platform, such that when the storage device implements this management interface, it needs to consider security aspects such as the high availability of the management interface, the persistence of management data, authentication, etc. There are problems such as complex deployment upgrades and operation and maintenance methods, and long business interruption times.
[0045] Method 2
[0046] The cloud platform adds a docking plug-in for heterogeneous storage device management and accesses heterogeneous storage devices based on this docking plug-in. The specific implementation is as Figure 2 shown Figure 2 As shown in the figure, which is a schematic diagram of the second way for the cloud platform to access storage devices. The cloud platform abstracts various storage functions to obtain implementation solutions for various storage functions, and implements various storage functions based on the implementation solutions for various storage functions to provide storage services. The cloud platform provides an integrated set of storage services. The integrated set of storage services includes multiple storage services, and one storage service set corresponds to one interface. The cloud platform establishes a connection with the storage device through the interface and detects whether the storage device can provide multiple storage functions in the service set corresponding to the interface. For the integrated architecture of the storage service set, it is necessary to detect multiple storage services in the service set each time, and the detection process is complex, resulting in low efficiency of the cloud platform accessing the storage device.
[0047] Based on Method 1 and Method 2, the embodiments of the present application provide a method for the cloud platform to access storage devices. This method is executed by the cloud platform. The cloud platform instructs the storage device to execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces through multiple interfaces. In this way, the cloud platform instructs the storage device to execute multiple storage functions through multiple interfaces and obtains the execution results of multiple storage functions at one time. Compared with the cloud platform obtaining the execution result of one storage function at a time, it shortens the time to obtain the execution results of the storage device executing multiple storage functions and improves the efficiency of the cloud platform accessing the storage device.
[0048] Figure 3A As shown in the schematic diagram of the architecture of the cloud platform provided by the embodiments of the present application, as Figure 3A shown, the cloud platform 300 includes: a computing cluster 310 and a storage cluster 320. The computing cluster 310 and the storage cluster 320 can be connected through a network 330, and the network 330 can refer to the Internet or other networks.
[0049] The computing cluster 310 may include multiple computing nodes 311. The multiple computing nodes 311 may be connected via a network 312. The network 312 may refer to an enterprise internal network (such as a Local Area Network (LAN)) or the Internet. The computing nodes 311 may instruct a storage device to perform multiple storage functions according to implementation solutions corresponding to multiple interfaces, and receive the execution results of the storage device. When the execution results indicate that the multiple storage functions are successful, the computing nodes 311 access the storage device and incorporate the storage device into the unified management of the storage cluster 320. The computing nodes 311 may be servers, terminal devices, virtual machines (VMs), or containers, etc. When the computing node 311 is a terminal device, the computing node 311 may be a mobile phone, a tablet computer, a laptop computer, a desktop computer, a desktop PC, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in remote medical surgery, a wireless terminal in a smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, a wireless terminal in a smart home, etc.
[0050] The storage cluster 320 may include multiple storage nodes 321. One storage node 321 includes one or more controllers, a network card, and multiple hard disks. The hard disks may be magnetic disks or other types of storage media, such as solid-state drives or shingled magnetic recording hard disks, etc. The network card is used to communicate with the computing nodes 311 included in the computing cluster 310, such as receiving data access requests sent by the computing nodes 311. The controller is used to write data to or read data from the hard disks according to the data access requests sent by the computing nodes 311. During the process of reading and writing data, the controller needs to convert the address carried in the read / write data request into an address recognizable by the hard disks. In some embodiments, the storage cluster 320 stores and manages a large amount of data based on a distributed file system and a distributed database.
[0051] The storage cluster 320 provides physical storage resources for the cloud platform 300 through multiple storage nodes 321. The multiple storage nodes 321 included in the storage cluster 320 may refer to storage devices provided by a cloud platform operator or storage devices provided by a storage manufacturer. When the storage node 321 refers to a storage device provided by a storage manufacturer, the cloud platform needs to access the storage device before using the physical storage resources included in the storage device provided by the storage manufacturer.
[0052] Figure 3B A schematic structural diagram of an access system provided by an embodiment of the present application is shown as Figure 3B shown. The access system includes a cloud platform and a storage device to be accessed. The storage device sends a connection request to the cloud platform, and the cloud platform establishes a connection with the storage device based on the connection request. The cloud platform accesses the storage device to the cloud platform. Figure 4 A schematic diagram of a method for a cloud platform to access a storage device provided by an embodiment of the present application is shown as Figure 4 shown. This method can be applied to Figure 3B the application scenarios described above, and can be executed by the access system described by Figure 3B above. This method may include S410 to S480A.
[0053] S410, the cloud platform generates and publishes a test tool kit.
[0054] The test tool kit is used to detect the storage functions provided by the storage device. The test tool kit includes at least one of implementation schemes of various storage functions and test suites.
[0055] An implementation scheme is used to implement a storage function, and one implementation scheme corresponds to one interface. The cloud platform can abstract various storage functions to obtain implementation schemes of each storage function, and the cloud platform provides an abstract interface (i.e., an interface) of each storage function. One storage function corresponds to one interface. Other devices (such as storage devices) can obtain the implementation scheme of the storage function corresponding to the interface through the interface and implement the storage function according to the implementation scheme.
[0056] According to the different transmission protocols supported by the storage device, the implementation schemes provided by the cloud platform for each storage function are also different. The cloud platform can perform model abstraction on the storage device according to the transmission protocol supported by the storage device, establish a corresponding relationship between the storage device and the transmission protocol supported by the storage device, and obtain implementation schemes of various storage functions corresponding to the storage device according to the corresponding relationship. Table 1 is an example of implementation schemes of each storage function under different transmission protocols. In Table 1, the implementation scheme of the storage function is abbreviated as the scheme, and Transmission Protocol 1 to Transmission Protocol m are used to indicate any m different transmission protocols among iscsi protocol, FC protocol, NOF protocol, RBD protocol, localiscsi protocol, etc. Storage Function 1 to Storage Function n are used to indicate any n different storage functions among creating a storage volume, mounting a storage volume, unmounting a storage volume, expanding a storage volume, deleting a storage volume, creating a storage volume snapshot, backing up a storage volume, restoring a storage volume, etc. "Scheme nm" represents the implementation scheme of storage function n when the storage device supports transmission protocol m.
[0057] Table 1 Examples of implementation solutions for each storage function under different transmission protocols
[0058]
[0059] The cloud platform provides an interface for each implementation solution externally, and other devices can obtain the implementation solution of the storage function corresponding to the interface through the interface. Table 2 is an example of the correspondence between the implementation solutions of the storage functions and the interfaces. In Table 2, the implementation solution of the storage function is abbreviated as the solution, and "solution mn - interface mn" means that the solution mn can be obtained through the interface mn.
[0060] Table 2 Examples of the correspondence between the implementation solutions of the storage functions and the interfaces
[0061]
[0062] The test suite is used to detect various storage functions implemented by the storage device. The test suite includes at least one of various detection schemes and access conditions. One detection scheme is used to detect one storage function. Each detection scheme may include multiple parameters, and the multiple parameters are used to indicate the parameters that the storage device needs to return when executing the storage function detected by the detection scheme.
[0063] The access condition is used to indicate the condition for the cloud platform to access the storage device. The condition may include: the storage functions that the cloud platform requires the storage device to successfully execute. Depending on the different transmission protocols supported by the storage device, the condition may be different. For example, for a storage device that supports the iscsi protocol, the condition may be: the storage functions that the storage device needs to successfully execute may be storage function 1 to storage function i. Where i is a positive integer less than or equal to n. Another example is that for a storage device that supports the FC protocol, the condition may be: the storage functions that the storage device needs to successfully execute may be storage function 2 to storage function n.
[0064] According to the needs of actual applications, the storage functions can be classified. In this case, the storage functions that the cloud platform requires the storage device to successfully execute may refer to the quantity or proportion, etc. of various storage functions that the cloud platform requires the storage device to successfully execute.
[0065] Taking the storage functions including basic functions and value-added functions, and the access condition referring to the proportion of various storage functions that the cloud platform requires the storage device to successfully execute as an example, the access condition is illustrated by examples.
[0066] For example, in a scenario with high reliability requirements. The storage functions that the cloud platform requires the storage device to successfully execute may refer to: the storage device needs to successfully execute all basic functions, and successfully execute 50% of the enhanced functions.
[0067] For another example, in a scenario where performance is required, the storage functions that the cloud platform requires the storage device to successfully execute may refer to: the storage device needs to successfully execute all basic functions and 90% of the enhanced functions.
[0068] The above text gives an example of classifying storage functions into two categories and the proportions of various storage functions that the cloud platform requires the storage device to successfully execute, and explains the access conditions. According to the actual application needs, the storage functions can be divided into more categories, and the same or different proportions or quantities can be set for each category of storage functions. This application does not limit this.
[0069] Optionally, the access condition may further include: the security requirements that the cloud platform requires the storage device to meet. In this case, the cloud platform can send the encryption method used for the communication between the two parties to the storage device, and both the cloud platform and the storage device perform data transmission according to this encryption method. Exemplarily, the cloud platform can send a security certificate to the storage device, and the security certificate carries the public-private key pair used for the communication between the cloud platform and the storage device. The cloud platform and the storage device encrypt and decode the interactive data according to the method indicated by the public-private key pair to meet the security requirements of the cloud platform for the storage device.
[0070] The test tool kit may further include a configuration file, code for generating logs, and so on. The logs are used to record operation information, operating conditions, business dynamics, and so on. Logs, configuration files, and security requirements can also be referred to as common modules.
[0071] S420, the storage device receives the test tool kit and implements various storage functions according to the instructions of the test tool kit.
[0072] The storage device receives the test tool kit, and according to the transmission protocol supported by the storage device, obtains the implementation solutions corresponding to various storage functions under the transmission protocol supported by the storage device, and implements various storage functions according to these multiple implementation solutions. For example, the storage device supports transmission protocol 1. In this case, the storage device obtains the respective solutions 11 to 1n corresponding to storage functions 1 to n. And the storage device implements storage functions 1 to n respectively according to the implementation methods indicated by solutions 11 to 1n.
[0073] In a possible scenario, after the storage device implements various storage functions according to the implementation solutions of the storage functions indicated by the test tool kit, the computing device can first perform offline access testing on the storage functions of the storage device. For the specific content of the offline access testing, please refer to the following text about Figure 5The description is not repeated here. When the result of the offline access test indicates that the cloud platform can access the storage device, the storage device executes S430 to send a connection request to the cloud platform, and the cloud platform conducts an online access test on the storage function of the storage device. For the process of the online access test, please refer to the relevant descriptions of S430 to S480A below. In this way, the probability of the storage device passing the detection by the cloud platform is increased, and the efficiency of the cloud platform accessing the storage device is improved.
[0074] S430, the storage device sends a connection request to the cloud platform.
[0075] Among them, the connection request includes an identifier. The identifier is used to indicate the transmission protocol supported by the storage device.
[0076] Corresponding to S430, the cloud platform executes S430A. S430A includes: the cloud platform receives the connection request sent by the storage device and establishes a connection with the storage device through multiple interfaces. The cloud platform can obtain the multiple interfaces in various ways. Two possible situations are given below.
[0077] In the first possible situation, the cloud platform determines the multiple interfaces through the transmission protocol supported by the storage device.
[0078] In this situation, the cloud platform obtains the interfaces connected to the storage device according to the transmission protocol supported by the storage device indicated by the identifier included in the connection request. Exemplarily, the identifier included in the connection request indicates that the storage device supports transmission protocol 1, and the cloud platform obtains interfaces 11 to 1n according to transmission protocol 1.
[0079] In the second possible situation, the cloud platform determines the multiple interfaces through the supported transmission protocol and the storage function to be tested.
[0080] The storage function to be tested can be specified by the cloud platform or by the storage device. According to the different sources of the storage function to be tested, the way for the cloud platform to determine the multiple interfaces is also different, which are described separately below.
[0081] ①, for the case where the storage function to be tested is specified by the cloud platform.
[0082] The storage function to be tested can be the storage function that was not successfully executed last time. The "last time" can refer to one or several times before this time, and this application does not limit this. In this situation, the cloud platform can adopt the method described in the first possible situation above to determine the multiple interfaces (or interface set 1) corresponding to the transmission protocol supported by the storage device. And the cloud platform obtains one or more interfaces (or interface set 2) corresponding to the storage function to be tested. The cloud platform obtains one or more interfaces included in both interface set 1 and interface set 2, and uses the one or more interfaces as the interfaces for the cloud platform and the storage device to connect to each other.
[0083] ②, for the case where the storage function to be measured is specified by the storage device.
[0084] The connection request may include an identifier of the storage function to be measured. The cloud platform obtains one or more interfaces (or an interface set 3) corresponding to the storage function to be measured according to the identifier of the storage function to be measured. The cloud platform obtains one or more interfaces included in both the interface set 1 and the interface set 3, and uses the one or more interfaces as the interfaces for the cloud platform and the storage device to connect to each other.
[0085] S440. The cloud platform instructs the storage device to execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces through the multiple interfaces.
[0086] In a possible scenario, the cloud platform sends a command to synchronously execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces to the storage device through the multiple interfaces. The cloud platform provides multiple commands, and one command is used to control an electronic device (such as a storage device) to execute one storage function. The cloud platform obtains multiple storage functions through the multiple interfaces. The cloud platform obtains multiple commands for controlling the storage device to execute the multiple storage functions. The cloud platform sends the multiple commands to the storage device to control the storage device to execute multiple storage functions.
[0087] Corresponding to S440, the storage device may execute S440A. S440A includes: The storage device receives an instruction sent by the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces. Exemplarily, the instruction may be multiple commands for controlling the storage device to execute multiple storage functions. The storage device executes the multiple storage functions corresponding to the multiple commands.
[0088] After executing S440A, the storage device may further execute S450. S450 includes: The storage device obtains the execution results of multiple storage functions.
[0089] The execution results are multiple parameters returned after the storage device executes multiple storage functions. The storage device may return one or more parameters when executing one storage function. Depending on the different storage functions, the quantity and type of the parameters returned by the storage device when executing the storage function may be different. For example, after the storage device executes the creation of a storage volume, the returned parameters may include: the name of the storage volume, the size of the storage volume, etc.
[0090] After executing S450, the storage device may further execute S460. S460 includes: The storage device sends the execution results to the cloud platform.
[0091] The storage device may send the execution results to the cloud platform in multiple ways. Several possible examples are given below.
[0092] Example 1: After the storage device obtains the execution result of a storage function, it immediately sends the execution result to the cloud platform.
[0093] Example 2: After the storage device obtains the execution results of all storage functions, it sends the execution results of all storage functions to the cloud platform.
[0094] Example 3: After an interval of a period of time, the storage device sends the execution results obtained by executing the storage function during this period of time to the cloud platform. This period of time can be preset.
[0095] Example 4: After the available storage capacity of the storage space storing the execution results reaches the capacity threshold, the storage device sends the execution results obtained by executing the storage function stored in the storage space to the cloud platform. This capacity threshold can be preset.
[0096] The above gives possible examples of the storage device sending the execution results to the cloud platform. According to the needs of actual applications, the storage device can also use other methods to send the execution results to the cloud platform.
[0097] S470: The cloud platform receives the execution results of the storage device.
[0098] In a possible scenario, after the cloud platform receives the execution results of the storage device, the cloud platform can also use a variety of detection schemes to detect the parameters returned by the storage device when executing a variety of storage functions, and obtain the detection results. The detection results include the storage functions that are successfully executed and the storage functions that are not successfully executed among the various storage functions.
[0099] S480: When the execution results indicate that multiple storage functions are successful, the cloud platform accesses the storage device.
[0100] In a possible scenario, the cloud platform can also execute S480A. S480A includes: when the execution results indicate that multiple storage functions are not successful, the cloud platform does not access the storage device.
[0101] The cloud platform can use the following method to determine whether the cloud platform accesses the storage device. This method includes: the cloud platform compares the storage functions that are successfully executed among the multiple storage functions with the access conditions. If the storage functions that are successfully executed among the multiple storage functions include the storage functions that the storage device needs to successfully execute, the cloud platform accesses the storage device. Otherwise, the cloud platform does not access the storage device.
[0102] Exemplarily, the access conditions may vary depending on the transmission protocols supported by the storage device. The cloud platform can obtain the access conditions matching the storage function according to the transmission protocol supported by the storage device. And the cloud platform compares the successfully executed storage functions among multiple storage functions with the storage functions that need to be successfully executed by the storage device indicated by the access conditions. If all the storage functions that need to be successfully executed by the storage device indicated by the access conditions have been successfully executed, the cloud platform accesses the storage device. If any one of the storage functions that need to be successfully executed by the storage device indicated by the access conditions has not been successfully executed, the cloud platform does not access the storage device. For example, for a storage device that supports the iSCSI protocol, the access condition is that the storage device needs to successfully execute storage function 1 to storage function i. The storage device supports the iSCSI protocol, and the execution result indicates that storage function 1 to storage function i have all been successfully executed. In this case, since all the storage functions that need to be successfully executed by the storage device indicated by the access conditions have been successfully executed, the cloud platform accesses the storage device.
[0103] In a possible scenario, the storage device that sends a connection request to the cloud platform refers to the storage device that has passed the access test of the test tool kit, that is, the storage device that has passed the offline access test described above. The computing device can use the test tool kit to implement the offline access test of the storage device. Figure 5 The flowchart of the offline access test provided by the embodiments of the present application is as Figure 5 shown, and this process may include the following steps ① to ⑥.
[0104] Step ①, the computing device receives the test tool kit.
[0105] Step ②, the storage device sends a connection request to the computing device.
[0106] Step ③, the computing device receives the connection request sent by the storage device.
[0107] Step ④, the computing device uses the test tool kit and performs an offline access test on the storage device using the test tool kit to obtain a test result.
[0108] Step ⑤, the computing device sends the test result to the storage device.
[0109] Step ⑥, the storage device receives the test result.
[0110] In the case where the test result indicates that the cloud platform can access the storage device, the storage device executes S430 to send a connection request to the cloud platform. For the specific content of the above steps ① to ⑥, please refer to the relevant descriptions above and will not be elaborated here.
[0111] Figure 6 The schematic diagram of the architecture for the cloud platform to access the storage device provided by the embodiments of the present application is asFigure 6 As shown, the cloud platform abstracts the storage device according to the transmission protocol to obtain a model abstraction of the storage device. The cloud platform abstracts various storage functions to obtain implementation solutions (referred to as "solutions" in the figure) of various storage functions under different transmission protocols. And the storage device implements various storage functions according to the implementation solutions of various storage functions indicated by the cloud platform. The cloud platform generates and publishes test suites for detecting multiple storage functions implemented by the storage device. Figure 7 The following is an example diagram of a cloud platform accessing a storage device provided by an embodiment of the present application, as Figure 7 shown. The storage device supports Transmission Protocol 1, and Transmission Protocol 1 can be the iSCSI protocol. In this case, the cloud platform is interconnected with the storage device through an interface that supports Transmission Protocol 1, and detects various storage functions implemented by the storage device based on this interface.
[0112] In the present application, the cloud platform instructs the storage device to execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces through the multiple interfaces. In this way, the cloud platform instructs the storage device to execute multiple storage functions through multiple interfaces and obtains the execution results of multiple storage functions at one time. Compared with the cloud platform obtaining the execution result of one storage function at a time, the time for obtaining the execution results of the storage device executing multiple storage functions is shortened, and the efficiency of the cloud platform accessing the storage device is improved.
[0113] It can be understood that, in order to implement the functions in the above embodiments, the cloud platform includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should easily realize that, combining the units and method steps of each example described in the embodiments disclosed in the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the way of hardware or computer software driving hardware depends on the specific application scenarios and design constraints of the technical solution.
[0114] In the above text, in combination with Figures 1 to 7 , the method for a storage device to access a cloud platform provided according to this embodiment is described in detail. Next, in combination with Figure 8 , a device for a storage device to access a cloud platform provided according to this embodiment will be described.
[0115] Figure 8 The following is a schematic structural diagram of a device for a cloud platform to access a storage device provided by an embodiment of the present application. This device can be used to implement the functions of the cloud platform in the above method embodiments, and thus can also achieve the beneficial effects possessed by the above method embodiments. In this embodiment, this device can be a computing node 311 as Figure 3A shown, or can also be a module (such as a chip) applied to the computing node 311.
[0116] As Figure 8As shown, device 800 includes a transceiver module 810 and a processing module 820. Device 800 is used to implement the above Figure 4 functions of the cloud platform in the method embodiments shown.
[0117] The transceiver module 810 is used to receive the connection request sent by the storage device, and instruct the storage device to execute various storage functions according to the implementation solutions corresponding to multiple interfaces through multiple interfaces, and receive the execution results of the storage device. For example, the transceiver module 810 is used to execute Figure 4 S410 in to receive the connection request sent by the storage device, execute S440 to instruct the storage device to execute various storage functions according to the implementation solutions corresponding to multiple interfaces through multiple interfaces, and execute S470 to receive the execution results of the storage device.
[0118] The processing module 820 is used to access the storage device. For example, the processing module 820 is used to execute Figure 4 S480 in.
[0119] It should be understood that the device 800 in the embodiments of the present application can be implemented by a DPU. The device 800 according to the embodiments of the present application can correspond to executing the methods described in the embodiments of the present application, and the above and other operations and / or functions of each module in the device 800 are respectively for implementing Figure 4 the corresponding processes of each method in, for the sake of brevity, will not be elaborated here.
[0120] For a more detailed description of the above transceiver module 810 and processing module 820, reference can be directly made to the relevant descriptions in the method embodiments shown in the foregoing drawings, and will not be elaborated here.
[0121] Among them, both the transceiver module 810 and the processing module 820 can be implemented by software, or can be implemented by hardware. Exemplarily, next, taking the transceiver module 810 as an example, the implementation manner of the transceiver module 810 will be introduced. Similarly, the implementation manner of the processing module 820 can refer to the implementation manner of the transceiver module 810.
[0122] Figure 9 It is a schematic structural diagram of another device for a cloud platform to access a storage device provided by the embodiments of the present application. This device can be used to implement the functions of the storage device in the above method embodiments, and thus can also achieve the beneficial effects possessed by the above method embodiments. In this embodiment, this device can be, for example, Figure 4 the storage node 321 shown.
[0123] As Figure 9 shown, device 900 includes a transceiver module 910, a processing module 920, and a storage module 930. Device 900 is used to implement the functions of the storage device in the method embodiments shown above Figure 4 in.
[0124] For example, the transceiver module 910 is used to execute Figure 4 S440A in to receive an instruction from the cloud platform to perform multiple storage functions according to implementation solutions corresponding to multiple interfaces sent through the multiple interfaces, and execute S460 to send an execution result to the cloud platform.
[0125] The processing module 920 is used to obtain the execution results of multiple storage functions. For example, the processing module 920 is used to execute Figure 4 S450 in.
[0126] The storage module 930 is used to store codes for implementing multiple storage functions according to implementation solutions of multiple storage functions in the test tool kit.
[0127] It should be understood that the device 900 according to the embodiments of the present application can be implemented by a DPU. The device 900 according to the embodiments of the present application can correspond to executing the methods described in the embodiments of the present application, and the above and other operations and / or functions of each module in the device 900 are respectively for implementing Figure 4 the corresponding processes of each method in, and for the sake of brevity, they will not be described in detail here.
[0128] For a more detailed description of the above transceiver module 910 and processing module 920, reference can be directly made to the relevant descriptions in the method embodiments shown in the foregoing drawings, and details will not be repeated here.
[0129] Among them, both the transceiver module 910 and the processing module 920 can be implemented by software or by hardware. Exemplarily, taking the transceiver module 910 as an example, the implementation manner of the transceiver module 910 will be introduced below. Similarly, the implementation manner of the processing module 920 can refer to the implementation manner of the transceiver module 910.
[0130] As an example of a software functional unit, the transceiver module 810 and the transceiver module 910 can include codes running on a computing instance. Among them, the computing instance can include at least one of a physical host (computing device), a virtual machine, and a container. Further, the above computing instance can be one or more. For example, the transceiver module can include codes running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers for running the code can be distributed in the same region, or can be distributed in different regions. Further, the multiple hosts / virtual machines / containers for running the code can be distributed in the same availability zone (AZ), or can be distributed in different AZs, and each AZ includes one data center or multiple geographically close data centers. Among them, generally one region can include multiple AZs.
[0131] Similarly, multiple hosts / virtual machines / containers for running the code can be distributed within the same virtual private cloud (VPC) or across multiple VPCs. Generally, one VPC is set up within one region. For cross-region communication between two VPCs within the same region or between VPCs in different regions, a communication gateway needs to be set up within each VPC, and the interconnection between VPCs is achieved through the communication gateway.
[0132] As an example of a hardware functional unit, the transceiver module 810 and the transceiver module 910 can include at least one electronic device, such as a server. Alternatively, the transceiver module 810 and the transceiver module 910 can also be devices implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). Among them, the aforementioned PLD can be implemented by a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0133] The multiple electronic devices included in the transceiver module 810 and the transceiver module 910 can be distributed within the same region or across different regions. The multiple electronic devices included in the transceiver module 810 and the transceiver module 910 can be distributed within the same availability zone (AZ) or across different AZs. Similarly, the multiple electronic devices included in the transceiver module 810 and the transceiver module 910 can be distributed within the same VPC or across multiple VPCs. Among them, the multiple electronic devices can be any combination of electronic devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0134] When the apparatus implements the method shown in any of the foregoing figures through hardware, Figure 8 or Figure 9 the functions of the shown apparatus can be implemented by an electronic device. In the case where Figure 10 the shown electronic device is used to implement Figure 8 the functions of the shown apparatus, the electronic device corresponds to Figure 3A the computing node in Figure 10 And in the case where Figure 9 the shown electronic device is used to implementFigure 3A The storage node in Figure 10 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. As Figure 10 shown, the electronic device 1000 includes: a bus 1010, a processor 1020, a memory 1030, and a communication interface 1040. The processor 1020, the memory 1030, and the communication interface 1040 communicate with each other through the bus 1010. The electronic device 1000 may be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in the electronic device 1000.
[0135] The bus 1010 may be a peripheral component interconnect (PCI) bus, an extended industry standard architecture (EISA) bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience of representation, Figure 10 only one line is used in
[0136] to represent it, but it does not mean that there is only one bus or one type of bus. The bus 1010 may include a path for transmitting information between various components of the electronic device 1000 (for example, the memory 1030, the processor 1020, and the communication interface 1040). Figure 8 When the electronic device 1000 is used to implement the functions of the Figure 9 device shown in
[0137] The memory 1030 may include volatile memory, such as random access memory (RAM). The processor 1020 may also include non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid state drive (SSD).
[0138] The executable program code is stored in the memory 1030, and the processor 1020 executes the executable program code to implement the functions of the foregoing transceiver module and processing module respectively, so as to implement the method for a cloud platform to access a storage device. That is to say, instructions for executing the method for a cloud platform to access a storage device are stored on the memory 1030.
[0139] Alternatively, executable code is stored in the memory 1030, and the processor 1020 executes the executable code to implement the foregoing device for a cloud platform to access a storage device respectively, so as to implement the method for a cloud platform to access a storage device. That is to say, instructions for executing the method for a cloud platform to access a storage device are stored on the memory 1030.
[0140] The communication interface 1040 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the electronic device 1000 and other devices or a communication network. For example, when the electronic device 1000 is used to implement Figure 8 the functions of the device shown, the communication interface 1040 executes S410 to receive a connection request sent by the storage device, or executes S440 to instruct the storage device to perform multiple storage functions according to the implementation solutions corresponding to multiple interfaces through the multiple interfaces, or executes S470 to receive the execution result of the storage device. Another example is that when the electronic device 1000 is used to implement Figure 9 the functions of the device shown, the communication interface 1040 executes S440A to receive an instruction for performing multiple storage functions according to the implementation solutions corresponding to multiple interfaces sent by the cloud platform through the multiple interfaces, or executes S460 to send the execution result to the cloud platform.
[0141] An embodiment of this application also provides a device cluster. The device cluster includes at least one electronic device. The electronic device may be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the electronic device may also be a terminal device such as a desktop computer, a laptop computer, or a smart phone.
[0142] Figure 11 FIG. is a schematic structural diagram of a device cluster provided by an embodiment of this application, asFigure 11 As shown, the device cluster includes at least one electronic device 1000. Instructions for executing the method of accessing a storage device on a cloud platform may be stored in the memory 1030 of one or more of the electronic devices 1000 in the device cluster.
[0143] In some possible implementation manners, partial instructions for executing the method of accessing a storage device on a cloud platform may also be separately stored in the memory 1030 of one or more of the electronic devices 1000 in the device cluster. In other words, a combination of one or more electronic devices 1000 may jointly execute the instructions for executing the method of accessing a storage device on a cloud platform.
[0144] It should be noted that the memories 1030 in different electronic devices 1000 in the device cluster may store different instructions, which are respectively used to execute partial functions of the device for accessing a storage device on a cloud platform. That is to say, the instructions stored in the memories 1030 of different electronic devices 1000 may implement the functions of one or more of the transceiver module and the processing module.
[0145] In some possible implementation manners, one or more electronic devices in the device cluster may be connected through a network. Among them, the network may be a wide area network or a local area network, etc. Figure 12 A possible implementation manner is shown. Figure 12 FIG. is a schematic connection diagram of an electronic device provided by an embodiment of the present application. As Figure 12 shown, two electronic devices 1000A and 1000B are connected through a network. Specifically, they are connected to the network through the communication interfaces in each electronic device. In this type of possible implementation manner, instructions for executing the function of the transceiver module are stored in the memory 1030 of the electronic device 1000A. At the same time, instructions for executing the function of the processing module are stored in the memory 1030 of the electronic device 1000B.
[0146] Figure 12 The connection manner between the device clusters shown may be considered as follows: Since the method of accessing a storage device on a cloud platform provided by the present application requires a large amount of transceiver instructions to implement various storage functions, it is considered to hand over the functions implemented by the transceiver module to the electronic device 1000A for execution.
[0147] It should be understood that Figure 12 the functions of the electronic device 1000A shown in FIG. may also be completed by multiple electronic devices 1000. Similarly, the functions of the electronic device 1000B may also be completed by multiple electronic devices 1000.
[0148] The embodiment of the present application also provides another device cluster. The connection relationship between the devices in this device cluster may be similarly referred to Figure 11 and Figure 12The connection method of the device cluster. Different from this, in the memory 1030 of one or more electronic devices 1000 in the device cluster, there may be stored the same instructions for executing the method for the cloud platform to access the storage device.
[0149] In some possible implementation manners, in the memory 1030 of one or more electronic devices 1000 in the device cluster, there may also be respectively stored partial instructions for executing the method for the cloud platform to access the storage device. In other words, the combination of one or more electronic devices 1000 can jointly execute the instructions for executing the method for the cloud platform to access the storage device.
[0150] It should be noted that the memories 1030 in different electronic devices 1000 in the device cluster can store different instructions for executing partial functions of the cloud platform access storage device system. That is to say, the instructions stored in the memories 1030 in different electronic devices 1000 can implement the functions of one or more devices in the cloud platform access storage device apparatus and the cloud platform access storage device apparatus.
[0151] The embodiment of the present application also provides a computer program product containing instructions. The computer program product can be software or a program product containing instructions that can run on an electronic device or be stored in any available medium. When the computer program product runs on at least one electronic device, it causes at least one electronic device to execute the method for the cloud platform to access the storage device, or the method for the cloud platform to access the storage device.
[0152] The embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that an electronic device can store or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid-state drive), etc. The computer-readable storage medium includes instructions, and the instructions instruct the electronic device to execute the method for the cloud platform to access the storage device, or instruct the electronic device to execute the method for the cloud platform to access the storage device.
[0153] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for a cloud platform to access a storage device, characterized in that The method is executed by a cloud platform, which is connected to a storage device through multiple interfaces. The cloud platform provides implementation solutions for multiple storage functions. One implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface. The method includes: Indicating, through the multiple interfaces, the storage device to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces; Receiving the execution results of the storage device; When the execution results indicate that the multiple storage functions are successful, accessing the storage device.
2. The method according to claim 1, wherein The indicating, through the multiple interfaces, the storage device to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces includes: Sending, through the multiple interfaces, a command to the storage device to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces.
3. The method according to claim 1 or 2, characterized in that, The execution results are the parameters returned by the storage device after executing the multiple storage functions; After receiving the execution results of the storage device, the method further includes: Detecting, using multiple detection solutions, the parameters returned by the storage device after executing the multiple storage functions to obtain detection results; The detection results include the storage functions successfully executed and the storage functions not successfully executed among the multiple storage functions; one detection solution is used to detect one storage function.
4. The method according to claim 3, wherein The accessing the storage device when the execution results indicate that the multiple storage functions are successful includes: Comparing the storage functions successfully executed among the multiple storage functions with the access conditions, where the access conditions are used to indicate the storage functions that the cloud platform requires the storage device to successfully execute; If the storage functions successfully executed among the multiple storage functions include the storage functions that the storage device needs to successfully execute, accessing the storage device.
5. The method according to any one of claims 1-4, characterized in that The method further includes: Generating and publishing a test tool kit; the test tool kit is used to detect the storage functions provided by the storage device, and the test tool kit includes at least one of the following: The implementation solutions of the multiple storage functions; Access conditions, which are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute; Detection solutions, which are used to detect storage functions.
6. The method according to any one of claims 1 to 3 or claim 5, characterized in that, The method further includes: When the execution results indicate that the multiple storage functions are not successful, not accessing the storage device.
7. The method according to any one of claims 1-6, wherein The storage device is used to indicate the storage device after being detected by the test tool kit; Wherein, the test tool kit is used to detect the storage functions provided by the storage device, and the test tool kit includes at least one of the implementation solutions of multiple storage functions, access conditions, and detection solutions. One implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface. The access conditions are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute. The detection solutions are used to detect storage functions.
8. A method for a cloud platform to access a storage device, characterized in that, The method is executed by a storage device, and the method includes: Receive the instructions sent by the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces; one interface corresponds to one implementation solution, and one implementation solution is used to implement one storage function; Obtain the execution results of the multiple storage functions; Send the execution results to the cloud platform.
9. The method according to claim 8, wherein, The receiving the instructions sent by the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces includes: Receiving the instructions sent by the cloud platform through multiple interfaces to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces.
10. The method according to claim 8 or 9, characterized in that, The method further includes: Receiving a test tool kit; the test tool kit is used to detect the storage functions provided by the storage device, and the test tool kit includes at least one of the following: The implementation solutions of the multiple storage functions; Access conditions, which are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute; Detection solutions, which are used to detect storage functions.
11. The method according to claim 10, wherein, Before receiving the instructions sent by the cloud platform through multiple interfaces to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces, the method further includes: Implementing the multiple storage functions according to the implementation solutions of the multiple storage functions in the test tool kit.
12. A device for a cloud platform to access a storage device, characterized in that, The device is connected to the storage device through multiple interfaces. The device provides implementation solutions for multiple storage functions. One implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface. A transceiver module, configured to: through the multiple interfaces, instruct the storage device to execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces; The transceiver module is further configured to: receive the execution results of the storage device; A processing module, configured to: when the execution results indicate that the multiple storage functions are successful, access the storage device.
13. The device according to claim 12, wherein, The transceiver module is further configured to: through the multiple interfaces, send a command to the storage device to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces.
14. The device according to claim 12 or 13, characterized in that The execution results are the parameters returned by the storage device after executing the multiple storage functions; The processing module is further configured to: use multiple detection solutions to detect the parameters returned by the storage device after executing the multiple storage functions, and obtain detection results; the detection results include the storage functions that are successfully executed and the storage functions that are not successfully executed among the multiple storage functions; one detection solution is used to detect one storage function.
15. The device according to claim 14, characterized in that, The processing module is specifically configured to: Compare the storage functions that are successfully executed among the multiple storage functions with the access conditions, and the access conditions are used to indicate the storage functions that the cloud platform requires the storage device to successfully execute; If the storage functions that are successfully executed among the multiple storage functions include the storage functions that the storage device needs to successfully execute, access the storage device.
16. The device according to any one of claims 12-15, wherein, The processing module is further configured to: generate a test toolkit for detecting the storage functions provided by a storage device, where the test toolkit includes at least one of the following: Implementation solutions for the multiple storage functions; Access conditions for indicating the conditions for the cloud platform to access the storage device, where the access conditions include the storage functions that the storage device needs to successfully execute; Detection schemes for detecting the storage functions; The transceiver module is further configured to: publish the test toolkit.
17. The device according to any one of claims 12 - 14 or claim 16, characterized in that The processing module is further configured to: When the execution result indicates that the multiple storage functions are not successful, do not access the storage device.
18. The apparatus according to any one of claims 12-17, wherein The storage device is used to indicate the storage device after passing the access test by the test toolkit; Wherein, the test toolkit is used to detect the storage functions provided by the storage device, and the test toolkit includes at least one of the implementation solutions for multiple storage functions, access conditions, and detection schemes. One implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface. The access conditions are used to indicate the conditions for the cloud platform to access the storage device, and the access conditions include the storage functions that the storage device needs to successfully execute. The detection scheme is used to detect the storage functions.
19. A device for a cloud platform to access a storage device, characterized in that, The apparatus includes: A transceiver module, configured to: receive an indication from the cloud platform to execute multiple storage functions according to the implementation solutions corresponding to multiple interfaces sent through the multiple interfaces; one interface corresponds to one implementation solution, and one implementation solution is used to implement one storage function; A processing module, configured to: obtain the execution results of the multiple storage functions; The transceiver module is further configured to: send the execution results to the cloud platform.
20. The device according to claim 19, wherein, The transceiver module is specifically configured to: Receive an indication from the cloud platform to synchronously execute multiple storage functions according to the implementation solutions corresponding to the multiple interfaces sent through the multiple interfaces.
21. The apparatus according to claim 19 or 20, wherein The transceiver module is further configured to: receive a test toolkit; the test toolkit is used to detect the storage functions provided by the storage device, and the test toolkit includes: implementation solutions for multiple storage functions, one implementation solution is used to implement one storage function, and one implementation solution corresponds to one interface.
22. The device according to claim 21, characterized in that, The processing module is further configured to: Implement the multiple storage functions according to the implementation solutions for the multiple storage functions in the test toolkit.
23. A device cluster, characterized in that, Comprising at least one electronic device, each electronic device includes a processor and a memory; The processor of the at least one electronic device is configured to execute instructions stored in the memory of the at least one electronic device, so that the device cluster executes the method according to any one of claims 1-7, or so that the device cluster executes the method according to any one of claims 8-11.
24. A computer program product comprising instructions, characterized in that, When the instructions are run by the device cluster, the device cluster is caused to execute the method according to any one of claims 1-7, or the device cluster is caused to execute the method according to any one of claims 8-11.
25. A computer-readable storage medium, characterized in that, Comprising computer program instructions which, when executed by a cluster of devices, cause the cluster of devices to perform the method according to any one of claims 1 to 7, or cause the cluster of devices to perform the method according to any one of claims 8 to 11.