Re: Adding "always on" modules

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 11 Jul 2018, Gregory Farnum wrote:
> On Wed, Jul 11, 2018 at 3:46 PM, Sage Weil <sweil@xxxxxxxxxx> wrote:
> > On Wed, 11 Jul 2018, John Spray wrote:
> >> Hi all,
> >>
> >> In discussion with Noah about using the inter-module calls[1], we got
> >> to thinking about whether we now need a dependency concept between
> >> modules.
> >>
> >> However, maybe we can avoid doing full-on dependency management --
> >> when there is a hard dependency, it's generally on an "infrastructure"
> >> type module (like "crash" or "progress").  Since those modules don't
> >> e.g. depend on external libraries or do external IO, it would be
> >> possible to simply always enable them on all systems.
> >>
> >> This would also simplify:
> >> - upgrades, where currently people don't get the new modules unless
> >> they explicitly enable them.
> >> - documentation, where functionality in an "always on " module
> >> wouldn't need to be caveated with instructions for enabling it, as the
> >> user wouldn't even notice that the functionality was coming from a mgr
> >> module.
> >>
> >> So, any thoughts on this?  Should we add an "always on" flag to
> >> MgrModule?  If we have it, is that going to be sufficient to avoid
> >> needing any more complex dependency management between modules?
> >
> > The idea that you can't disable the module is rubbing me the wrong
> > way.
> 
> Why? It sounds like these are modules in the sense that they use the
> module APIs, but they're still part of the manager's infrastructure
> that users need to leave on if they want sane behavior. We shouldn't
> constrain ourselves by trying to support and test bad configurations
> just because we are taking advantage of modular development!

Yep, I buy that!

+1 from me. :)

sage



> -Greg
> 
> >
> > On alternative would to be to enable the modules the first time they
> > appear--i.e. when you upgrade.  That would require a bit of state in
> > the mon to keep track of which ones were auto-enabled in the past so that
> > it is only done once. The first time the module claims to be 'on by
> > default' the mon will enable it.
> >
> > Alternatively, a config setting could list the 'always on' modules.  That
> > means the default value could be changed by us on upgrades etc.  The
> > danger is that the user might override it for some reason and then miss
> > out on new goodies on upgrade.
> >
> > sage
> > --
> > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux