system/pacemaker: Added (cluster resource manager)

This commit is contained in:
Zordrak 2010-04-18 01:05:53 -04:00 committed by David Somero
parent 146828eb2e
commit bf71889375
4 changed files with 162 additions and 0 deletions

30
system/pacemaker/README Normal file
View file

@ -0,0 +1,30 @@
pacemaker (a scalable High-Availability cluster resource manager)
Pacemaker achieves maximum availability for your cluster services
by detecting and recovering from node and service-level failures. It
achieves this by utilizing the messaging and membership capabilities
provided by your preferred cluster infrastructure (currently either
OpenAIS or Heartbeat), If the startup and shutdown of your service
can scripted, Pacemaker can improve it's availability. Pacemaker
can manage clusters of practically any size and comes with a powerful
dependency model for accurately modeling your environment.
Home: http://clusterlabs.org
Thanks to the decision of the developers to completely bypass
the standards most other projects conform to:
* The SlackBuild script contains hard-coding.
* The build depends on autoconf, automake and libtool.
* The build will produce soft-errors relating to mercurial,
with invalid single-operand basename and dirname calls.
This SlackBuild is configured to use libesmtp which is also
available from SBo. If you don't want esmtp support you should
change the "--with-esmtp \" line in the script to
"--without-esmtp \".
In order to have a functioning High Availability software stack,
before running this SlackBuild, build AND install, each in order,
the following other SlackBuilds.
Requires: libnet, libesmtp, clusterglue,,clusterresourceagents,
corosync, and openais all available at SlackBuilds.org.

View file

@ -0,0 +1,102 @@
#!/bin/sh
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009 Eric Hameleers <alien@slackware.com>, Eindhoven, Netherlands
# Slackware build script for pacemaker
# Written by Zordrak <sbo@tpa.me.uk>
# Based on http://slackbuilds.org/template.SlackBuild
# Modified by the SlackBuilds.org project
PRGNAM=pacemaker
VERSION=${VERSION:-b9b672590e79}
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$VERSION.tar.bz2
mv Pacemaker-1-1-$VERSION pacemaker-$VERSION
cd $PRGNAM-$VERSION
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--with-ais-prefix=$PREFIX \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux \
--with-lcrso-dir=/usr/libexec/lcrso \
--with-initdir=/etc/rc.d \
--with-snmp \
--with-esmtp \
--with-ais \
--without-heartbeat \
--enable-bundled-ltdl \
--enable-libnet
make
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
( cd $PKG/usr/man
find . -type f -exec gzip -9 {} \;
for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING COPYING.LIB \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cd doc
cp -a \
cibadmin.8 crm-flowchart.fig crm_cli.txt crm_resource.8 executioner.txt \
msg-schema.txt README.hb2openais cib-example-1.xml crm.txt \
crm_fencing.txt security.txt Pacemaker_Explained crm_cli.html \
crm_fencing.html publican-clusterlabs \
$PKG/usr/doc/$PRGNAM-$VERSION
cd ..
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -0,0 +1,10 @@
PRGNAM="pacemaker"
VERSION="b9b672590e79"
HOMEPAGE="http://clusterlabs.org"
DOWNLOAD="http://hg.clusterlabs.org/pacemaker/1.1/archive/b9b672590e79.tar.bz2"
MD5SUM="ff48a1a0736449f2da85e378c9f41ab3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Zordrak"
EMAIL="slackbuilds@tpa.me.uk"
APPROVED="dsomero"

View file

@ -0,0 +1,20 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in. You must
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
pacemaker: pacemaker (a scalable High-Availability cluster resource manager)
pacemaker:
pacemaker: Pacemaker achieves maximum availability for your cluster services
pacemaker: by detecting and recovering from node and service-level failures. It
pacemaker: achieves this by utilizing the messaging and membership capabilities
pacemaker: provided by your preferred cluster infrastructure (currently either
pacemaker: OpenAIS or Heartbeat), If the startup and shutdown of your service
pacemaker: can scripted, Pacemaker can improve it's availability. Pacemaker
pacemaker: can manage clusters of practically any size and comes with a powerful
pacemaker: dependency model for accurately modeling your environment.
pacemaker: Homepage: http://clusterlabs.org