Multipath Connectivity
UltraPath
UltraPath is a Huawei-developed multipathing software. It can manage and process disk creation/deletion and I/O delivery of operating systems.
UltraPath provides the following functions:
- Masking of redundant LUNs
In a redundant storage network, an application server with no multipathing software detects a LUN on each path. Therefore, a LUN mapped through multiple paths is mistaken for two or more different LUNs. UltraPath installed on the application server masks redundant LUNs on the operating system driver layer to provide the application server with only one available LUN, the virtual LUN. In this case, the application server only needs to deliver data read and write operations to UltraPath that masks the redundant LUNs, and properly writes data into LUNs without damaging other data.
- Optimum path selection
In a multipath environment, the owning controller of the LUN on the storage system mapped to an application server is the prior controller. With UltraPath, an application server accesses the LUN on the storage system through the prior controller, thereby obtaining the highest I/O speed. The path to the prior controller is the optimum path.
- Failover and failback
- Failover
When a path fails, UltraPath fails over its services to another functional path.
- Failback
UltraPath automatically delivers I/Os to the first path again after the path recovers from the fault.
- Failover
- I/O Load balancing
UltraPath provides load balancing within a controller and across controllers.
- For load balancing within a controller, I/Os poll among all the paths of the controller.
- For load balancing across controllers, I/Os poll among the paths of all these controllers.
- Path test
UltraPath tests the following paths:
- Faulty paths
UltraPath tests faulty paths with a high frequency to detect the path recover as soon as possible.
- Idle paths
UltraPath tests idle paths to identify faulty paths in advance, preventing unnecessary I/O retries. The test frequency is kept low to minimize impact on service I/Os.
- Faulty paths
MPxIO/STMS
Multiplexed I/O (MPxIO), also known as StorageTek Manager Software (STMS), is a Solaris native multipathing software for storage devices accessible through multiple physical paths. STMS is supported in Solaris 8, 9, 10, and 11.
STMS has the following functional features:
- Manages multipathing configuration.
- Balances I/O load on a group of HBAs.
- Switches paths when links or controllers fail.
- Supports single instance multipath devices.
- Enables dynamic re-configuration.
STMS supports the following load balancing policies:
- Round_robin (default)
I/Os are concurrently delivered to all paths.
- None
I/Os are delivered only to one path to a LUN. After the path fails, I/Os are delivered to another path.
ALUA
- ALUA definition
Asymmetric Logical Unit Access (ALUA) is a multi-target port access model. In a multipathing state, the ALUA model provides a way of presenting active/passive LUNs to a host and offers a port status switching interface to switch over the working controller. For example, when a host multipathing program that supports ALUA detects a port status change (the port becomes unavailable) on a faulty controller, the program will automatically switch subsequent I/Os to the other controller.
- Support by Huawei storage
Old-version Huawei storage supports ALUA only in dual-controller configuration, but not in multi-controller or HyperMetro configuration.
New-version Huawei storage supports ALUA in dual-controller, multi-controller, and HyperMetro configurations.
Table 2-2 defines old- and new-version Huawei storage.
Storage Type |
Version |
Remarks |
---|---|---|
Old-version Huawei storage (namely, storage that does not support multi-controller ALUA or ALUA HyperMetro) |
OceanStor T V1/T V2/18000 V1/V300R001/V300R002/V300R003 /V300R005/Dorado V300R001C00 |
- |
New-version Huawei storage (namely, storage that supports multi-controller ALUA and ALUA HyperMetro) |
OceanStor V500R007C00 and later versions OceanStor V300R006C00 and later versions Dorado V300R001C01 and later versions |
V300R006C00: refers to only V300R006C00SPC100 and later versions. Dorado V300R001C01: refers to only V300R001C01SPC100 and later versions. |
- ALUA impacts
ALUA is mainly applicable to a storage system that has only one prior LUN controller. All host I/Os can be routed through different controllers to the working controller for execution. ALUA will instruct the hosts to deliver I/Os preferentially from the LUN working controller, thereby reducing the I/O routing-consumed resources on the non-working controllers.
If all I/O paths of the LUN working controller are disconnected, the host I/Os will be delivered only from a non-working controller and then routed to the working controller for execution.
- Suggestions for using ALUA on Huawei storage
To prevent I/Os from being delivered to a non-working controller, you are advised to ensure that:
- LUN home/working controllers are evenly distributed on storage systems so that host service I/Os are delivered to multiple controllers for load balancing.
- Hosts always try the best to select the optimal path to deliver I/Os even after an I/O path switchover.