Archiv:Vm-alt

Stand bis zum 20.5.2016 in einem OpenIT-Rechenzentrum in Düsseldorf.

Hardware
(grösstenteils Spende von byte)

Der VGA-Port ist vermutlich defekt (oder zeigt nur nach einem Reboot ein Bild an). Es empfiehlt sich, einen DVI-Monitor mitzunehmen.


 * 4HE-Gehäuse inkl. redundantem Netzteil (Spende von Bjoe)
 * Mainboard: ASRock K10N78
 * CPU: AMD Athlon X2 7750 inkl. Boxed-Kühler
 * RAM: 2x 2GB Corsair XMS2 DDR2-1066 CL5
 * HDD: 2x 320GB Hitachi HDT721032SLA360 (7K1000.B)
 * /dev/sda = oben / schwarzes Kabel
 * /dev/sdb = unten / rotes Kabel

Festplattenaufteilung
Im System befinden sich zwei Festplatten, die mit md zu einem RAID 1 zusammengefasst sind. Auf md0 befindet sich /boot, auf md1 liegt ein Physical Volume für LVM.

In der Volume Group gibt es ein Logical Volume für den VM-Server sowieso ein weiteres Volume für jede VM. Diese Volumes sind dm-crypt-Container.

/dev/mapper/vg-backend
2. derf 4. mxey 5. byte

/dev/mapper/vg-extern
2. derf 4. mxey 5. byte

/dev/mapper/vg-intern
2. derf 4. mxey 5. byte

/dev/mapper/vg-shells
0. Alter Adminkey 2. derf 4. mxey 5. byte

Virtualisierung
Die virtuellen Machinen werden mit QEMU/KVM betrieben und von libvirt verwaltet. Die Netzwerkanbindung ist über Point-to-Point realisiert, damit der Traffic zwischen den VMs sich bequem filtern lässt. Netz und Disk via virtio.

Auf Hostseite wird die Netzkonfiguration mit ifupdown (`/etc/network/interfaces`) gemacht.

Zum Starten der VMs wird das Skript `/root/bin/start-vm` verwendet. Dieses öffnet die dm-crypt-Container, startet die VMs und verbindet sich in einer screen-Sitzung mit den seriellen Konsolen.

libvirt-Update
Nach Update: ferm-Regeln neu einlesen.

= Routing und Paketfilter =

Zu beachten ist, dass OpenIT unser Subnet nicht zu uns routet, sondern alle IPs direkt in unserem LAN-Segment erwartet. Damit die VMs von außen erreichbar sind verwenden wir deswegen Proxy ARP.

Traffic zwischen Internet und Server sowie zwischen den VMs wird mit Netfilter kontrolliert, wobei die Regeln durch ferm generiert werden. Wir filtern sowohl eingehend mit Rate-Limiting als auch ausgehend.