Hi Andrew,

I transfered your config to my needings (i.a. without ocfs2/fs-xen) and
it live-migrate like a charme.

Thanks a lot.


Mit freundlichen Grüßen

Frank Meier
UNIX-Basis

Hamm Reno Group GmbH
Industriegebiet West | D-66987 Thaleischweiler-Fröschen
T.+49(0)6334 444-8322 | F.+49(0)6334 444-8190
frank.me...@hr-group.de | www.reno.de
___________________________________________________________________

Sitz: Am Tie 7 | D-49086 Osnabrück
Handelsregister Osnabrück HRB 19587
Geschäftsführer: Hans-Jürgen de Fries,
Jens Gransee, Manfred Klumpp,
Robert Reisch

Am 23.01.2012 23:04, schrieb Daugherity, Andrew W:
>> Date: Mon, 23 Jan 2012 07:24:58 +0100
>> From: Frank Meier <frank.me...@hr-group.de>
>> To: The Pacemaker cluster resource manager
>>       <pacemaker@oss.clusterlabs.org>
>> Subject: Re: [Pacemaker] Xen, Pacemaker and live migration
>> Message-ID: <4f1cfd3a.7020...@hr-group.de>
>> Content-Type: text/plain; charset="ISO-8859-1"
>>
>> Hi,
>>
>> there is an clvm:0 on the first and an clvm:1 on the second node. So
>> it's OK, isn't it?
> 
> It's OK in the sense that it's running on every node, yes, but it also hints 
> at the problem.  I encountered this too when setting up my Xen cluster.
> 
> With a colocation directive like yours:
>>> colocation VM1WithLVM1forVM1 inf: VM1 LVMforVM1
> 
> VM1 will get colocated with LVMforVM1:0 (for example), then the migration 
> attempt will check for LVMforVM1:0 on the other node, and not find it 
> (because it's LVMforVM1:1 there).  Pacemaker will then bail on live 
> migration, stop the VM, and then start it on the target node, where it will 
> now be colocated with LVMforVM1:1.
> 
> For the same reason, you don't want to exclusively open the LV or VG.
> 
> The solution is to use an order constraint instead of colocation.  The VM 
> doesn't need to be running with a specific cLVM instance, just started after 
> cLVM.
> 
> Also, as others have mentioned, using groups will simplify your 
> configuration, and you need to make sure your migrate_to timeout is long 
> enough (migrate_from just checks that the VM is running on the target, and 
> should complete nearly instantly).
> 
> For example, I have:
> ====
> primitive clvm ocf:lvm2:clvmd \
>         params daemon_timeout="30" \
>         op start interval="0" timeout="90" \
>         op stop interval="0" timeout="100"
> primitive clvm-xenvg ocf:heartbeat:LVM \
>         params volgrpname="xen_san"
> primitive cmirror ocf:lvm2:cmirrord \
>         params daemon_timeout="30" \
>         op start interval="0" timeout="90" \
>         op stop interval="0" timeout="100"
> primitive dlm ocf:pacemaker:controld \
>         op start interval="0" timeout="90" \
>         op stop interval="0" timeout="100"
> primitive fs-xen ocf:heartbeat:Filesystem \
>         params device="/dev/xen_san/meta" directory="/mnt/xen" fstype="ocfs2" 
> \
>         op start interval="0" timeout="60" \
>         op stop interval="0" timeout="60" \
>         op monitor interval="20" timeout="40"
> primitive o2cb ocf:ocfs2:o2cb \
>         op start interval="0" timeout="90" \
>         op stop interval="0" timeout="100"
> 
> primitive vm-webdev ocf:heartbeat:Xen \
>         params xmfile="/mnt/xen/vm/webdev" \
>         meta allow-migrate="true" target-role="Started" is-managed="true" \
>         utilization cores="2" mem="1024" \
>         op start interval="0" timeout="60" \
>         op stop interval="0" timeout="60" \
>         op migrate_to interval="0" timeout="180" \
>         op monitor interval="30" timeout="30" start-delay="60"
> (etc.)
> 
> group clvm-glue dlm clvm o2cb cmirror \
>         meta target-role="started"
> group xen-vg-fs clvm-xenvg fs-xen \
>         meta target-role="started"
> clone c-clvm-glue clvm-glue \
>         meta interleave="true" ordered="true"
> clone c-xen-vg-fs xen-vg-fs \
>         meta interleave="true" ordered="true"
> colocation colo-clvmglue-xenvgfs inf: c-xen-vg-fs c-clvm-glue
> 
> 
> order o-clvmglue-xenvgfs inf: c-clvm-glue c-xen-vg-fs
> 
> order o-webdev inf: c-xen-vg-fs vm-webdev
> (etc.)
> ====
> Each Xen VM resource has a corresponding order constraint starting it after 
> the clvm VG is active.  The only reason I split the CLVM into two groups is 
> so I could stop my fs-xen resource (an ocfs2 filesystem, stored on clvm, 
> where I store my Xen config files and lock files) without stopping clvmd 
> entirely.  This is important if I ever have to unmount and fsck it.
> 
> 
> Andrew Daugherity
> Systems Analyst
> Division of Research, Texas A&M University
> 
> 
> _______________________________________________
> Pacemaker mailing list: Pacemaker@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://bugs.clusterlabs.org

_______________________________________________
Pacemaker mailing list: Pacemaker@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://bugs.clusterlabs.org

Reply via email to