[ClusterLabs] Antw: [EXT] Coming in Pacemaker 2.0.5: finer control over resource and operation defaults
Ken Gaillot
kgaillot at redhat.com
Tue Aug 4 16:38:38 EDT 2020
On Fri, 2020-07-24 at 09:15 +0200, Ulrich Windl wrote:
> > > > Ken Gaillot <kgaillot at redhat.com> schrieb am 23.07.2020 um
> > > > 23:54 in
>
> Nachricht
> <99c11c73d59560fccd472d09c3b76073dab1b73e.camel at redhat.com>:
> > Hi all,
> >
> > Pacemaker 2.0.4 is barely out the door, and we're already looking
> > ahead
> > to 2.0.5, expected at the end of this year.
> >
> > One of the new features, already available in the master branch,
> > will
> > be finer‑grained control over resource and operation defaults.
> >
> > Currently, you can set meta‑attribute values in the CIB's
> > rsc_defaults
> > section to apply to all resources, and op_defaults to apply to all
> > operations. Rules can be used to apply defaults only during certain
> > times. For example, to set a default stickiness of INFINITY during
> > business hours and 0 outside those hours:
> >
> > <rsc_defaults>
> > <meta_attributes id="business‑hours" score="2">
> > <rule id="business‑hours‑rule" score="0">
> > <date_expression id="business‑hours‑expr"
> > operation="date_spec">
> > <date_spec id="business‑hours‑spec" hours="9‑17"
> > weekdays="1‑5"/>
> > </date_expression>
> > </rule>
> > <nvpair id="business‑hours‑stickiness"
> > name="resource‑stickiness"
> > value="INFINITY"/>
> > </meta_attributes>
> > <meta_attributes id="after‑hours" score="1" >
> > <nvpair id="after‑hours‑stickiness"
> > name="resource‑stickiness"
>
> value="0"/>
> > </meta_attributes>
> > </rsc_defaults>
> >
> > But what if you want to change the default stickiness of just pgsql
> > databases? Or the default timeout of only start operations?
>
> We are using a rather similar scenario, like the stickyness. However
> we
> distinguish between productive and "no so productive" (test,
> developement)
> resources. First we release the stickiness of non-essential resources
> so that
> they can be re-balanced if needed. Later when the productive
> resources are
> released, the nodes maybe balanced already using the non-essential
> resources.
>
> At the moment we copied the rules to each resource, which is not
> nice, of
> course.
>
> I'd appreciate:
> date_spec be defined once and reused often
> rule be defined once and reused often
Reusing a rule is already possible -- define it as usual in one place,
and in the other use <rule id-ref="original-rule-id"/>
That doesn't work for date_spec though.
>
> >
> > 2.0.5 will add new rule expressions for this purpose. Examples:
> >
> > <rsc_defaults>
> > <meta_attributes id="pgsql‑defaults" score="2">
> > <rule id="pgsql‑defaults‑rule" score="0">
> > <rsc_expression id="pgsql‑defaults‑expr" class="ocf"
> > provider="heartbeat" type="pgsqlms"/>
> > </rule>
> > <nvpair id="pgsql‑stickiness" name="resource‑stickiness"
> > value="INFINITY"/>
> > </meta_attributes>
> > </rsc_defaults>
> >
> > <op_defaults>
> > <meta_attributes id="start‑defaults" score="2">
> > <rule id="start‑defaults‑rule" score="0">
> > <op_expression id="start‑defaults‑expr" name="start"
> > interval="0"/>
> > </rule>
> > <nvpair id="start‑timeout" name="timeout" value="60s"/>
> > </meta_attributes>
> > </op_defaults>
> >
> > You can combine rsc_expression and op_expression in op_defaults
> > rules,
> > if for example you want to set a default stop timeout for all
> > ocf:heartbeat:docker resources.
> >
> > This obviously can be convenient if you have many resources of the
> > same
> > type, but it has one other trick up its sleeve: this is the only
> > way
> > you can affect the meta‑attributes of resources implicitly created
> > by
> > Pacemaker for bundles.
> >
> > When you configure a bundle, Pacemaker will implicitly create
> > container
> > resources (ocf:heartbeat:docker, ocf:heartbeat:rkt, or
> > ocf:heartbeat:podman) and if appropriate, IP resources
> > (ocf:heartbeat:IPaddr2). Previously, there was no way to directly
> > affect these resources, but with these new expressions you can at
> > least
> > configure defaults that apply to them, without having to use those
> > same
> > defaults for all your resources.
> > ‑‑
> > Ken Gaillot <kgaillot at redhat.com>
> >
> > _______________________________________________
> > Manage your subscription:
> > https://lists.clusterlabs.org/mailman/listinfo/users
> >
> > ClusterLabs home: https://www.clusterlabs.org/
>
>
>
> _______________________________________________
> Manage your subscription:
> https://lists.clusterlabs.org/mailman/listinfo/users
>
> ClusterLabs home: https://www.clusterlabs.org/
--
Ken Gaillot <kgaillot at redhat.com>
More information about the Users
mailing list