Host:Helios: Difference between revisions

From Chaosdorf Wiki
mNo edit summary
m (Fix missing link to NUC Cluster)
 
(2 intermediate revisions by 2 users not shown)
Line 16: Line 16:
|netbox_id=12
|netbox_id=12
}}
}}
Großer mächtiger VM-Host für Clubrauminfrastruktur und Projekte. Ein Teil der Dienste befindet sich auch auf dem [[Kubernetes Cluster]].
Großer mächtiger VM-Host für Clubrauminfrastruktur und Projekte. Ein Teil der Dienste befindet sich auch auf dem [[NUC Cluster]].


== Hardware ==
== Hardware ==
Line 39: Line 39:
|
|
|-
|-
| VMs (alt)
| Storage
| Storage
| VMs (neu)
| leer
| VMs (neu)
| leer
| leer
|-
|-
| VMs (alt)
| Storage
| Storage
| leer
| leer
| leer
| leer
| leer
Line 52: Line 52:
=== Systemplatten ===
=== 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.
Sind die beiden internen 2.5"-Platten (KINGSTON SEDC600M1920G und SAMSUNG MZ7L31T9HBLT-00A07).
 
* 1. Partition: RAID 1 für /
* 2. Partition: RAID 1 für <tt>backup</tt>-VG
* 3. Partition: RAID 1 für <tt>backup</tt>-VG
* 4. Partition: RAID 1 für <tt>backup</tt>-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 <tt>vmstorage</tt>, welche wiederum LVs für die einzelnen VMS enthält.
* 1. Partition: ESP
* 2. Partition: frei
* 3. Partition: RAID 1 für /
* 4. Partition: RAID 1 für VMs (darin LUKS und LVM/VG <tt>vm</tt> welche wiederum LVs für die einzelnen VMs enthält)


=== Storage ===
=== Storage ===


Zwei 16TB-Platten, auf denen sich jeweils ein LUKS-Container (<tt>/dev/mapper/storage?</tt>) befindet, die an die VM {{H|fileserver}} durchgereicht werden.
Zwei 16TB-Platten (TOSHIBA HDWG31G und ST16000NM000J-2TW103), auf denen sich jeweils ein LUKS-Container (<tt>/dev/mapper/storage?</tt>) befindet, die an die VM {{H|fileserver}} durchgereicht werden.


== Netzwerk ==
== Netzwerk ==

Latest revision as of 23:22, 7 May 2024

helios.chaosdorf.space
Helios.jpg
almighty server
Ort Lounge
Zweck virtualization host
OS Debian 12
Disks 38TB38,000 GB <br />38,000,000 MB <br />38,000,000,000 kB <br />
RAM 32GiB32,768 MiB <br />33,554,432 kiB <br />34,359,738,368 B <br />0.0313 TiB <br />34,359.738 MB <br />
Admin-Toolkit Yes
PAM? Yes
SSH user login? No
Besitzstatus Club-Eigentum
Benutzung Nachfragen
Admins derf, byte, nomaster, uen, feuerrot, ytvwld, nik
NetBox ID 12

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

Hardware[edit source]

  • 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[edit source]

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:

System System
Storage leer leer leer
Storage leer leer leer

Systemplatten[edit source]

Sind die beiden internen 2.5"-Platten (KINGSTON SEDC600M1920G und SAMSUNG MZ7L31T9HBLT-00A07).

  • 1. Partition: ESP
  • 2. Partition: frei
  • 3. Partition: RAID 1 für /
  • 4. Partition: RAID 1 für VMs (darin LUKS und LVM/VG vm welche wiederum LVs für die einzelnen VMs enthält)

Storage[edit source]

Zwei 16TB-Platten (TOSHIBA HDWG31G und ST16000NM000J-2TW103), auf denen sich jeweils ein LUKS-Container (/dev/mapper/storage?) befindet, die an die VM fileserver durchgereicht werden.

Netzwerk[edit source]

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.

Interface IP libvirt-Name Beschreibung
br0 192.168.0.9 (statisch) management Direkte Verbindung zu bond0, d.h. VLAN 1
br1 VLAN 1 auf bond0
br3 172.22.26.11 (DHCP) default VLAN 3 auf bond0
br4 freifunk-mesh VLAN 4 auf bond0
br5 freifunk-client VLAN 5 auf bond0
br21 VLAN 21 auf 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).

Virtuelle Maschinen[edit source]

 HostnameOperating SystemDisk sizeRAM sizeAdmins
DockerserverdockerserverDebian 12250 GB250,000 MB <br />250,000,000 kB <br />0.25 TB <br />16,384 MiB16,777,216 kiB <br />17,179,869,184 B <br />16 GiB <br />0.0156 TiB <br />17,179.869 MB <br />nomaster
ytvwld
marudor
magluz
FileserverfileserverNixOS 23.1132,000 GB32,000,000 MB <br />32,000,000,000 kB <br />32 TB <br />2,048 MiB2,097,152 kiB <br />2,147,483,648 B <br />2 GiB <br />0.00195 TiB <br />2,147.484 MB <br />nomaster
ytvwld
HassserverhassserverHass OS40 GB40,000 MB <br />40,000,000 kB <br />0.04 TB <br />4,096 MiB4,194,304 kiB <br />4,294,967,296 B <br />4 GiB <br />0.00391 TiB <br />4,294.967 MB <br />derf
Mqttservermqttserver.chaosdorf.spaceDebian 12 amd6416 GB16,000 MB <br />16,000,000 kB <br />0.016 TB <br />512 MiB524,288 kiB <br />536,870,912 B <br />0.5 GiB <br />4.882813e-4 TiB <br />536.871 MB <br />feuerrot
derf

VM anlegen[edit source]

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

   virt-install --connect qemu+ssh://helios.chaosdorf.space/system -n testvm --memory 1024 --network network=default --cpu host --boot uefi --os-variant debian12 -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[edit source]

Am Beispiel des Dockerserver

  • VM herunterfahren (→ Konsistenter Dateisystemzustand)
  • sudo lvcreate --snapshot --size 250g --name dockerserver-backup vmstorage/dockerserver (Größe anhand des erwarteten Schreibumfangs auf dem per Snapshot gesicherten Volume anpassen)
  • VM starten, Dinge tun (z.B. komplexeres Dist-Upgrade)
  • Wenn erfolgreich: sudo lvremove vmstorage/dockerserver-backup
  • Andernfalls Rollback: VM herunterfahren, sudo lvconvert --merge vmstorage/dockerserver-backup, VM wieder starten

IPMI[edit source]

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
  • Watchdog ausschalten (falls z.B. ein neues System installiert wird): helios-ipmi bmc watchdog off
  • Serielle Konsole: helios-ipmi sol activate
  • System an-/ausschalten/neustarten: helios-ipmi power on/off/cycle

Serial over LAN[edit source]

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[edit source]

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.