On Mon, Feb 01, 2021 at 04:10:02PM +0200, Nir Soffer wrote:
> On Mon, Feb 1, 2021 at 1:55 PM Gianluca Cecchi
> <[email protected]> wrote:
> >
> > On Sat, Jan 30, 2021 at 6:05 PM Strahil Nikolov <[email protected]> 
> > wrote:
> >>
> >> So you created that extra conf with this content but it didn't work ?
> >> multipath -v4 could hint you why it was complaining.
> >>
> >>
> >> Best Regards,
> >> Strahil Nikolov
> >>
> >
> > Ok, I missed the surrounding root part
> >
> > devices {
> >
> > }
> 
> It seems that we need more examples in multpath.conf file
> installed by vdsm.
> 
> > Apparently "multipathd show config" didn't complain...
> > Now I put also that and it seems to work, thanks for pointing it
> >
> > So at the end I have the multipath.conf default file installed by vdsm (so 
> > without the # PRIVATE line)
> > and this in /etc/multipath/conf.d/eql.conf
> >
> > devices {
> >     device {
> >         vendor                  "EQLOGIC"
> >         product                 "100E-00"
> 
> Ben, why is this device missing from multipath builtin devices?
> 

We usually get these from the device vendors themselves, or at least get
their blessing. But it's cerainly possible to add configs even without
the vendor's blessing.

> >         path_selector           "round-robin 0"
> >         path_grouping_policy    multibus
> >         path_checker            tur
> >         rr_min_io_rq            10
> >         rr_weight               priorities
> >         failback                immediate
> >         features                "0"
> 
> This is never needed, multipath generates this value.
> 
> Ben: please correct me if needed

That's not exactly correct. Multipath will override the "queue_if_no_path"
and "retain_attached_hw_handler" featurs, based on the values of the
retain_attached_hw_handler and no_path_retry options. It will leave any
other features alone. So, features like "pg_init_retries" and
"pg_init_delay_seconds" still need to be specified using the features
option. But you certianly don't ever need to specify a blank featues
line, not that it hurts anything.

> 
> >         no_path_retry            16
> 
> I'm don't think that you need this, since you should inherit the value from 
> vdsm
> multipath.conf, either from the "defaults" section, or from the
> "overrides" section.
> 
> You must add no_path_retry here if you want to use another value, and you 
> don't
> want to use vdsm default value.
> 
> Note that if you use your own value, you need to match it to sanlock 
> io_timeout.
> See this document for more info:
> https://github.com/oVirt/vdsm/blob/master/doc/io-timeouts.md
> 
> >     }
> > }
> >
> > Recreated initrd and rebooted the host and activated it without further 
> > problems.
> > And "multipathd show config" confirms it.
> 
> Yes, this is the recommended way to configure multipath, thanks Strahil for 
> the
> good advice!
> 
> > But still I see this
> >
> > # multipath -l
> > 36090a0c8d04f21111fc4251c7c08d0a3 dm-13 EQLOGIC,100E-00
> > size=2.4T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
> > `-+- policy='round-robin 0' prio=0 status=active
> >   |- 16:0:0:0 sdc 8:32 active undef running
> >   `- 18:0:0:0 sde 8:64 active undef running
> > 36090a0d88034667163b315f8c906b0ac dm-12 EQLOGIC,100E-00
> > size=2.0T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
> > `-+- policy='round-robin 0' prio=0 status=active
> >   |- 15:0:0:0 sdb 8:16 active undef running
> >   `- 17:0:0:0 sdd 8:48 active undef running
> >
> > that lets me think I'm not using the no_path_retry setting, but 
> > queue_if_no_path... I could be wrong anyway..
> 
> Not this is expected. What is means, if I understand multipath
> behavior correctly,
> that the device queue data for no_path_retry * polling_internal seconds when 
> all
> paths failed. After that the device will fail all pending and new I/O
> until at least
> one path is recovered.

Correct. This is just showing you the current configuration that the
kernel is using.  The kernel doesn't know anything about no_path_retry.
That is something that multipathd uses internally. It just switches on
and off the queue_if_no_path feature at the appropriate time.
Currently, you have usable paths, and so the queue_if_no_path features
should obviously be on.  Once you've lost all your paths, and they've
stayed down path the no_path_retry limit, multipathd will remove this
feature from the kernel device.  When a path is then restored, it will
add the feature back.

> > How to verify for sure (without dropping the paths, at least at the moment) 
> > from the config?
> > Any option with multipath and/or dmsetup commands?
> 
> multipath show config -> find your device section, it will show the current
> value for no_path_retry.
> 
> Nir
_______________________________________________
Users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Privacy Statement: https://www.ovirt.org/privacy-policy.html
oVirt Code of Conduct: 
https://www.ovirt.org/community/about/community-guidelines/
List Archives: 
https://lists.ovirt.org/archives/list/[email protected]/message/FCNZPJPVYBLM77LDML5GVNRXNXPEK6KI/

Reply via email to