Host:Helios

Großer mächtiger VM-Host für Clubrauminfrastruktur und Projekte. Ein Teil der Dienste befindet sich auch auf dem Kubernetes Cluster.

Hardware

 * Mainboard: ASRock Mini-ITX mit 12x SATA
 * CPU: Intel Atom C2750 (Avoton) 8-Core
 * Storage: 10 3,5" Festplatten, 20TB
 * RAM: 4x 8GB DDR3 1600MHz ECC
 * Gehäuse: Chenbro 19" 2HE mit 8 3,5" Festplatteneinschüben
 * Netzteil: 400W EPS Green

Storage
Das Gehäuse bietet Platz für 10 SATA-Platten, davon 2 intern (2.5") und 8 in Festplattenschächten (3.5").

Layout bei Aufsicht aufs Gehäuse:

Systemplatten
Sind die beiden internen 2.5"-Platten. Jeweils 1TB Western Digital Red (WDC WD10JFCX-68N6GN0). Auf beiden Platten befinden sich aus historischen Gründen™ vier Partitionen á 250GB, die wie folgt genutzt werden.


 * 1. Partition: RAID 1 für /
 * 2. Partition: RAID 1 für backup-VG
 * 3. Partition: RAID 1 für backup-VG
 * 4. Partition: RAID 1 für backup-VG

VM-Platten

 * VMs1: Hitachi Deskstar 7K2000 HDS722020ALA330 (wwn-0x5000cca222c96707)
 * VMs2: Hitachi Deskstar 7K2000 HDS722020ALA330 (wwn-0x5000cca221c5cc76)

Jeweils 2TB Hitachi Deskstar 7K2000 (HDS722020ALA330). Darauf liegt ein RAID1 für die VG vmstorage, welche wiederum LVs für die einzelnen VMS enthält.

Storage
RAID 6 aus vier 2TB- und zwei 3TB-Platten (von denen nur je 2TB genutzt werden), d.h. insgesamt 12TB brutto. Davon stehen 8TB für Nutzdaten zur Verfügung (und bis zu zwei Festplatten können ohne Datenverlust ausfallen). Auf dem RAID befindet sich ein LUKS-Container (/dev/mapper/storage), welcher an die VM durchgereicht wird.

Netzwerk
Von hinten betrachtet hat das Mainboard drei Netzwerkinterfaces.


 * Oben links: IPMI
 * Oben rechts: eth0
 * Unten rechts: eth1

Das IPMI-Interface ist vom Betriebssystem aus nicht sichtbar. Die anderen beiden sind als bond0 per LACP / 802.3ad zusammengefasst. IP/IPv6 ist darauf nicht konfiguriert.

Aus bond0 fällt VLAN 1 (Management) untagged raus, die VLANs 3-5 tagged. VLAN 2 (WAN) ist nicht erreichbar. Alle weiteren Interfaces sind Bridges auf Basis von bond0.

Die Bridges br1, br4 und br5 werden ausschließlich für VMs verwendet. IPv6 ist dort per /etc/sysctl.d/ipv6.conf aus, IPv4 per /etc/network/interfaces. Auf br3 und br21 läuft zwar IPv6, es werden aber keine Router Advertisements akzeptiert (damit alles per br3 über das normale Access-Netz rausgeht und public IPv6 überhaupt funktioniert).

VM anlegen
Zum Beispiel ein Debian Stretch im Access VLAN mit 1GiB RAM und 20GB Festplatte:

virt-install --connect qemu+ssh://helios/system -n testvm --memory 1024 --network network=default --cpu host --os-variant debian9 -l http://ftp.de.debian.org/debian/dists/stable/main/installer-amd64/ --disk pool=vmstorage,size=20

Falls vorhanden, kann eine preseed-Konfiguration mit --initrd-inject berücksichtigt werden.

Snapshots
Am Beispiel des Dockerserver


 * VM herunterfahren (→ Konsistenter Dateisystemzustand)
 * sudo lvcreate --snapshot --size 250g --name dockerserver-backup vmstorage/dockerserver</tt> (Größe anhand des erwarteten Schreibumfangs auf dem per Snapshot gesicherten Volume anpassen)
 * VM starten, Dinge tun (z.B. komplexeres Dist-Upgrade)
 * wahlweise sudo lvremove vmstorage/dockerserver-backup</tt> oder den Snapshot wieder einspielen (Doku: TODO, denn alle wollen Backup und niemand kehrt über Restore)

IPMI
Ist das Interface links und sehr seriös. Als grundlegender Alias empfiehlt sich helios-ipmi='ipmitool -I lanplus -H helios-ipmi.chaosdorf.dn42 -U meinnick -f datei/mit/passwort'

ipmitool benutzt wenn möglich IPv6. Nach Änderungen an der VLAN-Config ist das IPMI-Interface teils nur noch per IPv4 erreichbar, dann muss helios-ipmi.chaosdorf.dn42 durch die entsprechende IPv4-Adresse ersetzt werden. Eigentlich sollte das nicht passieren, da das IPMI-Interface an einem eigenen Switchport hängt, der von den sonstigen Änderungen unabhängig ist — Irgendwas ist da aber komisch™.

Nützliche Befehle sind unter anderem:


 * Watchdogstatus auslesen: helios-ipmi bmc watchdog get</tt>
 * Watchdog ausschalten (falls z.B. ein neues System installiert wird): helios-ipmi bmc watchdog off</tt>
 * Serielle Konsole: helios-ipmi sol activate</tt>
 * System an-/ausschalten/neustarten: helios-ipmi power on/off/cycle</tt>

Serial over LAN
ttyS1 ist per IPMI nutzbar. BIOS geht darüber auch. Grub und Kernel sind vermutlich so konfiguriert, dass sie ausschließlich mit der seriellen IPMI-Konsole (und nicht mit einem angeschlossenen Monitor) reden.

Watchdog
Das Mainboard hat einen IPMI (SMS/OS) Watchdog. Der Daemon bmc-watchdog setzt diesen alle 60 Sekunden zurück. Falls er nicht läuft, wird automatisch nach 15 Minuten ein hard reset ausgelöst.