[ClusterLabs] Doing reload right
Adam Spiers
aspiers at suse.com
Thu Jul 21 15:44:36 UTC 2016
Ken Gaillot <kgaillot at redhat.com> wrote:
> On 07/20/2016 11:47 AM, Adam Spiers wrote:
> > Ken Gaillot <kgaillot at redhat.com> wrote:
> >> Hello all,
> >>
> >> I've been meaning to address the implementation of "reload" in Pacemaker
> >> for a while now, and I think the next release will be a good time, as it
> >> seems to be coming up more frequently.
> >
> > [snipped]
> >
> > I don't want to comment directly on any of the excellent points which
> > have been raised in this thread, but it seems like a good time to make
> > a plea for easier reload / restart of individual instances of cloned
> > services, one node at a time. Currently, if nodes are all managed by
> > a configuration management system (such as Chef in our case), when the
> > system wants to perform a configuration run on that node (e.g. when
> > updating a service's configuration file from a template), it is
> > necessary to place the entire node in maintenance mode before
> > reloading or restarting that service on that node. It works OK, but
> > can result in ugly effects such as the node getting stuck in
> > maintenance mode if the chef-client run failed, without any easy way
> > to track down the original cause.
> >
> > I went through several design iterations before settling on this
> > approach, and they are detailed in a lengthy comment here, which may
> > help you better understand the challenges we encountered:
> >
> > https://github.com/crowbar/crowbar-ha/blob/master/chef/cookbooks/crowbar-pacemaker/providers/service.rb#L61
>
> Wow, that is a lot of hard-earned wisdom. :-)
Yep 8-/
> I don't think the problem is restarting individual clone instances. You
> can already restart an individual clone instance, by unmanaging the
> resource and disabling any monitors on it, then using crm_resource
> --force-* on the desired node.
>
> The problem (for your use case) is that is-managed is cluster-wide for
> the given resource.
Exactly.
> I suspect coming up with a per-node
> interface/implementation for is-managed would be difficult.
>
> If we implement --force-reload, there won't be a problem with reloads,
> since unmanaging shouldn't be necessary.
OK, sounds good :)
> FYI, maintenance mode is supported for Pacemaker Remote nodes as of 1.1.13.
Yep, we're relying on it already!
More information about the Users
mailing list