In a single-fabric configuration, you can still connect each host initiator to each storage controller. Multipathing software is required on the host to manage multiple paths. Each host should have two initiators for multipathing to provide resiliency in the solution.
Each initiator can access a target port on both storage controllers in an HA configuration, but should only be zoned to the storage controllers that are providing the paths used for connectivity. This means that each initiator on the host might only have one target port per storage controller in its zone configuration. If there is a requirement for multipathing to the same storage controller, then each storage controller will have multiple ports per initiator in its zone configuration. This enables the host to still access its LUNs if a controller fails.
Single-fabric configurations are supported, but are not considered highly available. The failure of a single component can cause loss of access to data.
In the following figure, the host has two initiators and is running multipathing software. There are two zones: