On Wed, Jun 7, 2017 at 2:59 PM, Nelson Lameiras <nelson.lameiras@lyra-network.com> wrote:
Hello,

In our oVirt hosts, we are using DELL equallogic SAN with each server connecting to SAN via 2 physical interfaces. Since both interfaces share the same network (Equalogic limitation) we must patch the linux kernel to to allow iSCSI multipath with multiple NICs in the same subnet with sysctl :

--------------------------------------------------------------------------------------------
net.ipv4.conf.p2p1.arp_ignore=1
net.ipv4.conf.p2p1.arp_announce=2
net.ipv4.conf.p2p1.rp_filter=2

net.ipv4.conf.p2p2.arp_ignore=1
net.ipv4.conf.p2p2.arp_announce=2
net.ipv4.conf.p2p2.rp_filter=2


Hello Nelson,
nice to see another environment based on EQL iSCSI SAN.
The systctl.conf customized lines above are not what you mean with "we must patch the linux kernel", is it?
What do you mean exactly?

 

--------------------------------------------------------------------------------------------

This works great in most setups, but for a strange reason, on some of our setups, the sysctl configuration is updated by VDSM when activating a host and the second interface stops working immeadiatly :

--------------------------------------------------------------------------------------------
vdsm.log
2017-06-07 11:51:51,063+0200 INFO  (jsonrpc/5) [storage.ISCSI] Setting strict mode rp_filter for device 'p2p2'. (iscsi:602)
2017-06-07 11:51:51,064+0200 ERROR (jsonrpc/5) [storage.HSM] Could not connect to storageServer (hsm:2392)
Traceback (most recent call last):
  File "/usr/share/vdsm/storage/hsm.py", line 2389, in connectStorageServer
    conObj.connect()
  File "/usr/share/vdsm/storage/storageServer.py", line 433, in connect
    iscsi.addIscsiNode(self._iface, self._target, self._cred)
  File "/usr/lib/python2.7/site-packages/vdsm/storage/iscsi.py", line 232, in addIscsiNode
    iscsiadm.node_login(iface.name, target.address, target.iqn)
  File "/usr/lib/python2.7/site-packages/vdsm/storage/iscsiadm.py", line 337, in node_login
    raise IscsiNodeError(rc, out, err)


In my environment I don't see these kinds of problems.
I'm using plain CentOS 7.3 hosts as hypervisors; is this your case too or are you using ovirt-ng nodes?
 

--------------------------------------------------------------------------------------------


"strict mode" is enforced for second interface, and it no longuer works...
Which means - at least - that there is no redundancy in case of hardware faillure and this is not acceptable for our production needs.

What is really strange is that we have another "twin" site on another geographic region with simillar hardware configuration and same oVirt installation, and this problem does not happen.

What can be the root cause of this behaviour? How can I correct it?



Actually it is very strange to me to understand how you don't have problems on the other side.
My workaround to get multipath with EQL in oVirt was the one explained here with screenshots:
http://lists.ovirt.org/pipermail/users/2017-March/080992.html

It has been working now for about 3 months without problems. We have several Oracle RDBMS server VMs on it, from 2virtual threads and 8Gb of ram to 16 threads (2-4-2) and 64Gb of ram  
How did you configure multipath instead? As far as I know oVirt will not let you do it.
The only way would be to use bonding but that is not certified/supported by Dell.

HIH sharing experiences,
Gianluca