ESX does not support dynamic multipathing. Therefore, manual multipathing must be configured on each ESX host. This is necessary, because if all datastores use the same path, I/O contention can appear. Example: as we are using an IBM DS 8000, we are able to use 8 targets (Storage Processors) on the device. An ESX host itself has 2 HBA’s (vmhba), so in total we have 16 paths to use.
A path is created by combining 3 components: HBA ID, target ID and LUN ID:
- X is the HBA ID (example: vmhba1)
- Y is the Target ID (example: vmhba1:0)
- Z is the LUN ID (example: vmhba1:0:0)
It is therefore easy to calculate the optimal path (see screenshot below). For the best performance, make sure all paths are divided equally. In our example below, vmhba1 has 4 paths and vmhba2 has 4 paths. Each target has 1 path. There are 8 SAN LUNs configured. When additional LUNs are created, (example: LUN 8), target 0 will get 2 paths, etc.
- Start the VI client & select a specific host
- Go to Configuration => Storage and select a datastore
- Click on properties => Manage paths
- Make sure FIXED (active/active array) is selected
- Use the results above to easily set a specific path (example: vmhba1:4:4)
- Click on Change and select Preferred to activate this path
- Repeat for all datastores/ESX host
- Have fun :)