Category Cluster

MPICH

#MPICH
"wget http://www.mpich.org/static/downloads/3.2.1/mpich-3.2.1.tar.gz"
	"wget http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/1.0.8p1/mpich2-1.0.8p1.tar.gz"
"tar -xzf mpich2-1.0.8p1.tar.gz"
"cd mpich2-1.0.8p1"
mpich3: "./configure --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/usr/lib64 --includedir=/usr/include --enable-cache --enable-mpe --enable-cxx " ggf. mit --disable-fortran"
mpich2: "./configure" oder bei Suse "./configure --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/usr/lib --includedir=/usr/include --enable-cache --enable-mpe --enable-cxx"
"make"
"make install"

#Hydra
"wget http://www.mpich.org/static/downloads/3.2.1/hydra-3.2.1.tar.gz"
"tar -xzf hydra-3.2.1.tar.gz"
"cd hydra-3.2.1.tar.gz"
"...
Read More

Ceph

    -^-
   /   \
   |O o|
   ).-.(
  '/|||\`
  | '|` |
    '|`

lynx ceph.com/
Damit "Big Data" auch "Big Platz" hat.

ceph_cluster


Prerequirements / Info:
	A minimum of three monitors nodes are recommended for a cluster quorum (lynx http://ceph.com/planet/zero-to-hero-guide-for-ceph-cluster-planning/)
	Das Initial Filesystem unter "/var/lib/ceph/osd/ceph-<N>" braucht ca. 6 GB Platz, egal wie groß letzendlich die Platte ist. Realer "RAW" Platz sind es allerdings nur 15 MB. Der Rest wird vorallokiert.
	This compelling list of features makes btrfs the ideal choice for Ceph clusters. http://docs.ceph.com/docs/jewel/rados/configuration/filesystem-recommendations/#filesystem-background-info
																					 http://docs.ceph...
Read More

IPVS Linux Load Balancing Server

Zuerts Kernel mit "IP_Virtual_Server" Unterstützung kompilieren.
Dazu am besten einen neuen Kernel (2.6.24.4) downloaden und via "make xconfig" alle Komponenten unter
"Networking" / "IP virtual server support (EXPERIMENTAL) (IP_VS)" auswählen.
Damit sind die Kernel basierten Bausteine nun abgeschlossen. Um aber den IP_Virtual_Server zu administrieren
benötigt man noch das ipvsadm Tool.

libnl:
	"wget http://www.infradead.org/~tgr/libnl/files/libnl-3.2.25.tar.gz"
	"tar -xzf libnl-3.2.25.tar.gz"
	"cd libnl-3.2.25"
	"./configure --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/usr/lib64 --includedir=/usr/include"
	"make"
	"make install"
	"cp -frv /root/temp/loadbalancer/libnl-3.2...
Read More

Galera Cluster (MariaDB)

"lynx https://mariadb.com/kb/en/mariadb/mariadb-galera-cluster-10019-release-notes/"
"lynx https://downloads.mariadb.org/"
"lynx https://downloads.mariadb.org/mariadb-galera/10.0/"

"wget http://mirror.23media.de/mariadb/mariadb-galera-10.0.19/bintar-linux-x86_64/mariadb-galera-10.0.19-linux-x86_64.tar.gz"
"tar -xzf mariadb-galera-10.0.19-linux-x86_64.tar.gz"
"mv mariadb-galera-10.0.19-linux-x86_64 /usr/local"
"chown -R mysql:mysql /usr/local/mariadb-galera-10.0.19-linux-x86_64"
"ln -s /usr/local/mariadb-galera-10.0.19-linux-x86_64 /usr/local/mysql"
"ln -s /usr/local/mariadb-galera-10.0.19-linux-x86_64 /usr/local/mariadb"
"ln -s /usr/local/ssl/lib/libssl.so.1.0.0 /usr/lib64/libssl.so.6"
"ln -s /usr/local/ssl/lib/libcrypto.so.1.0...
Read More

Pacemaker Heartbeat Linux High Available How To

Die Software ist extrem kompliziert und schlecht dokumentiert.

Benötigt die aktuelle Version von libnet. Aber Achtung, sofern snort installiert ist gibt es Konflikte, da
snort im inline Modus unbedingt die ältere 1.0er Version braucht 🙁 .
Wenn das Management aktiviert ist (“–enable-mgmt”) benötigt man noch GNU/TLS und Python (PyGTK usw. [Am besten via Yast2 installieren, da tausend Abhängigkeiten an Python hängen]).

libnet:
“wget http://www.packetfactory.net/libnet/dist/libnet.tar.gz” oder “http://skylink.dl.sourceforge.net/project/libnet-dev/libnet-1.2-rc3.tar.gz”
“tar -xvzf libnet.tar.gz”
“cd libnet”
“./configure” oder bei SuSE “./configure –bindir=/usr/bin –sbindir=/usr/sbin –libdir=/usr/lib64 –includedir=/usr/include”
“make”
“make install”

auto...

Read More

IBM GPFS

##################################################
Commands

"mmlsfs all" = Zeigt alle Infos zum GPFS an
"mmlscluster"
"mmlsconfig"
"mmgetstate"
"mmgetstate -aLv"
"mmlsnsd"
"mmstartup"
"cat /var/adm/ras/mmfs.log.latest"
"rpm -qa | grep -i gpfs"

Installationpackete
	rpm -U gpfs.base-3.4.0-15.x86_64.update.rpm
	rpm -U gpfs.docs-3.4.0-15.noarch.rpm
	rpm -U gpfs.gpl-3.4.0-15.noarch.rpm
	rpm -U gpfs.msg.en_US-3.4.0-15.noarch...
Read More

GFS2 How To

GFS2 How To

Ist für den Produktiveinsatz besser geeignet als OCFS2 da 
kaputte nodes einfacher den Cluster joinen können.

###############################################################################################
Prererquisits:

nss				via Yast installieren
				http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_17_RTM/src/nss-3.17-with-nspr-4.10.7.tar.gz
				cp -frv /usr/include/nspr4/* /usr/include/

libqb			siehe Heartbeat Pacemaker Doku.

corosync 2 		siehe Heartbeat Pacemaker Doku.

Nicht unbedingt notwendig
ggf. libcab2
	"wget --no-check-certificate https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.24.tar.gz"
	"tar -xzf libcap-2.24.tar.gz"
	"cd libcap-2...
Read More

Cluster allgemein

Noch Bilderchen malen für
DRBD
DRBD + Hearbeat(Apache)
NBD + Heatbeat(Raid1 und 5 Share)
GNBD + OCFS2 + Hearbeat
iSCSI(LVM) + OCFS2 + Heartbeat (+ Xen oder VMware(Vbox) + nfs)
ctdb Samba
Veschidene Vor und Nachteile von GFS und OCFS bzw. NBD und GNBD
Harcore Ultra HA Cluster, indem alles und überal doppelt und dreifach vorhanden ist Weltweit übers Netz (VPN). [drbd/iscsi/heartbeat (Speicher Server)-> drbd/ocfs2/iscsi/md0/heartbeat(Anwendungs Server) -> cleint]
High Performance Cluster Mosix/Beowulf
Vergleich iSCSI vs. NBD/GNBD

#Zwei Knoten Cluster mit Hearbeat und DRBD####################################################################################################################
DRBD ist leider nur zu zwei Knoten fähig.

Erstens alle PCs bekannt machen...

Read More

DRBD (Distributed Replicated Block Device)

“wget http://oss.linbit.com/drbd/8.3/drbd-8.3.0.tar.gz”
“tar -xvzf drbd-8.3.0.tar.gz”
“cd drbd-8.3.0”
“make all”
“make install”

Auf node1 und node2 muss identisch sein:
“vi /etc/drbd.conf” ->
resource r0 {
protocol C;

handlers {
pri-on-incon-degr “echo o > /proc/sysrq-trigger ; halt -f”;
pri-lost-after-sb “echo o > /proc/sysrq-trigger ; halt -f”;
local-io-error “echo o > /proc/sysrq-trigger ; halt -f”;
outdate-peer “/usr/sbin/drbd-peer-autdater”;
}

startup { wfc-timeout 0; degr-wfc-timeout 120; }
disk { on-io-error detach; }
syncer { rate 10M; al-extents 257; }

net {
after-sb-0pri discard-younger-primary;
after-sb-1pri consensus;
after-sb-2pri disconnect;
rr-conflict call-pri-lost;
}

on node1 {
device     /dev/drbd0;
disk       /dev/sdb1;
address   ...

Read More

GFS / GNBD

Leider läßt sich das ganze unter openSuSE nicht realisieren

libqb:
“lynx https://github.com/asalkeld/libqb/wiki” oder
“wget wget –no-check-certificate https://fedorahosted.org/releases/q/u/quarterback/libqb-0.16.0.tar.gz”
“tar -xzf libqb-0.14.0.tar.gz”
“cd libqb-0.14.0”
Ab 0.16
“./autogen.sh”
“./configure –bindir=/usr/bin –sbindir=/usr/sbin –libdir=/usr/lib64 –includedir=/usr/include”
“make
“make install”

nss:
nss_devel via Yast installieren
oder testweise unter
“wget ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_13_5_RTM/src/nss-3.13.5-with-nspr-4.9.1.tar.gz”
“lynx http://www.mozilla.org/projects/security/pki/nss/buildnss_31.html”
“tar -xzf nss-3.13.5-with-nspr-4.9.1.tar.gz”

corosync:
“lynx https://github.com/fghaas/corosync”
“wget –no-...

Read More

Heartbeat (Linux HA)

Die Software ist extrem kompliziert und schlecht dokumentiert.

Benötigt die aktuelle Version von libnet. Aber Achtung, sofern snort installiert ist gibt es Konflikte, da
snort im inline Modus unbedingt die ältere 1.0er Version braucht 🙁 .
Wenn das Management aktiviert ist (“–enable-mgmt”) benötigt man noch GNU/TLS und Python (PyGTK usw. [Am besten via Yast2 installieren, da tausend Abhängigkeiten an Python hängen]).

libnet:
“wget http://www.packetfactory.net/libnet/dist/libnet.tar.gz”
“tar -xvzf libnet.tar.gz”
“cd libnet”
“./configure” oder bei SuSE “./configure –bindir=/usr/bin –sbindir=/usr/sbin –libdir=/usr/lib –includedir=/usr/include”
“make”
“make install”

GNU/TLS:
“wget ftp://ftp.gnutls.org/pub/gnutls/gnutls-2.2.2.tar.bz2”
“tar -xf gnutls-2.2.2...

Read More

Mosix

Möglichkeit 1:
via Yast2 das online Repository für Mosix
hinzufügen “http://www.mosix.org/mos2suse/” und dann
mit den Software Tool installieren.

Möglichkeit 2:
“wget http://www.mosix.org/mos2suse/kernel-mosix-latest.i586.rpm”
“rpm -iUhv kernel-mosix-latest.i586.rpm”
“wget http://www.mosix.org/mos2suse/mosix-utils-latest.i386.rpm”
“rpm -iUhv mosix-utils-latest.i386.rpm”

Möglichkeit 3:
“wget http://www.mosix.org/mos2/MOSIX-2.25.0.0-i386.for_Linux_kernel-2.6.28.tbz”
“tar -xf MOSIX-2.25.0.0-i386.for_Linux_kernel-2.6.28.tbz”
“cd mosix-2.25.0.0”
“screen”
“./mosix.install”
Dann den Anweisungen folgen.
2 (Kernel Quellen liegen bereits auf der Platte)
Kernel Qullen angeben “/usr/src/linux-2.6.28/”
Dann die Kernel Optionen auswählen
Unter “Security o...

Read More

MySQL Cluster

Linux (non RPM packages) - mysql-cluster-gpl-6.3.20-linux-i686-glibc23.tar.gz
Linux (non RPM packages) - mysql-cluster-gpl-7.0.6-linux-i686-glibc23.tar.gz
“wget ftp://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-Cluster-6.3/mysql-cluster-gpl-6.3.20-linux-i686-glibc23.tar.gz”
“tar -xzf mysql-cluster-gpl-6.3.20-linux-i686-glibc23.tar.gz”
“groupadd mysql”
“useradd -g mysql mysql”
“cd /usr/local”
“cp -frv /root/pubic/mysql-cluster-gpl-6.3.20-linux-i686-glibc23/ .”
“ln -s mysql-cluster-gpl-6.3.20-linux-i686-glibc23 mysql”
“cd mysql”
“chown -R mysql .”
“chgrp -R mysql .”
“scripts/mysql_install_db –user=mysql”
“chown -R root .”
“chown -R mysql data”
“/usr/local/mysql/bin/mysqld_safe –user=mysql &”
“/usr/local/mysql/bin/mysql mysql”
“mysql UPDATE user SET password = pa...

Read More

NBD

Für den Produktiv einsatz nicht geeignet

“wget http://nbd.sourceforge.net/”
“tar -xzf nbd-2.9.11.tar.gz”
“cd nbd-2.9.11”
“./configure” oder bei SuSE “./configure –bindir=/usr/bin –sbindir=/usr/sbin –sysconfdir=/etc/nbd –libdir=/usr/lib –includedir=/usr/include –enable-syslog”
“make”
“mkdir /etc/nbd”
“make install”

“modprobe nbd”
“ls -al /dev/nb*”

“vi /etc/nbd/config” -
[generic]
user = root
group = root

[export1]
exportname = /etc/nbd/nbd.nbd
port = 65531
readonly = false
multifile = false
copyonwrite = false

“config” auf node2 kopieren. “scp -r -v root@node1:/etc/nbd/config /etc/nbd”
“dd if=/dev/zero of=/etc/nbd/nbd.nbd bs=1024 count=16000” = erstellt die zu exportierende Datei (16MB) bzw. Block Gerät.
“nbd-server -C /etc/nbd/config [/etc/nbd/nbd...

Read More

OCFS2

Das ganze ist für den Produktiveinsatz nicht geeignet.
Die Nodes lassen sich nach einem Ausfall nur sehr schwer wieder
in den Verbund einbinden.
Stand 6.11.14

###################################################################################################

Für openSuse 12.1 bitte ganz unten lesen !!!!!!!
Auch bei SuSE 12.3 nur via original RPM von SUSE Installiern (YAST) !!!!!!!!!!!!!!!!!!!!!!!!!1

Leider lassen sich die einzelnen Cluster Node Partitionen nicht miteinander verbinden 🙁

Zuerts Kernel mit “OCFS2” Unterstützung kompilieren.
Dazu am besten einen neuen Kernel (2.6.24.4) downloaden und via “make xconfig” alle Komponenten unter
Da die Komplation von Bugs unter openSuse nicht funktioniert, ist
es besser ocfs2-tools via Yast2 zu installieren.

“F...

Read More

OSCAR

Läßt sich unter openSuse nicht installieren. Und unter CentOS sowie auf der Homepage Dokumentiert auch nicht. 🙁

AppConfig(perl): Per Yast2 installieren
python-gpgme: Per Yast und Suse online Repository
Yum: Per Yast und Suse online Repository oder auf der SuSE Seite downloaden “wget http://download.opensuse.org/repositories/openSUSE:/Tools:/Devel/openSUSE_11.1/i586/yum-3.2.14-33.2.i586.rpm”
“rpm -iUhv yum-3.2.14-33.2.i586.rpm”

“mkdir /tftpboot/oscar”
“cd /tftpboot/oscar/”
“wget http://svn.oscar.openclustergroup.org/trac/oscar/wiki/Download”
“tar -xvzf oscar-repo-common-rpms-5.1rc1.tar.gz”
“cd common-rpms/”
“rpm -iUhv yume-2.7-2.noarch.rpm”
“vi /etc/yum/repos.d/opensuse.repo” -
[opensuse]
name = openSUSE Factory
baseurl = http://packman...

Read More

PVM

“wget http://www.netlib.org/pvm3/pvm3.4.6.tgz”
“tar -xzf pvm3.4.6.tgz”
“cd pvm3”
“PVM_ROOT=$HOME/public/pvm3”
“export PVM_ROOT”
“echo $PVM_ROOT”
“make”
“make install”
“export PVM_ALLOW_ROOT=yes”
“echo $PVM_ALLOW_ROOT”
“export PVM_RSH=/usr/bin/ssh”
“ssh-agent bash”
“ssh-add”
“vi ~/.bashrc” - Auf allen Nodes machen
PVM_ROOT=$HOME/public/pvm3
export PVM_ROOT
PVM_ARCH=LINUX
export PVM_ARCH
PVM_TMP=/tmp
export PVM_TMP
PVM_RSH=/usr/bin/ssh
export PVM_RSH
PVM_ALLOW_ROOT=yes
export PVM_ALLOW_ROOT
“rm -frv /tmp/*”
“/root/public/pvm3/console/LINUX/pvm”
pvm add node2
pvm conf -
conf
2 hosts, 1 data format
HOST DTID ARCH SPEED DSIG
node1 40000 LINUX 1000 0x00408841
node2 80000 LINUX 1000 0x00408841
pvm spawn -

Read More

Sun Grid Engine

Erst mal sämtliches Java per Yast2 (online Quellen) installieren.

Installation auf Master node “sge_qmaster und sge_schedd”

“groupadd sgeadmin”
“useradd -d /opt/sge -m -g sgeadmin -s /usr/bin/bash sgeadmin”
“mkdir /opt/sge”
“wget https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=GE-6.2U2-OS-G-F@CDS-CDS_SMI”
“tar -xzf ge62u2_1_lx24-x86.tar.gz”
“cd ge6.2u2_1”
“tar -xzf ge-6.2u2_1-bin-lx24-x86.tar.gz”
“tar -xzf ge-6.2u2_1-common.tar.gz”
“mv * /opt/sge”
“cd /opt/sge”
“chown -R sgeadmin:sgeadmin /opt/sge”
“vi /etc/hosts” -
172.16.190.20 node1.domain.corp node1
172.16.190.21 node2.domain.corp node2
172.16.190.22 node3.domain.corp node3
172.16.190.23 node4.domain.corp node4
“...

Read More

Xen Failover Pacemaker

//Compile Native: clear; g++ -g -Wall xen_failover.cpp -o xen_failover; ./xen_failover Domain-0 /root/xen_storage/config_file.xen
/*
Pacemaker create Resource:
crm configure primitive xen_ha_apache-test ocf:heartbeat:anything \
params binfile=”/root/xen_storage/konfigs/heartbeat/xen_failover apache-test” cmdline_options=”/root/xen_storage/test_apache/test_apapche_hardening.xen” \
op start timeout=”20s” \
op stop timeout=”30s” \
op monitor interval=”20s” timeout=”30s” start-delay=”0s” depth=”0s”  on-fail=”restart”
*/

/*
To Do:
Checken ob Pacemaker und corosync noch laufen
Checken ob VM schon läuft.
Falls striker wegfällt VMs pausieren oder einfrieren.
Checken ob die OCFS2 mount noch vorhanden sind.
Resourcen Check ob start der VM möglich bzw...

Read More

Xen Failover Check Pacemaker

//Compile Native: clear; rm -frv  xen_failover_check; g++ -g -Wall xen_failover_check.cpp -o xen_failover_check; ./xen_failover_check Dummy_command Domain-0

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <dirent.h>
#include <unistd.h>
#include <errno.h>
#include <stdint.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <iostream>
#include <vector>
#include <sstream>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <fstream>
#include <time.h>
#include <unistd.h>

using namespace std;

int main(int argc, char **argv)
{

while(1)
{
sleep(1);
string vm_name;
vm_name=argv[2];

//cout<<“vm_name: “<<vm_name<<endl;

//ps -ef | awk ‘$9==”Domain-0″‘ | awk ‘{print $9}’
string ps_pruefkommando;

ps_...

Read More

Pacemaker OCF XEN migration add-on

#!/bin/sh
#
#       OCF Resource Agent compliant resource script.
#
# Copyright (c) 2009 IN-telegence GmbH & Co. KG, Dominik Klein
#                    All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of version 2 of the GNU General Public License as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it would be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# Further, this software is distributed without any warranty that it is
# free of the rightful claim of any third person regarding infringement
# or the like...

Read More

Samba Cluster How To

Samba Cluster How To

“rsync -avz samba.org::ftp/unpacked/ctdb .” oder “git clone git://git.samba.org/ctdb.git ctdb”
“./autogen.sh”
“./configure –bindir=/usr/bin –sbindir=/usr/sbin –localstatedir=/var –libdir=/usr/lib64 –includedir=/usr/include”
“make”
“make install”

“wget http://ftp.samba.org/pub/samba/stable/samba-3.5.16.tar.gz”
“tar -xzf samba-3.5.16.tar.gz”
“cd samba-3.5.16”
“cd samba-3.5.16/source”
“./autogen.sh”
“...

Read More