Host:Vm

Seit dem 20.5.2016 im OpenIT-Rechenzentrum in Düsseldorf.

Hardware

 * System: 2HE HP ProLiant SE326M1 (DL180G6/SE1220)
 * CPU: Intel Xeon X5650 (x2)
 * RAM: 48GB DDR3-1333 ECC (8/12 Slots)
 * HDD: 146GB 10K 2.5" SFF SAS (x4)
 * RAID Controller: HP Smart Array P410 (wird von check_raid unterstützt, Statusinformationen gibts ansonsten mit cciss_vol_status /dev/sg1)
 * Ethernet: 2x 1Gbit/s Onboard und 2x 1Gbit/s PCIe. Verwendet wird der linke Port der PCIe-Karte, dieser ist auch mit "WAN" gelabelt; die Onboard-Ports können/sollten wegen eines Silikonunfalls im Clubraum nicht verwendet werden
 * iLOM: Vorhanden, bisher noch nicht eingerichtet; es gäbe die Option, es in ein VLAN mit Source-IP-Filter zu hängen

Festplattenaufteilung
Das System hat Platz für 25 SAS-Festplatten (SFF). (5 Spalten zu je 5 Festplatteneinschüben). Wir verwenden derzeit nur die ersten vier Einschübe. Es sind je zwei Festplatten vom Controller in Hardware zu einem RAID-1 zusammengefasst — das Betriebssystem sieht nur sda und sdb.

Auf sda1 liegt ein Physical Volume für LVM, weitere Partitionen gibt es nicht. In der Volume Group gibt es zwei Volumes für jede VM: Einmal Swap, einmal normal. Jedes Volume ist ein eigener dm-crypt-Container. Zusätzlich gibt es ein Volume für / des VM-Hosts selbst, hier liegt ohne Crypto direkt ein Ext4.

sdb wird derzeit nicht verwendet. Neue VMs werden darauf landen.

Keyslots
TODO: Updaten

/dev/vg/backend
2. derf 3. feuerrot 4. mxey 5. byte

/dev/vg/extern
2. derf 3. feuerrot 4. mxey 5. byte

/dev/vg/intern
2. derf 3. feuerrot 4. mxey 5. byte

/dev/vg/shells
0. Alter Adminkey 2. derf 3. feuerrot 4. mxey 5. byte

/dev/vg2/dashboard
0. derf 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.