As GSS’ most common storage issue, iSCSI Port Binding seems to be a pain point for many customers. Why is this— why so many calls and misconfigurations? I did a test session breaking out the iSCSI section from Cody Hosterman and my Core Storage Best practices session from VMworld, and I was amazed at the attendance! The first iSCSI Best Practices on VMlive had over 250 attendees! The same interest continued at VMUGs and Meet The Experts at VMworld. Just look at what Google shows when searching for VMware iSCSI!
VMFS, vVols, FCoE, and RDMs all support the iSCSI protocol, and it is understandable why it’s so popular. Plus, as more and more customers are migrating to high-performance Ethernet networks, 25Gb, 40Gb, and 100Gb, there is plenty of bandwidth for storage along with everything else. During infrastructure upgrades, many customers are ditching their old FC infrastructure and moving to iSCSI. Justifiably, spending more on a new FC and Ethernet versus a faster Ethernet is more economical. With all these migrations, I hear about more and more iSCSI issues, most of which have to do with port binding. As a result, I decided to write a blog and article to help understand when and when not to use Port Binding with iSCSI.
iSCSI Best Practice is to use Port Binding*
There are additional benefits of port binding over NIC teaming or unbound configurations. With port binding, the SCSI protocol will not only load balance across all bound ports and failover to other bound ports on link failure, but it will also use SCSI sense code errors to trigger failover as well.
*With that said, port binding is not always possible. In some cases, it must be configured differently depending on how your network is configured and your version of vSphere. Before vSphere 6.5, you cannot use port binding if you have to route your storage traffic. For example, if your virtual environment is on a different VLAN/subnet than your storage array. Alternatively, starting with vSphere 6.5, you can route iSCSI, but there are different configurations, some supporting port binding, and others not. It is easy to see why VMware GSS gets so many calls on iSCSI; in some cases, you need a decoder ring to get the configuration correct!
This started as a blog, but then quickly turned into a larger document. As such, I've added the document to Best Practices For Running VMware vSphere On iSCSI on storagehub.vmware.com so it may be referenced when needed.
The section is called iSCSI Port Binding Best Practices.
As recommended, follow your array vendor's best practices for configuration.