Virtualizovaný cluster

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání
Zadání : Vytvořit virtualizované clusterové prostředí z bezdiskových linuxových systémů, které umožňuje testovat agenty pro Pacemaker.


Zadání vyžaduje:

  • Instalaci výchozího bezdiskového virtuálního stroje A, který se po vytvoření instaĺace Pacemakeru naklonuje jako stroje B, C, D a E
  • Stroje mají do vnější sítě přístup pouze za účelem aktualizace software pouze prostřednictvím stroje git, který vůči nim funguje jako výchozí brána (defaultní gateway)

Instalace stroje A

1.   Vytvořit subvolume v rámci souborového systému Btrfs na sdíleném DRBD úložišti, publikovaném přes NFS server

Poznámka
root@datastore~# btrfs subvolume create /srv/share/virtual_machines/temporary/A

2.   Do konfigurace souboru exports pro NFS server doplnit následující záznam

Poznámka
/srv/share/virtual_machines/temporary/A     10.0.0.112(rw,nohide,async,no_subtree_check,no_root_squash) \
                                            10.0.0.201(rw,nohide,async,no_subtree_check,no_root_squash)

3.   Připojit nasdílený adresář na stroji stroj s IP adresou 10.0.0.112 ...

Poznámka
root@stroj~# mkdir -p /path_to_mountpoint/A
root@stroj~# mount 10.0.0.3:/srv/share/virtual_machines/temporary/A /path_to_mountpoint/A
...a pomocí příkazu deboostrap do něj provést výchozí instalaci
Poznámka
root@stroj~# cd /path_to_mountpoint/A
root@stroj:/path_to_mountpoint/A# debootstrap --verbose \
	--keyring=/usr/share/keyrings/debian-archive-keyring.gpg \
	--include=debian-keyring,etckeeper \
	--arch=amd64 \
	jessie \
	./ \
	http://ftp.cz.debian.org/debian
 ...
root@stroj:/path_to_mountpoint/A#

4.   Přihlásit se přes chroot

Poznámka
root@stroj:~# chroot /path_to_mountpoint/A
root@stroj:~/#
4.1   aktualizovat systém
Poznámka
root@stroj:~/# apt-get update && apt-get dist-upgrade
...
root@stroj:~/# apt-get install linux-image... 
...
4.2   doinstalovat linuxový kernel
Poznámka
root@stroj:~/# apt-get install linux-image... 
...
4.3   nastavit heslo
Poznámka
root@stroj:~/# setpwd
...
4.4   nastavit hostname

5.   Do konfigurace pro pacemaker přidat novou konfiguraci

Poznámka
root@stroj~# mkdir -p /path_to_blank/blank_wheezy
root@stroj~# cd /path_to_blank/blank_wheezy
root@stroj:/path_to_blank/blank_wheezy# debootstrap --verbose \
	--keyring=/usr/share/keyrings/debian-archive-keyring.gpg \
	--include=debian-keyring,etckeeper \
	--arch=amd64 \
	wheezy \
	./ \
	http://ftp.cz.debian.org/debian
 ...
root@stroj:/path_to_blank/blank_wheezy#

Konektivita do vnější sítě

Strojům virtualizovaného clusteru si stahují instalační balíčky prostřednictvím stroje git, který vůči nim zároveň funguje jako Puppetmaster.

A
eth0 IPv4 10.0.0.201
git
eth0 IPv4 10.0.0.101
eth1 IPv4 147.32.87.31

Na stroji git...

Na stroji git, který bude vůči stroji A vystupovat jako výchozí brána (default gateway) musí být nastaveno pravidlo do iptables pro směrování paketů přicházejících ze stroje A ( z rozhraní eth0 ) na jeho vnější rozhraní

git (PUPPET) :~# iptables -t nat -A POSTROUTING --source 10.0.0.201/32 -o eth1 -j SNAT --to 147.32.87.31

Aby však stroj git pravidlo akceptoval, musí být přes sysctl aktivován NAT protokolu IPv4

git (PUPPET) :~# sysctl net.ipv4.ip_forward=1

Na stroji A...

U stroje A pak musí být IPv4 adresa interního rozhraní stroje git nastavena jako výchozí brána ( default gateway ).

root@A :~# route add default gw 10.0.0.101