Change in vdsm[master]: Configure iSCSI iface.net_ifacename

sgotliv at redhat.com sgotliv at redhat.com
Sun Aug 31 08:33:52 UTC 2014


Sergey Gotliv has posted comments on this change.

Change subject: Configure iSCSI iface.net_ifacename
......................................................................


Patch Set 3:

(1 comment)

http://gerrit.ovirt.org/#/c/31534/3/vdsm/storage/iscsi.py
File vdsm/storage/iscsi.py:

Line 325:         self.name = name
Line 326: 
Line 327:         ni = netinfo.NetInfo()
Line 328:         network = tuple(ni.getBridgedNetworksAndVlansForIface(name))
Line 329: 
> Please don't abandon - whereever we find the interface to be used, we would
Dan, I see this issue in a different way. 

I don't care how many parameters I have to send from Engine to VDSM, after all we are talking about very small and limited number. All I care about is how setup a multipathing correctly, which means I need to understand the full set of mandatory parameters and who and how is responsible to retrieve them. My options are:

1. I have to send all necessary information from Engine to VDSM
or
2. I will send only partial information from Engine and let VDSM to complete a rest
or
3. Let's do everything in VDSM

Personally I prefer option #1, that way all relevant logic resides in the one place, but its arguable.

Now, what we need in order to configure an ISCSI iface properly? 
See this document http://www.open-iscsi.org/docs/README section 5.1.1, especially the first paragraph which clarifies that our existing configuration is working fine in case our NICs are in different subnets. 

Now let's talk about the corner case: both storage NICs are in the same subnet.
My opinion is that sending a MAC address from Engine should resolve the problem, of course we have to test it but if it works I prefer that solution because we shouldn't fix anything in VDSM. In case it doesn't work, I believe that Engine should calculate and send "net_ifacename" in addition to the NIC/VLAN name which is already sent today.
NIC/VLAN name is translated to "iface.iscsi_ifacename" while this new parameter will be translated to "iface.net_ifacename".

Does it make sense?
Line 330:         if network:
Line 331:             self._conf['iface.net_ifacename'] = network[0][0]
Line 332:         else:
Line 333:             self._conf['iface.net_ifacename'] = name


-- 
To view, visit http://gerrit.ovirt.org/31534
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3ebb2f272669b753700b57486d869b21dd16f2d6
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Amador Pahim <apahim at redhat.com>
Gerrit-Reviewer: Amador Pahim <apahim at redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken at redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk at redhat.com>
Gerrit-Reviewer: Sergey Gotliv <sgotliv at redhat.com>
Gerrit-Reviewer: automation at ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes


More information about the vdsm-patches mailing list