[Pacemaker] RFC: Compacting constraints

Lars Marowsky-Bree lmb at suse.de
Thu Oct 29 09:39:13 EDT 2009


Hi all,

I have a pretty common use case - 4-16 nodes with OCFS2 etc, hosting a
ton of Xen/KVM guests.

Compacting the OCFS2 setup was pretty easy -
http://www.advogato.org/person/lmb/diary.html?start=104 - and that part
seems short enough. 

For each guest, I need an order and collocation constraint with the base
resources, which becomes complex and lengthy very quickly. Just to
illustrate my point:

colocation dummy1-c inf: base-clone dummy1
colocation dummy10-c inf: base-clone dummy10
colocation dummy11-c inf: base-clone dummy11
colocation dummy12-c inf: base-clone dummy12
colocation dummy13-c inf: base-clone dummy13
colocation dummy14-c inf: base-clone dummy14
colocation dummy15-c inf: base-clone dummy15
colocation dummy16-c inf: base-clone dummy16
colocation dummy17-c inf: base-clone dummy17
colocation dummy18-c inf: base-clone dummy18
colocation dummy19-c inf: base-clone dummy19
colocation dummy2-c inf: base-clone dummy2
colocation dummy3-c inf: base-clone dummy3
colocation dummy4-c inf: base-clone dummy4
colocation dummy5-c inf: base-clone dummy5
colocation dummy6-c inf: base-clone dummy6
colocation dummy7-c inf: base-clone dummy7
colocation dummy8-c inf: base-clone dummy8
colocation dummy9-c inf: base-clone dummy9
order dummy1-o 0: base-clone dummy1
order dummy10-o 0: base-clone dummy10
order dummy11-o 0: base-clone dummy11
order dummy12-o 0: base-clone dummy12
order dummy13-o 0: base-clone dummy13
order dummy14-o 0: base-clone dummy14
order dummy15-o 0: base-clone dummy15
order dummy16-o 0: base-clone dummy16
order dummy17-o 0: base-clone dummy17
order dummy18-o 0: base-clone dummy18
order dummy19-o 0: base-clone dummy19
order dummy2-o 0: base-clone dummy2
order dummy3-o 0: base-clone dummy3
order dummy4-o 0: base-clone dummy4
order dummy5-o 0: base-clone dummy5
order dummy6-o 0: base-clone dummy6
order dummy7-o 0: base-clone dummy7
order dummy8-o 0: base-clone dummy8
order dummy9-o 0: base-clone dummy9


There's a bunch of open issues (resource_sets not supporting score="0",
the crm shell not supporting resource_sets at all), but I'd even more
prefer if I didn't have to have both the order and collocation
constraints.

Could we introduce an "conjoin" dependency which merges both? I don't
much care whether this is done at the XML/CIB level, or at the shell
level (detect duplication and merge for the shell syntax - the advantage
would be that none of the other CIB consumers would need to be taught
about it); it should allow, of course, to specify both the ordering and
collocation scores.

So, I'd imagine that the above could be represented in the shell syntax
as:

conjoin dummies-dep base-clone {dummy1, dummy2, dummy3, ...} \
	meta score_collocation=infinity score_order=0


This would be an extremely desirable usability improvement, IMNSHO. I
welcome your feedback.


Regards,
    Lars

-- 
Architect Storage/HA, OPS Engineering, Novell, Inc.
SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
"Experience is the name everyone gives to their mistakes." -- Oscar Wilde





More information about the Pacemaker mailing list