I have several heartbeat clusters running Centos 5 and heartbeat 2.1.4.
We have been struggling to manage configuration updates to these
clusters without losing service - particularly when we are adding or
removing ip addresses. After experimentation I found the "cibadmin -R"
command. Then the following post led me to a method that seems to work:

http://oss.clusterlabs.org/pipermail/pacemaker/2009-June/001992.html

So now to make changes to /etc/ha.d/haresource take effect online I do
the following:

  /usr/lib/heartbeat/haresources2cib.py --stdout >/etc/ha.d/cib.xml
  cibadmin -Q >/etc/ha.d/cib-run.xml

  # get the admin_epoch from cib-run.xml and put one higher epoch into
our cib.xml
  ADMIN_EPOCH=`perl -ne \
                '/admin_epoch="(\d+)"/ && do {print $1+1,"\n"; exit}' \
                /etc/ha.d/cib-run.xml`
  export ADMIN_EPOCH
  perl -pi -e 's/admin_epoch="\d+"/admin_epoch="$ENV{ADMIN_EPOCH}"/' \
                /etc/ha.d/cib.xml

  # Load the new cib
  cibadmin -R -x /etc/ha.d/cib.xml

Is this procedure correct? I was surprised I couldn't find any
discussion of this process online. If I was using a newer pacemaker
would the process be simpler?

Thanks,
Martin



_______________________________________________
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