[ovirt-users] vdsm lvm filter

Jiri Belka jbelka at redhat.com
Fri Jun 19 08:51:23 UTC 2015


> I've got a setup with with ovirt and an equallogic iscsi. Im using the dell
> hit drivers. Install all good, after a reboot the storage won't come up.
> From the vdsm logs i can see the volume groups can't be found. in the lvm
> vgs command the following filter is used: [ '\''r|.*|'\'' ] .
> If I change the LVMCONF_TEMPLATE in /usr/share/vdsm/storage/lvm.py and add
> the filter [ "a|^/dev/eql/ovirt.*|" ], the volume group is found and storage
> will be attached.
> 
> How is the lvm filter constructed? And how can i make sure my volume groups
> are found without editing /usr/share/vdsm/storage/lvm.py?

A shoot from darkness...:

   134  USER_DEV_LIST = filter(None, config.get("irs", "lvm_dev_whitelist").split(","))
   135  
   136  
   137  def _buildFilter(devices):
   138      strippeds = set(d.strip() for d in devices)
   139      strippeds.discard('')  # Who has put a blank here?
   140      strippeds = sorted(strippeds)
   141      dmPaths = [dev.replace(r'\x', r'\\x') for dev in strippeds]
   142      filt = '|'.join(dmPaths)
   143      if len(filt) > 0:
   144          filt = "'a|" + filt + "|', "
   145  
   146      filt = "filter = [ " + filt + "'r|.*|' ]"
   147      return filt
   148  
   149  
   150  def _buildConfig(devList):
   151      flt = _buildFilter(chain(devList, USER_DEV_LIST))
   152      conf = LVMCONF_TEMPLATE % flt
   153      return conf.replace("\n", " ")

So maybe lvm_dev_whitelist option in vdsm.conf ?

j.



More information about the Users mailing list