[Pacemaker] Recommended versions for the cluster stack?

Andrew Beekhof andrew at beekhof.net
Tue Oct 13 14:04:35 EDT 2009


Feel like adding that to the wiki?

On Tue, Oct 13, 2009 at 7:04 PM, Jonathan <jdccdevel at gmail.com> wrote:
> Thomas Georgiou wrote:
>> I do not know what the recommended versions are, but I wrote ebuilds
>> for the pacemaker/corosync cluster stack with the latest versions that
>> were available at the time.  They are located here
>> http://code.tjhsst.edu/vm-overlay/vm-overlay.
> Unfortunately, I was not aware that those existed. However, I am going
> to take the recommendation NOT to use corosync yet (which sucks, as I'm
> not sure the rest of my stack will compile without it yet)
>>   I believe there might
>> be a small bug in the permissions in the pacemaker ebuild, but I do
>> not remember if I fixed it.  We are currently using the ebuilds in a
>> testing environment running semi-production services (secondary
>> mailserver, nameserver).  However, we do not have need of dlm, drbd,
>> or ocfs2 yet.  If you do use ebuilds, please respond with what you
>> used, or if you modify mine, how you modified them.
>>
>> Thomas Georgiou
>>
>> P.S. Now I see you already have things installed.  Did you install
>> them by hand, or through ebuilds?
>>
>>
> I built them all by hand. I'm not that handy with making ebuilds yet,
> and the packages in the standard tree are ancient.
>
> I used some instructions I found on the net as a starting point, but had
> to go on my own from there.
> Needless to say, it was a bit of a challenge, trying to get everything
> latest and greatest to build together.
>
> The bigest problems were with dlm (needed for ocfs2) and ocfs2, in
> particular getting them to build their pacemaker agents. (dlm_controld
> and ocfs2_controld)
>
> I have attached my notes. I was going to put together a HOWTO when I was
> done (or maybe some ebuilds), but I want to get the setup stable first.
>
> Some of the steps in my notes may no longer be relevant, as newer
> versions are available for some packages  (eg: ocfs2-tools)
>
> Thanks!
>
> Jonathan
>
> --
> J. deBoer Computer Consulting.
> 42 Birchmont Dr.
> Leduc, AB.
> T9E-8S4
> cell: 780-717-0669
>
>
> echo "dev-libs/nss" >> /etc/portage/package.keywords
> echo "dev-libs/nss utils" >> /etc/portage/package.use
> emerge dev-libs/nss
>
> Heartbeat/Corosync/OpenAIS/Pacemaker
> export PREFIX=/usr/local
> export LCRSODIR=$PREFIX/libexec/lcrso
> export STACKS_SUPPORTED="--with-ais --without-heartbeat"
>
> Heartbeat:
> archive at http://hg.linux-ha.org/dev/archive/tip.tar.bz2
> ./ConfigureMe bootstrap --prefix=$PREFIX
> make
> make install
>
> Corosync (>=1.0.0, only needed if using OpenAIS >= 1.0.0) :
> Get the latest corosync from SVN or pacemaker won't compile
> svn checkout http://svn.fedorahosted.org/svn/corosync/trunk corosync
> ./autogen.sh --prefix=$PREFIX
> ./configure --prefix=$PREFIX --with-lcrso-dir=$LCRSODIR
> make
> make install
> #cp init/generic /etc/init.d/corosync
>
> ln -s /usr/local/etc/corosync /etc/corosync
> echo "PKG_CONFIG_PATH=/usr/local/lib/pkgconfig" >> /etc/env.d/05pkg-config
> env-update
> source /etc/profile
>
>
> #OpenAIS (< 1.0.0) :
> #make PREFIX=$PREFIX LCRSODIR=$LCRSODIR
> #make install PREFIX=$PREFIX LCRSODIR=$LCRSODIR STATICLIBS=NO
>
> OpenAIS (>=1.0.0) :
> svn checkout http://svn.fedorahosted.org/svn/openais/trunk openais
> ./autogen.sh --prefix=$PREFIX
> ./configure --prefix=$PREFIX --with-lcrso-dir=$LCRSODIR
> make
> make install
> cp init/generic /etc/init.d/openais
> edit /etc/init.d/openais
>        between lines 50 and 51 (before prog is executed), add a line:
>        export COROSYNC_DEFAULT_CONFIG_IFACE="openaisserviceenable:openaisparser"
>
> add 21openais file to /etc/env.d:
> echo "LDPATH=\"/usr/local/lib/openais\"" >> /etc/env.d/21openais
>
> env-update
> source /etc/profile
>
> Pacemaker :
> wget http://hg.clusterlabs.org/pacemaker/stable-1.0/archive/tip.tar.bz2
> ./ConfigureMe bootstrap --prefix=$PREFIX --with-lcrso-dir=$LCRSODIR $STACKS_SUPPORTED
> make
> make install
>
> LibLogThread from Cluster:
> wget https://fedorahosted.org/releases/c/l/cluster/cluster-3.0.0.tar.gz
> #./configure --openaisincdir=/usr/local/include --openaislibdir=/usr/local/lib/openais --enable_pacemaker
> ./configure --openaisincdir=/usr/local/include --openaislibdir=/usr/local/lib/openais --corosyncincdir=/usr/local/include --corosynclibdir=/usr/local/lib/corosync --enable_pacemaker
> cd common/liblogthread
> make
> make install
>
> DLM and friends: (after openais) :
> Download from http://sources.redhat.com/cluster/wiki/
> download the latest DLM from GIT
> ./autogen.sh --prefix=/usr/local
> If the command does not work, you may need to modify configure.ac
>        change AC_PREREQ([[2.63b]) to be AC_PREREQ([2.63])
>        comment out LT_PREREQ and LT_INIT
> ./configure --prefix=/usr/local --enable-pacemaker --disable-cman
> change line 68 of group/dlm_controld/pacemaker.c to be:
>        log_error("Connection to our AIS plugin (%d) failed", PCMK_SERVICE_ID);
> make
> make install
>
> Setup LSB init scripts
> mkdir -p /lib/lsb
> cp init-functions  /lib/lsb/
> cp rc.status /lib/lsb
>
> ocfs2-tools 1.4.2+
> ./autogen.sh --prefix=/usr/local
> in Config.make
>        add -lpthread to COM_ERR_LIBS
> modify ./ocfs2_controld/Makefile
>        set line:
>                PCMK_INCLUDES = -I/usr/local/include/pacemaker -I/usr/local/include/heartbeat -I/usr/include/libxml2 $(GLIB_CFLAGS)
> modify ocfs2_controld/pacemaker.c:
>        set line 158:
>                 log_error("Connection to our AIS plugin (%d) failed", PCMK_SERVICE_ID);
> make
> make install
> cd vendor/common
> #cp o2cb.init /etc/init.d/o2cb
> #cp ocfs2.init /etc/init.d/ocfs2
> cp 51-ocfs2.rules /etc/udev/rules.d/
>
> mkdir -p /usr/lib/ocf/resource.d/ocfs2
> cp o2cb.ocf /usr/lib/ocf/resource.d/ocfs2/o2cb/
>
> #copy http://oss.oracle.com/pipermail/ocfs2-devel/attachments/20081118/9c3e6005/attachment.obj
> #       to /usr/lib/ocf/resource.d/ocfs2/o2cb
>
> #modify /usr/lib/ocf/resource.d/ocfs2/o2cb to point to the correct location of ocfs2_controld.pcmk
> #       DAEMON="/sbin/ocfs2_controld.${OCF_RESKEY_stack}"
>
> #chmod a+x /usr/lib/ocf/resource.d/ocfs2/o2cb
>
> Note: The XML for the o2cb resource in pacemaker would be:
>                 <primitive id="o2cb-pcmk" class="ocf" type="o2cb" provider="ocfs2"/>
>
>
> STONITH device scripts are found in:
> /usr/local/lib/stonith/plugins/external
>
>
> _______________________________________________
> Pacemaker mailing list
> Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
>
>



More information about the Pacemaker mailing list