== Installation VMs
Der erste Schritt der Umsetzung unseres Challenge Tasks war, die drei VMs mit den Hostnames k3s-01, k3s-02 und k3s-03 aufzusetzen.
=== Distribution Ubuntu 22.04
Wir haben uns für die Distribution Ubuntu 22.04 entschieden, weil sie K3s, etcd, PostgreSQL und Patroni offiziell unterstützt und Pakete dafür in den Repositories hat. Ausserdem wird keine Lizenz benötigt und wir haben bereits Erfahrung damit. Versionsmässig haben wir die zu diesem Zeitpunkt neuste Long Term Support-Version gewählt, um die neusten Features und Sicherheitsupdates zu erhalten.
=== Hardware
Die VMs wurden mit 2 CPUs, 4GB RAM, einer Systemdisk mit 32GB und einer Datendisk mit 10GB ausgestattet. Somit sind alle Mindestanforderungen erfüllt und wir haben noch etwas Spielraum für die Applikation.
=== Installation
Während der Installation ab ISO haben wir mit dem Subiquity Installer die normale Server Installation ausgewählt, den OpenSSH-Server aktiviert und einen User namens `k3sadm` mit Sudo-Rechten erstellt.
Ausserdem haben wir folgendes Custom Disk Layout erstellt:
#figure(
  image("../Images/02/disk-layout.png", width: 90%),
  caption: [ Ubuntu Disk Layout ]
)
Es gibt somit separate Partitionen bzw. Logical Volumes für folgende Verzeichnisse:
- `/boot/efi`: Wird automatisch erstellt und wird benötigt, damit das System von UEFI booten kann.
- `/boot`: Enthält die Kernel und das initiale RAM-Dateisystem.
- `/`: Enthält das Betriebssystem und die Programme.
- `/var`: Enthält variable Daten, wie K3s Container und Images oder Caches.
- `/var/log`: Enthält Logfiles.
- `/tmp`: Enthält temporäre Dateien.
- `/opt/postgres`: Enthält die Postgres Datenbank.

Dank LVM sind wir sehr flexibel und können einfach Änderungen am Layout vornehmen.