[Pacemaker] Ordering clones and primitives

Dejan Muhamedagic dejanmm at fastmail.fm
Wed Nov 3 10:19:09 UTC 2010


Hi,

On Tue, Nov 02, 2010 at 04:15:56PM -0400, Lars Kellogg-Stedman wrote:
> > Right now, I don't have a solution for this problem using
> > clones if you're running pacemaker v1.0.x.
> 
> I went ahead and created two sets of Route resources.  Each one has to
> go into a separate routing table to prevent conflicts, which
> complicates things a bit, but it seems to work.  If the cluster grows
> beyond two IP addresses, this either means tremendously messy routing
> tables (/pacemaker configuration) or it means splitting the addresses
> into two atomic groups.  This is fine for HA, but would limit our
> ability to move around individual addresses for load balancing
> purposes.  Fortunately, we're not there yet, so this is just
> theoretical.
> 
> >  If you're with
> > v1.1.x, then you can specify clone instances in collocations
> > (i.e. clone_net_route:n where n is 0 or 1) and
> > validate-with="pacemaker-1.1" attribute in the cib tag. You'll
> > have to do the latter with cibadmin, the shell doesn't support
> > that.
> 
> Would you mind posting an example of this syntax?  I tried:
> 
>       <rsc_colocation id="ip_0_with_routes" score="INFINITY">
>         <resource_set id="ip_0_with_routes-0">
>           <resource_ref id="ip_0"/>
>           <resource_ref id="clone_net_route:0"/>
>           <resource_ref id="clone_def_route:0"/>
>         </resource_set>
>       </rsc_colocation>
> 
> (with validate-with="pacemaker-1.2")

It has to be pacemaker-1.1. Resource sets are not supported,
only 2-rsc constraints. See the schema:

[0]hex-10:~ > grep instance /usr/share/pacemaker/constraints-1.*
/usr/share/pacemaker/constraints-1.1.rng:           <attribute
name="rsc-instance"><data type="integer"/></attribute>
/usr/share/pacemaker/constraints-1.1.rng:           <attribute
name="with-rsc-instance"><data type="integer"/></attribute>
/usr/share/pacemaker/constraints-1.1.rng:           <attribute
name="first-instance"><data type="integer"/></attribute>
/usr/share/pacemaker/constraints-1.1.rng:           <attribute
name="then-instance"><data type="integer"/></attribute>

Though in the shell, you'd write rsc:n as you tried above.

Thanks,

Dejan

> But "cibadmin --replace ..." complains:
> 
>   Call cib_replace failed (-47): Update does not conform to the
> configured schema/DTD
> 
> And in the log:
> 
> 2010-11-02T16:14:15.367443-04:00 ircs-webfe-0 cib: [10403]: WARN:
> cib_process_request: Operation complete: op cib_replace for section
> constraints (origin=local/cibadmin/2, version=0.16.1): Update does not
> conform to the configured schema/DTD (rc=-47)
> 2010-11-02T16:14:34.918583-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Element resource_set has extra content: resource_ref
> 2010-11-02T16:14:34.918618-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Element rsc_colocation failed to validate content
> 2010-11-02T16:14:34.918626-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Element constraints has extra content: rsc_colocation
> 2010-11-02T16:14:34.918633-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Invalid sequence in interleave
> 2010-11-02T16:14:34.918639-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Element configuration failed to validate content
> 2010-11-02T16:14:34.918645-04:00 ircs-webfe-0 cib: [10403]: ERROR:
> Element cib failed to validate content
> 2010-11-02T16:14:34.918652-04:00 ircs-webfe-0 cib: [10403]: WARN:
> cib_perform_op: Updated CIB does not validate against pacemaker-1.1
> schema/dtd
> 
> I also tried using <resource_ref id="net_route:0"/>, etc, with the same result.
> 
> Cheers,
> 
> -- Lars
> 
> _______________________________________________
> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
> 
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker




More information about the Pacemaker mailing list