Storage resource acquisition method and storage system
By automatically determining and transmitting target multipath policies on the storage side, the problem of low manual configuration efficiency and accuracy is solved, and the performance of host accessing storage resources is improved.
Patent Information
- Application Number
- CN202411943538.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-26
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2044-12-26
AI Technical Summary
In the prior art, artificially relying on cognitive and experience to configure multipathing strategies leads to reduced configuration efficiency and accuracy, affecting the performance of host accessing storage resources.
By obtaining the current host information and storage information on the storage side, determining the target multipath policy based on the pre-established correspondence relationship, and transmitting it to the host side, so that the host side can access the storage resources according to the target multipath policy.
It avoids the influence of human factors, improves the efficiency and accuracy of multi-path policy configuration, thereby ensuring the performance of host accessing storage resources.
Smart Images

Figure CN119620955A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of storage technology, and in particular to a storage resource acquisition method and a storage system. Background Art
[0002] Storage architecture refers to the overall design and organization of data storage, management and access in a computer system. In the storage architecture, the storage provides multiple data transmission channels for the host through multiple controllers and multiple ports, and there are multiple paths between the host and the storage. Multipath software is usually set on the host side to manage the multipath strategy of input / output (IO) operations, so that the host can access storage resources according to the multipath strategy.
[0003] In order to ensure the operation of multipath software, the related technology relies on human cognition and experience to configure the multipath strategy. Due to the influence of human factors, the configuration efficiency and accuracy are reduced, thus affecting the performance of the host accessing storage resources.
[0004] It can be seen that how to improve the efficiency and accuracy of multipath policy configuration to ensure the performance of host access to storage resources is a technical problem that people in this field urgently need to solve. Summary of the invention
[0005] The purpose of the present invention is to provide a storage resource acquisition method and storage system to solve the technical problem in the related art that when multipath strategies are configured for multipath software set on the host side by artificial reliance on cognition and experience, the configuration efficiency and accuracy are reduced due to the influence of human factors, thereby affecting the performance of the host accessing storage resources.
[0006] In order to solve the above technical problems, the present invention provides a method for acquiring storage resources, which is applied to a storage end, and the method comprises:
[0007] Obtaining current host information and current storage information; wherein the host information includes at least host operating system type information, host network topology information and host load information, and the storage information includes at least storage architecture information, storage network topology information and storage load information;
[0008] Determine a target multipath strategy corresponding to the current host information and the current storage information according to a pre-established correspondence relationship among the host information, the storage information and the multipath strategy;
[0009] The target multipath policy is transmitted to the host end so that the host end accesses the storage resource according to the target multipath policy.
[0010] On the one hand, obtaining the current host information includes:
[0011] Establishing an in-band communication link and an out-of-band communication link with the host end;
[0012] When it is detected that the communication through the in-band communication link is normal, receiving the current host information transmitted by the host end through the in-band communication link;
[0013] In the case where a communication anomaly is detected through the in-band communication link, current host information transmitted by the host end through the out-of-band communication link is received.
[0014] On the other hand, after transmitting the target multipath strategy to the host end, the method further includes:
[0015] Obtaining a data transmission path between a host end and a storage end within a first preset time period;
[0016] Determine a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period;
[0017] The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
[0018] On the other hand, the case of obtaining the data transmission path between the host end and the storage end within the first preset time period includes:
[0019] Obtain information sent by the host end for characterizing the status of the data transmission path between the host end and the storage end within the first preset time length; wherein the information includes first information, second information or third information; the first information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end decreases within the first preset time length; the second information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end increases within the first preset time length; the third information is information sent by the host end to the storage end when it detects that the data transmission path between the host end and the storage end is abnormal within the first preset time length;
[0020] Determine the data transmission path between the host end and the storage end within the first preset time period according to the information;
[0021] When the information is the first information or the third information, determining a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes:
[0022] Determine a fault path according to the first information or the third information;
[0023] Shielding the faulty path, and determining the new path strategy from the remaining data transmission paths; wherein the remaining data transmission paths are paths among all data transmission paths between the host end and the storage end except the faulty path;
[0024] The information is the second information, and the determining of a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes:
[0025] Determine a newly added path according to the second information;
[0026] The new path strategy is determined from all data transmission paths between the host end and the storage end according to the storage load information, the host load information and the newly added path.
[0027] On the other hand, after transmitting the target multipath strategy to the host end, the method further includes:
[0028] Get changes in stored information;
[0029] Determine a new path strategy according to the change of the storage information;
[0030] The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
[0031] On the other hand, determining a new path strategy according to the change of the storage information includes:
[0032] Starting from detecting that the storage architecture has changed, if it is detected that the storage architecture remains unchanged within a second preset time period, obtaining a first storage architecture before the storage architecture changes, a second storage architecture obtained after the storage architecture changes, and a data transmission path between the host end and the storage end under the first storage architecture;
[0033] If it is detected that the first storage architecture is changed to the second storage architecture and a path is to be added, a new path is added according to the second storage architecture and the data transmission path between the host end and the storage end under the first storage architecture to obtain the data transmission path between the host end and the storage end under the second storage architecture; the new path strategy is determined according to the data transmission path between the host end and the storage end under the second storage architecture;
[0034] Before the host accesses the storage resource according to the target multipath strategy, the method further includes:
[0035] The host end scans the newly added path according to the received information including the target multipath strategy;
[0036] If it is detected that the first storage architecture changes to the second storage architecture and a path reduction is expected, then according to the second storage architecture and the data transmission path between the host end and the storage end in the first storage architecture, the invalid path is removed to obtain the data transmission path between the host end and the storage end in the second storage architecture; the new path strategy is determined according to the data transmission path between the host end and the storage end in the second storage architecture;
[0037] Before the host accesses the storage resource according to the target multipath strategy, the method further includes:
[0038] The host side disables and removes the failed path according to the received information including the target multipath policy.
[0039] On the other hand, after transmitting the target multipath strategy to the host end, the method further includes:
[0040] Receiving first prompt information for indicating storage end component maintenance;
[0041] After receiving the first prompt information, a new path strategy is determined according to the condition of the component to be maintained;
[0042] Using the new path strategy as a new target multipath strategy, and entering the step of transmitting the target multipath strategy to the host end so that the host end accesses storage resources according to the target multipath strategy;
[0043] receiving second prompt information indicating that the storage end component has completed maintenance, and acquiring a current transmission path of data between the host end and the storage end;
[0044] Determine a new path strategy according to the current transmission path of the data between the host end and the storage end;
[0045] The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
[0046] In order to solve the above technical problems, the present invention further provides a method for obtaining storage resources, which is applied to a host side, and the method comprises:
[0047] Receive a target multipath strategy sent by a storage end; wherein the target multipath strategy is determined by the storage end acquiring current host information and current storage information, according to a pre-established correspondence between host information, storage information and multipath strategy; the host information at least includes host operating system type information, host network topology information and host load information, and the storage information at least includes storage architecture information, storage network topology information and storage load information;
[0048] The storage resource is accessed according to the target multipath policy.
[0049] In order to solve the above technical problems, the present invention further provides a storage system, comprising:
[0050] Memory for storing computer programs;
[0051] A processor is used to implement the steps of the above-mentioned method for acquiring storage resources when executing the computer program.
[0052] In order to solve the above technical problem, the present invention also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above storage resource acquisition method are implemented.
[0053] The beneficial effect of the present invention lies in that, in the method, the storage end obtains the current host information and the current storage information, determines the target multipath strategy corresponding to the current host information and the current storage information according to the pre-established correspondence between the host information, the storage information and the multipath strategy, and finally the storage end transmits the determined target multipath strategy to the host end, so that the host end can access the storage resources according to the target multipath strategy. Compared with the method of manually configuring the multipath strategy of the host side, in the method provided by the present invention, the storage side determines the target multipath strategy for the host side, which avoids the influence of human factors, improves the efficiency and accuracy of the multipath strategy configuration, and thus ensures the performance of the host accessing storage resources; moreover, the storage side determines the target multipath strategy corresponding to the current host information and the current storage information according to the correspondence relationship between the pre-established host information, storage information and multipath strategy, and the host information at least includes the operating system type information of the host, the network topology information of the host and the load information of the host, and the storage information at least includes the storage architecture information, the network topology information of the storage and the load information of the storage, that is, the operating system type of the host, the network topology information of the host and the storage, the load information of the host and the storage, and the storage architecture information are taken into consideration, so that the target multipath strategy can be reasonably determined, and the performance of the host accessing the storage resources through the target multipath strategy is ensured.
[0054] In addition, the host side can send host information to the storage side through an in-band communication link or an out-of-band communication link, thereby improving the success rate of host information transmission.
[0055] After the target multipath strategy is transmitted to the host, the path strategy can be adjusted according to the situation of the data transmission path between the host and the storage. Specifically, considering the situation that the number of data transmission paths between the host and the storage is reduced, the number of data transmission paths between the host and the storage is increased, or the data transmission path between the host and the storage is abnormal, that is, the corresponding new path strategy is determined under the situation of multiple data transmission paths between the host and the storage, so as to ensure that the host can access the storage resources according to the new path strategy as much as possible, and improve the overall flexibility, reliability and performance of the storage system.
[0056] After the target multipath strategy is transmitted to the host side, a new path strategy is determined according to the changes in storage information. Specifically, the new path strategy is considered in response to changes in the storage architecture (including the increase in paths to be generated after the storage architecture changes and the reduction in paths to be generated after the storage architecture changes) and maintenance (including upgrades) of storage side components. Similarly, the host side is guaranteed to access storage resources according to the new path strategy as much as possible, thereby improving the overall flexibility, reliability and performance of the storage system.
[0057] In addition, the present invention also provides a method for acquiring storage resources applied to a host side, which has the same or corresponding technical features as the above-mentioned method for acquiring storage resources, and has the same effects as above. The present invention also provides a storage system and a computer-readable storage medium, which can implement the steps of the above-mentioned method for acquiring storage resources, and has the same or corresponding technical features as the above-mentioned method for acquiring storage resources, and has the same effects as above. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] In order to more clearly illustrate the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0059] Figure 1 A flowchart of a method for acquiring storage resources applied to a storage end provided in an embodiment of the present invention;
[0060] Figure 2 A schematic diagram of a host-storage interaction scenario provided by an embodiment of the present invention;
[0061] Figure 3 A flowchart of a multipath configuration method applied to a host side provided by an embodiment of the present invention;
[0062] Figure 4 A flowchart of a multipath configuration method applied to a storage end provided by an embodiment of the present invention;
[0063] Figure 5 A structural diagram of a storage system provided in accordance with an embodiment of the present invention. DETAILED DESCRIPTION
[0064] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0065] The core of the present invention is to provide a method for acquiring storage resources and a storage system to solve the technical problem in the related art that when multi-path strategies are configured for multi-path software set on the host side by artificial reliance on cognition and experience, the configuration efficiency and accuracy are reduced due to the influence of human factors, thereby affecting the performance of the host accessing storage resources.
[0066] There is no limitation on the storage architecture used by the storage end of the present invention, as long as the storage can provide multiple data transmission channels for the host through multiple controllers and multiple ports, so that there are multiple paths between the host and the storage.
[0067] In order to enable those skilled in the art to better understand the solution of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods. Figure 1 A flowchart of a method for acquiring storage resources applied to a storage end provided in an embodiment of the present invention is shown in FIG. Figure 1 As shown, the method includes:
[0068] S10: Obtain current host information and current storage information;
[0069] S11: determining a target multipath strategy corresponding to the current host information and the current storage information according to a pre-established correspondence relationship among the host information, the storage information, and the multipath strategy;
[0070] S12: Transmit the target multipathing policy to the host side, so that the host side accesses the storage resource according to the target multipathing policy.
[0071] During the interaction between the host and the storage, information needs to be transmitted through the transmission link. Figure 2 A schematic diagram of a host-storage interaction scenario provided by an embodiment of the present invention. Figure 2As shown, the host end and the storage end can exchange information through an in-band communication link and an out-of-band communication link. In the embodiment of the present invention, the storage end is used to determine the target multipath strategy, and then the target multipath strategy is transmitted to the host. When determining the target multipath strategy, the storage end first obtains the current host information and the current storage information. In order to make the determined target multipath strategy more suitable, the host information in the embodiment of the present invention at least includes the host's operating system type information, the host's network topology information, and the host's load information.
[0072] In the implementation, obtaining the current host information includes: establishing an in-band communication link and an out-band communication link with the host end; receiving the current host information transmitted by the host end through the in-band communication link when it is detected that the communication through the in-band communication link is normal; receiving the current host information transmitted by the host end through the out-band communication link when it is detected that the communication through the in-band communication link is abnormal. That is, when the in-band communication between the host and the storage fails, out-band communication is tried first. When out-band communication is not set or out-band communication is also impossible, the communication modules at both ends enter the retry waiting mechanism and keep retrying at regular intervals before communication is restored.
[0073] In order to improve the automation of configuring the target multipath strategy for the host side, an agent program or script is set on the host side in an embodiment of the present invention. The host-side agent program or script is responsible for collecting data such as host information and host status, pushing relevant information to the storage side, executing the configuration plan after the storage decision, and maintaining a heartbeat with the host side.
[0074] The storage end obtains its own current storage information and the current host information sent by the host end. In order to make the determined target multipath strategy more appropriate, the storage information in the embodiment of the present invention at least includes storage architecture information, storage network topology information and storage load information.
[0075] After obtaining its own current storage information and the current host information sent by the host, the storage end determines the target multipath strategy corresponding to the current host information and the current storage information based on the pre-established correspondence between the host information, storage information and multipath strategy. In practice, the rules and strategies can be entered in advance, and the program can match according to the preset rules, and select the corresponding strategy according to the matching results; in addition, it can also be connected to the artificial intelligence big model, and the model can perform data analysis and decision-making to improve the flexibility and accuracy of decision-making.
[0076] After determining the target multipathing strategy, the storage end transmits the target multipathing strategy to the host end. After obtaining the target multipathing strategy, the host end can access the storage resources of the storage end according to the target multipathing strategy.
[0077] In the method provided by an embodiment of the present invention, the storage end obtains current host information and current storage information, determines the target multipath policy corresponding to the current host information and the current storage information according to the pre-established correspondence between the host information, the storage information and the multipath policy, and finally the storage end transmits the determined target multipath policy to the host end, so that the host end can access the storage resources according to the target multipath policy. Compared with the method of manually configuring the multipath strategy of the host side, in the method provided by the present invention, the storage side determines the target multipath strategy for the host side, which avoids the influence of human factors, improves the efficiency and accuracy of the multipath strategy configuration, and thus ensures the performance of the host accessing storage resources; moreover, the storage side determines the target multipath strategy corresponding to the current host information and the current storage information according to the correspondence relationship between the pre-established host information, storage information and multipath strategy, and the host information at least includes the operating system type information of the host, the network topology information of the host and the load information of the host, and the storage information at least includes the storage architecture information, the network topology information of the storage and the load information of the storage, that is, the operating system type of the host, the network topology information of the host and the storage, the load information of the host and the storage, and the storage architecture information are taken into consideration, so that the target multipath strategy can be reasonably determined, and the performance of the host accessing the storage resources through the target multipath strategy is ensured.
[0078] In practice, host information may change. If the host uses the previously determined target multipath policy to access resources, the performance of the host accessing storage resources may be affected. Therefore, after the target multipath policy is transmitted to the host, the following steps are also required:
[0079] Obtaining a data transmission path between a host end and a storage end within a first preset time period;
[0080] Determine a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period;
[0081] The new path policy is used as a new target multipath policy, and the target multipath policy is transmitted to the host side so that the host side accesses the storage resource according to the target multipath policy.
[0082] The first preset duration is not limited and is determined according to actual conditions. In some embodiments, the situation of obtaining the data transmission path between the host end and the storage end within the first preset duration includes:
[0083] Acquire information sent by the host end for characterizing the situation of the data transmission path between the host end and the storage end within a first preset time length; wherein the information includes first information, second information or third information; the first information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end decreases within the first preset time length; the second information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end increases within the first preset time length; the third information is information sent by the host end to the storage end when it detects that the data transmission path between the host end and the storage end is abnormal within the first preset time length;
[0084] Determine the data transmission path between the host end and the storage end within a first preset time period according to the information;
[0085] When the information is the first information or the third information, determining a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes:
[0086] Determine a fault path according to the first information or the third information;
[0087] The faulty path is shielded, and a new path strategy is determined from the remaining data transmission paths; wherein the remaining data transmission paths are all data transmission paths between the host end and the storage end except the faulty path.
[0088] The information is the second information, and determining a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes:
[0089] Determine a newly added path according to the second information;
[0090] According to the storage load information, the host load information and the newly added path, a new path strategy is determined from all data transmission paths between the host end and the storage end.
[0091] In the embodiment of the present invention, after the target multi-path strategy is transmitted to the host end, the path strategy can be adjusted according to the situation of the data transmission path between the host end and the storage end. Specifically, considering the situation that the number of data transmission paths between the host end and the storage end is reduced, the number of data transmission paths between the host end and the storage end is increased, or the data transmission path between the host end and the storage end is abnormal, that is, a corresponding new path strategy is determined under the situation of multiple data transmission paths between the host end and the storage end, so as to ensure that the host end can access the storage resources according to the new path strategy as much as possible, and improve the overall flexibility, reliability and performance of the storage system.
[0092] In the above, the multipath strategy is adjusted according to the changes in the host information. In practice, the storage information may also change on the storage side. Similarly, in order to make the determined multipath strategy more reasonable, after transmitting the target multipath strategy to the host side, it also includes:
[0093] Get changes in stored information;
[0094] Determine a new path strategy based on changes in storage information;
[0095] The new path policy is used as a new target multipath policy, and the target multipath policy is transmitted to the host side so that the host side accesses the storage resource according to the target multipath policy.
[0096] Specifically, determining a new path strategy according to changes in storage information includes:
[0097] Since the storage architecture is detected to have changed, if it is detected that the storage architecture remains unchanged within a second preset time period, a first storage architecture before the storage architecture is changed, a second storage architecture obtained after the storage architecture is changed, and a data transmission path between the host end and the storage end under the first storage architecture are obtained;
[0098] If it is detected that the first storage architecture changes to the second storage architecture and an additional path is expected to appear, a new path is added according to the data transmission path between the host end and the storage end under the second storage architecture and the first storage architecture to obtain the data transmission path between the host end and the storage end under the second storage architecture; and a new path strategy is determined according to the data transmission path between the host end and the storage end under the second storage architecture.
[0099] There is no limitation on the second preset time length, which is determined according to actual conditions. Further, before the host accesses the storage resource according to the target multipath strategy, the method further includes:
[0100] The host scans the newly added path according to the received information including the target multipath strategy;
[0101] If it is detected that the first storage architecture is changed to the second storage architecture and a path reduction is expected, then according to the second storage architecture and the data transmission path between the host end and the storage end in the first storage architecture, the invalid path is removed to obtain the data transmission path between the host end and the storage end in the second storage architecture; and a new path strategy is determined according to the data transmission path between the host end and the storage end in the second storage architecture;
[0102] Before the host accesses storage resources according to the target multipath policy, the following steps are also required:
[0103] The host disables and removes the failed path according to the received information including the target multipath policy.
[0104] The above article considers the method of determining a new path strategy when the storage architecture in the storage information changes. In implementation, it may also happen that the storage end components need to be maintained (such as upgraded). In this case, in order to guarantee the performance of the host end accessing the storage resources as much as possible, after transmitting the target multipath strategy to the host end, it also includes:
[0105] Receiving first prompt information for indicating storage end component maintenance;
[0106] After receiving the first prompt information, a new path strategy is determined according to the condition of the component to be maintained;
[0107] The new path strategy is used as a new target multipath strategy, and the target multipath strategy is transmitted to the host side so that the host side accesses the storage resource according to the target multipath strategy.
[0108] receiving second prompt information indicating that the storage end component has completed maintenance, and acquiring a current transmission path of data between the host end and the storage end;
[0109] Determine a new path strategy based on the current transmission path of data between the host end and the storage end;
[0110] The new path policy is used as a new target multipath policy, and the target multipath policy is transmitted to the host side so that the host side accesses the storage resource according to the target multipath policy.
[0111] In addition, the storage resource acquisition method also includes:
[0112] Monitor the communication link between the host and storage;
[0113] When it is monitored that the in-band communication link and the out-band communication link between the host end and the storage end are both normal, return to the step of obtaining the current host information and the current storage information;
[0114] When it is monitored that both the in-band communication link and the out-of-band communication link with the host are abnormal, determine whether the input / output path of the host is normal;
[0115] If yes, the control host keeps running the current policy;
[0116] If not, the control host matches the preset rules to update the path strategy.
[0117] In this method, if the host input / output path is not affected when communication is abnormal, the host continues to run using the current strategy. When the host input / output path changes at the same time, the host matches the preset rules to update the path strategy. When communication is restored, the storage decides a new path strategy and sends it to the host for execution. This achieves the adjustment of the path strategy used by the host in the event of communication abnormality.
[0118] In the storage resource acquisition method provided by the present invention, the storage and host-side agent programs or scripts cooperate with each other to transmit information through an in-band network or an out-of-band management network, so that the host automatically and dynamically configures the optimal multipath strategy (i.e., the target multipath strategy described above), and finally the host accesses the storage resources according to the optimal multipath strategy.
[0119] The specific implementation is as follows:
[0120] (1) The storage is initialized, volume division and host mapping are completed according to the plan, a dedicated multipath program is installed on the host, or a script is used with general / open source multipath software, and the agent program or script of the dedicated multipath software is run;
[0121] Among them, dedicated multipath software: storage manufacturers develop corresponding multipath software for different operating systems based on the characteristics of their own storage products. This type of multipath software often only serves the products of a certain manufacturer. After installing this type of multipath software, the host can perform simple configuration to meet the usage requirements;
[0122] General / open source multipath software: Each operating system usually provides open source or dedicated multipath software. Each storage manufacturer needs to configure corresponding parameters based on the characteristics of its own products to achieve the best use effect.
[0123] (2) Depending on the planning situation, use in-band notification by default or manually configure out-of-band communication;
[0124] (3) The program or script collects the corresponding data of the host and transmits it to the storage. The storage pushes the optimal configuration solution to the host based on the current scenario, and the host applies the optimal configuration solution.
[0125] (4) The host recognizes the storage volume and delivers it to the business as usual;
[0126] (5) The host and storage work together to monitor status changes in real time and dynamically adjust the optimal parameters;
[0127] (6) Test and verify the effects in various situations.
[0128] In order to enable those skilled in the art to better understand the multipath configuration method applied to a host in the storage resource acquisition method of the present invention, the following is a description thereof in conjunction with the accompanying drawings. Figure 3A flowchart of a multipath configuration method applied to a host side provided by an embodiment of the present invention is shown in FIG. Figure 3 As shown, the method includes:
[0129] S13: The program starts running;
[0130] S14: Collect host information;
[0131] S15: Determine whether the host and the storage are connected; if so, proceed to step S16; if not, proceed to step S22;
[0132] S16: Determine whether the host and storage heartbeats are normal; if so, proceed to step S17;
[0133] S17: The host pushes host information;
[0134] S18: receiving a multipath policy pushed by the storage;
[0135] S19: Apply multipath strategy;
[0136] S20: monitor host status;
[0137] S21: Determine whether the host status has changed; if so, return to step S17; if not, return to step S20;
[0138] S22: Determine whether out-of-band communication is configured; if so, proceed to step S23; if not, proceed to step S24;
[0139] S23: configure out-of-band communication;
[0140] S24: Wait for network connection and return to step S14.
[0141] In the method provided by the present invention, the program dynamically adjusts the optimal parameters based on the real-time status to replace manual decision-making and manual configuration of parameters, giving full play to the advantages of multi-path technology; when the network topology, system architecture, etc. change, no manual intervention is required to adjust the parameters, thereby improving the overall flexibility, reliability and performance of the information system and reducing the requirements for manual operation and maintenance; it has the advantages of high reliability, good performance, simple operation and maintenance, and improves the overall efficiency of the information system.
[0142] A method for acquiring storage resources applied to a storage end is described above. This embodiment further provides a method for acquiring storage resources applied to a host end. The method includes:
[0143] Receive a target multipath strategy sent by a storage end; wherein the target multipath strategy is determined by the storage end acquiring current host information and current storage information, according to a pre-established correspondence between host information, storage information and multipath strategy; the host information at least includes host operating system type information, host network topology information and host load information, and the storage information at least includes storage architecture information, storage network topology information and storage load information;
[0144] Access storage resources based on the target multipathing policy.
[0145] In order to enable those skilled in the art to better understand the multi-path configuration method applied to the storage end in the storage resource acquisition method of the present invention, the following is a description thereof in conjunction with the accompanying drawings. Figure 4 A flowchart of a multipath configuration method applied to a storage end provided by an embodiment of the present invention is shown in FIG. Figure 4 As shown, the method includes:
[0146] S25: storing collected information;
[0147] S26: Determine whether the host and the storage are connected; if so, proceed to step S27; if not, proceed to step S34;
[0148] S27: Determine whether the host and storage heartbeats are normal; if so, proceed to step S28;
[0149] S28: receiving host information;
[0150] S29: decide and push the optimal multi-path strategy;
[0151] S30: monitoring storage status;
[0152] S31: Determine whether the storage state has changed; if not, proceed to step S32; if so, return to step S29;
[0153] S32: monitor host status;
[0154] S33: Determine whether the host status has changed; if so, return to step S28; if not, return to step S30;
[0155] S34: Wait for the network to be connected, and return to step S26.
[0156] Since the method for acquiring storage resources applied to the storage end of this embodiment has the same or corresponding technical features as the method for acquiring storage resources applied to the storage end described above, and the method for acquiring storage resources applied to the storage end has been described in detail above, the embodiment of the method for acquiring storage resources applied to the storage end will not be repeated here, and the effect is the same as above.
[0157] In order to obtain storage resources at the storage end and the host end, an interaction module can be set at the storage end and an interaction module can also be set at the host end. In addition, a host monitoring module and a communication module are set at the host end; a storage monitoring module, a communication module and a storage path decision module are set at the storage end.
[0158] Storage-side interaction module: The storage management software or a separate module is responsible for collecting data such as the storage architecture, network topology, load, device status, and host information. It presets various scenario plans, makes matching decisions based on the collected information, and pushes them to the host-side application, maintaining a heartbeat with the host.
[0159] Host-side interaction module: The host-side agent program or script is responsible for collecting data such as host information and host status, pushing relevant information to the storage side, executing the configuration plan after the storage decision, and maintaining a heartbeat with the host side.
[0160] Information exchange: Information exchange between the host and storage can be transmitted in-band through the network, or through an out-of-band management network. Two-way data transmission is achieved through the Application Programming Interface (API).
[0161] Storage path decision module: By entering rules and strategies in advance, the program can match according to the preset rules and select the corresponding strategy based on the matching results. In the future, it can be connected to a large artificial intelligence model to perform data analysis and decision-making, thereby improving decision-making flexibility and accuracy.
[0162] Detection and application: The host and storage jointly detect host information, network topology, storage architecture, and device status. After the data is processed by the storage, the best configuration solution is returned to the host application.
[0163] Storage configuration plan: Storage manufacturers pre-set the optimal plan for different usage scenarios based on their own products. The manufacturers regularly update the preset plan or artificial intelligence automatically decides to generate the optimal configuration plan. In addition, redundant switching can be performed. The host and storage jointly monitor the changes in path status and select the optimal path in real time based on the path situation; when abnormalities are found in some links, other normal paths are actively selected for data transmission to avoid the performance impact caused by the host passively waiting for the path timeout switch. The host and storage jointly monitor the path load situation, combine the storage and host loads, consider load balancing, and select the optimal path for data transmission to reduce traffic congestion caused by bottlenecks on the host or storage end, thereby affecting performance.
[0164] When the program is started, the host monitoring module detects the path status and the communication module initiates a communication connection with the storage. When the communication cannot be completed, it keeps retrying and waiting. When the communication is normal, the host transmits the detection results to submit the storage decision. The submitted information includes the host operating system type, version, number of storage volumes, path, and connection method. The storage path decision module matches the best preset path strategy solution based on the current architecture and the path and operating system submitted by the host and returns it to the host receiving module. The host application module imports the multi-path strategy and activates it for use.
[0165] During normal operation of the host, the host-side monitoring module always monitors the host path status. When the path is reduced, the communication module interacts with the storage, the storage shields the faulty path and returns a new path strategy, and the host uses the new path strategy to run. When the faulty path is restored or a new path is added, similarly, the communication module interacts with the storage, the storage path decision module updates the path status and returns a new path strategy, and the host uses the new path strategy to run. When the host or storage monitoring module detects that a path has poor quality due to link or traffic problems, the storage path decision module updates the path status, shields the abnormal path and passes it to the host, and the host uses the updated path strategy to run. When the detection module detects that the path has returned to normal, the storage updates the path strategy to the host and runs.
[0166] The storage monitoring module constantly monitors the status of the storage and each host. When a change in the path status is detected, the path strategy is updated based on the status information reported by the host and sent to the host for execution. When the storage is undergoing equipment maintenance or upgrades, the storage decision module plans a new path strategy in advance based on the maintained or upgraded components and sends it to the host for execution, disabling the related paths that may be affected in advance to avoid the impact of maintenance or upgrade operations on the paths and causing abnormal host access to storage input / output. When the maintenance or upgrade is completed, the storage path module refreshes the path status and sends a new path strategy to the host for execution to restore normal status.
[0167] When the architecture changes on the storage side, such as changing a single machine to active-active online, changing a single machine to four controllers, changing four controllers to active-active online, etc., when the storage monitoring module detects that the architecture has changed and the architecture has stabilized, the storage path decision module adds new path information and adjusts the optimal path strategy based on the new architecture and link status. The new strategy is sent to the host for execution through the communication module. The host scans the newly added paths and forwards data according to the optimal strategy based on the new strategy information, thereby realizing automatic dynamic adjustment of the host path after the architecture change. When the storage has a situation where the number of paths is reduced due to active-active splitting of a single machine, the storage path decision module first removes the invalid path according to the split path information to generate a new optimal configuration and sends it to the host for execution. The host disables the invalid path and removes the path according to the strategy, and the execution result is returned to the storage. After receiving the successful execution result, the storage system completes the remaining splitting actions according to the original design of the storage system.
[0168] It is worth noting that if the host does not install and run the agent program or script, the storage communication module cannot receive the host reporting information. The storage monitoring module continuously monitors the communication status and passively cooperates with the host path strategy to be compatible with such hosts before successfully communicating with the host.
[0169] In the method provided by the embodiment of the present invention, through real-time data interaction between the host and the storage, the preset scheme is matched and the multipath strategy is automatically applied to realize the real-time and automated multipath strategy configuration function. Specifically, by using an agent program or script, the host information is automatically detected, and is transmitted to the corresponding processing module interface of the storage by the in-band or out-of-band network, and the current topology, architecture, load and state information are comprehensively stored, and the optimal configuration scheme is decided and sent to the host. The host receives the configuration scheme sent by the storage and applies it. At the same time, the host and the storage maintain a heartbeat connection. When the topology, architecture, load and state information of the host or storage end changes, the optimal scheme is evaluated in real time and adjusted to achieve automatic configuration and always ensure the optimal configuration. Since it can be adjusted in real time based on the acquired information, the performance impact caused by fault switching can be further reduced, and the load balancing degree can be improved. Different hosts with different operating systems, different hardware configurations, network topologies and business architectures all automatically decide and automatically apply the optimal scheme, eliminating manual operation and maintenance steps and reducing the difficulty of operation and maintenance.
[0170] In the above embodiments, the method for acquiring storage resources is described in detail, and the present invention also provides embodiments of a storage resource acquisition device and a storage system. It should be noted that the present invention describes the embodiments of the device part from two perspectives, one is based on the functional module perspective, and the other is based on the hardware perspective.
[0171] The storage resource acquisition device applied to the storage end provided in the embodiment of the present invention includes, based on the perspective of functional modules:
[0172] A first acquisition module is used to acquire current host information and current storage information; wherein the host information includes at least the host operating system type information, the host network topology information and the host load information, and the storage information includes at least the storage architecture information, the storage network topology information and the storage load information;
[0173] A first determination module is used to determine a target multipath strategy corresponding to the current host information and the current storage information according to a pre-established correspondence relationship among the host information, the storage information and the multipath strategy;
[0174] The transmission module is used to transmit the target multipath strategy to the host side so that the host side can access the storage resources according to the target multipath strategy.
[0175] In some embodiments, the storage resource acquisition device applied to the storage end further includes:
[0176] A second acquisition module is used to acquire the data transmission path between the host end and the storage end within a first preset time period;
[0177] A second determination module is used to determine a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period;
[0178] The first is a module for taking the new path strategy as a new target multi-path strategy and returning the triggered transmission module.
[0179] In some embodiments, the storage resource acquisition device applied to the storage end further includes:
[0180] The third acquisition module is used to obtain the change of the storage information;
[0181] A third determination module is used to determine a new path strategy according to changes in the storage information;
[0182] The second module is used to use the new path strategy as a new target multi-path strategy and return to trigger the transmission module.
[0183] In some embodiments, the storage resource acquisition device applied to the storage end further includes:
[0184] A first receiving module, used for receiving first prompt information for indicating maintenance of a storage end component;
[0185] A fourth determination module, configured to determine a new path strategy according to the condition of the component to be maintained starting from receiving the first prompt information;
[0186] The third module is used to use the new path strategy as a new target multi-path strategy and return to trigger the transmission module;
[0187] A receiving and obtaining module, used to receive the second prompt information used to indicate that the storage end component has completed maintenance, and obtain the current transmission path of the data between the host end and the storage end;
[0188] A fifth determination module, configured to determine a new path strategy according to a current transmission path of data between the host end and the storage end;
[0189] The fourth module is used to use the new path strategy as a new target multi-path strategy and return to trigger the transmission module.
[0190] The storage resource acquisition device applied to the host side provided in the embodiment of the present invention includes, based on the perspective of the functional modules:
[0191] The second receiving module is used to receive the target multipath strategy sent by the storage end; wherein the target multipath strategy is determined by the storage end acquiring the current host information and the current storage information according to the pre-established correspondence between the host information, the storage information and the multipath strategy; the host information at least includes the host operating system type information, the host network topology information and the host load information, and the storage information at least includes the storage architecture information, the storage network topology information and the storage load information;
[0192] The access module is used to access storage resources according to the target multipath policy.
[0193] Since the embodiments of the apparatus part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the apparatus part, which will not be repeated here.
[0194] Figure 5 This is a structural diagram of a storage system provided by an embodiment of the present invention. This embodiment is based on the hardware perspective, such as Figure 5 As shown, the storage system includes:
[0195] A memory 20, used for storing computer programs;
[0196] The processor 21 is used to implement the steps of the method for acquiring storage resources mentioned in the above embodiment when executing a computer program.
[0197] Among them, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one hardware form of a digital signal processor (DSP), a field-programmable gate array (FPGA), and a programmable logic array. The processor 21 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.
[0198] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, it can implement the relevant steps of the storage resource acquisition method disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include, but is not limited to, the data involved in the above-mentioned storage resource acquisition method, etc.
[0199] In some embodiments, the storage system may further include a display screen 22 , an input / output interface 23 , a communication interface 24 , a power supply 25 , and a communication bus 26 .
[0200] Those skilled in the art will understand that Figure 5 The structure shown in the figure does not constitute a limitation of the storage system, and may include more or fewer components than shown in the figure.
[0201] The storage system provided by the embodiment of the present invention includes a memory and a processor. When the processor executes the program stored in the memory, it can implement the following method: a method for acquiring storage resources, with the same effect as above.
[0202] An embodiment of the present invention further provides a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned method for acquiring storage resources when executed by a processor.
[0203] Finally, the present invention also provides an embodiment corresponding to a computer-readable storage medium. A computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps described in the above method embodiment (which may be a method corresponding to the host side, a method corresponding to the storage side, or a method corresponding to both the host side and the storage side) are implemented.
[0204] It is understandable that if the method in the above embodiment is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc. Various media that can store program codes.
[0205] The computer-readable storage medium provided by the present invention includes the above-mentioned method for acquiring storage resources, and the effect is the same as above.
[0206] The above is a detailed introduction to a storage resource acquisition method and storage system provided by the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the embodiments can be referenced to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principle of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the present invention.
[0207] It should also be noted that, in this specification, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device including the element.
Claims
1. A method for acquiring storage resources, characterized in that: Applied to the storage end, the method includes: Obtaining current host information and current storage information; wherein the host information includes at least host operating system type information, host network topology information and host load information, and the storage information includes at least storage architecture information, storage network topology information and storage load information; Determine a target multipath strategy corresponding to the current host information and the current storage information according to a pre-established correspondence relationship among the host information, the storage information and the multipath strategy; The target multipath policy is transmitted to the host end so that the host end accesses the storage resource according to the target multipath policy.
2. The method for acquiring storage resources according to claim 1, characterized in that: The obtaining of current host information includes: Establishing an in-band communication link and an out-of-band communication link with the host end; When it is detected that the communication through the in-band communication link is normal, receiving the current host information transmitted by the host end through the in-band communication link; In the case where a communication anomaly is detected through the in-band communication link, current host information transmitted by the host end through the out-of-band communication link is received.
3. The method for acquiring storage resources according to claim 1, characterized in that: After transmitting the target multipath strategy to the host end, the method further includes: Obtaining a data transmission path between a host end and a storage end within a first preset time period; Determine a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period; The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
4. The method for acquiring storage resources according to claim 3, characterized in that: The case of obtaining the data transmission path between the host end and the storage end within the first preset time period includes: Obtain information sent by the host end for characterizing the status of the data transmission path between the host end and the storage end within the first preset time length; wherein the information includes first information, second information or third information; the first information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end decreases within the first preset time length; the second information is information sent by the host end to the storage end when it detects that the number of data transmission paths between the host end and the storage end increases within the first preset time length; the third information is information sent by the host end to the storage end when it detects that the data transmission path between the host end and the storage end is abnormal within the first preset time length; Determine the data transmission path between the host end and the storage end within the first preset time period according to the information; When the information is the first information or the third information, determining a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes: Determine a fault path according to the first information or the third information; Shielding the faulty path, and determining the new path strategy from the remaining data transmission paths; wherein the remaining data transmission paths are paths among all data transmission paths between the host end and the storage end except the faulty path; The information is the second information, and the determining of a new path strategy according to the data transmission path between the host end and the storage end within the first preset time period includes: Determine a newly added path according to the second information; The new path strategy is determined from all data transmission paths between the host end and the storage end according to the storage load information, the host load information and the newly added path.
5. The method for acquiring storage resources according to claim 1, characterized in that: After transmitting the target multipath strategy to the host end, the method further includes: Get changes in stored information; Determine a new path strategy according to the change of the storage information; The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
6. The method for acquiring storage resources according to claim 5, characterized in that: Determining a new path strategy according to the change of the storage information includes: Starting from detecting that the storage architecture has changed, if it is detected that the storage architecture remains unchanged within a second preset time period, obtaining a first storage architecture before the storage architecture changes, a second storage architecture obtained after the storage architecture changes, and a data transmission path between the host end and the storage end under the first storage architecture; If it is detected that the first storage architecture is changed to the second storage architecture and a path is to be added, a new path is added according to the second storage architecture and the data transmission path between the host end and the storage end under the first storage architecture to obtain the data transmission path between the host end and the storage end under the second storage architecture; the new path strategy is determined according to the data transmission path between the host end and the storage end under the second storage architecture; Before the host accesses the storage resource according to the target multipath strategy, the method further includes: The host end scans the newly added path according to the received information including the target multipath strategy; If it is detected that the first storage architecture changes to the second storage architecture and a path reduction is expected, then according to the second storage architecture and the data transmission path between the host end and the storage end in the first storage architecture, the invalid path is removed to obtain the data transmission path between the host end and the storage end in the second storage architecture; the new path strategy is determined according to the data transmission path between the host end and the storage end in the second storage architecture; Before the host accesses the storage resource according to the target multipath strategy, the method further includes: The host side disables and removes the failed path according to the received information including the target multipath policy.
7. The method for acquiring storage resources according to claim 5, characterized in that: After transmitting the target multipath strategy to the host end, the method further includes: Receiving first prompt information for indicating storage end component maintenance; After receiving the first prompt information, a new path strategy is determined according to the condition of the component to be maintained; Using the new path strategy as a new target multipath strategy, and entering the step of transmitting the target multipath strategy to the host end so that the host end accesses storage resources according to the target multipath strategy; receiving second prompt information indicating that the storage end component has completed maintenance, and acquiring a current transmission path of data between the host end and the storage end; Determine a new path strategy according to the current transmission path of the data between the host end and the storage end; The new path strategy is used as a new target multipath strategy, and the step of transmitting the target multipath strategy to the host side is entered so that the host side accesses storage resources according to the target multipath strategy.
8. A method for acquiring storage resources, characterized in that: Applied to the host side, the method includes: Receive a target multipath strategy sent by a storage end; wherein the target multipath strategy is determined by the storage end acquiring current host information and current storage information, according to a pre-established correspondence between host information, storage information and multipath strategy; the host information at least includes host operating system type information, host network topology information and host load information, and the storage information at least includes storage architecture information, storage network topology information and storage load information; The storage resource is accessed according to the target multipath policy.
9. A storage system, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the method for acquiring storage resources as described in any one of claims 1 to 8 when executing the computer program.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method for acquiring storage resources according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Read-write method and device for intelligent storage device and intelligent storage device
CN101944185A
A communication path selection method an device
CN106527970A
Routing link management method and system, virtual routing gateway and host gateway
CN108322393A
Communication method and system in all-flash array system
CN108737154A
Storage path selection method, system and device for storage equipment
CN112684978A