# Skripte für die Proxmox-Knoten ## bootstrap-node.sh Bringt einen Knoten auf den Grundstand: Laptop-Schlüssel, Paketquellen `pve-no-subscription`, `apt full-upgrade`, `ethtool` und `lm-sensors`. Läuft auf dem Admin-Laptop in Git-Bash und ist idempotent. ```bash platform/proxmox/scripts/bootstrap-node.sh pve44 # bestehender Knoten platform/proxmox/scripts/bootstrap-node.sh --reinstall pve46 # nach Neuinstallation ``` - Voraussetzungen: SSH-Alias in `~/.ssh/config`, `.env` mit `_PASS` (nur nötig, solange der Schlüssel fehlt). - `--reinstall` verwirft den alten Hostschlüssel. Ohne den Schalter muss der bekannte Hostschlüssel passen. - Das Update läuft per `systemd-run` auf dem Knoten weiter, auch wenn die SSH-Sitzung abreißt. Protokoll: `/root/bootstrap-upgrade.log`. - Das Skript startet nicht neu. Es meldet `Neustart nötig: ja (…)`, wenn ein neuer Kernel installiert wurde. Nach dem Neustart prüfen: ```bash ssh pve44 'uname -r; pveversion; systemctl --failed --no-legend; ip -br a show vmbr0' ``` Dazu Adressen, IDs und IOMMU-Gruppen der Karten mit dem Stand vor dem Neustart vergleichen. Die Site-Dateien verwenden `0000:01:00` und `0000:02:00`. ## pve-admin-user.sh Schließt ein persönliches Admin-Konto ab, das `playbooks/cluster.yml` angelegt hat: Passwort (in `.env` als `PVE_ADMIN__PASS`), TOTP und Recovery-Keys (`it/proxmox/tfa-.txt`). Läuft auf dem Laptop, idempotent. Details: `docs/BETRIEB.md` Abschnitt 8. ```bash platform/proxmox/scripts/pve-admin-user.sh r.rapp ``` ## healthcheck.sh Testvorgehen für den Cluster (`docs/BETRIEB.md` Abschnitt 13): Quorum, HA, Replikation, Firewall, Benutzer, je Knoten Dienste, Zeit, Netz, Speicher, Zertifikat, GPU-Bindung, Weboberfläche, dazu der Firewall-Negativtest aus einer GPU-VM. Nur lesend, Exit 1 bei Fehlern. ```bash platform/proxmox/scripts/healthcheck.sh # alle Knoten platform/proxmox/scripts/healthcheck.sh pve44 # einzelner Knoten ```