Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| technik:proxmox [02.02.2023 - 07:18] – angelegt nrb | technik:proxmox [29.05.2025 - 21:58] (aktuell) – nrb | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| Der Verein betreibt mehrere Proxmox-Kisten. | Der Verein betreibt mehrere Proxmox-Kisten. | ||
| - | ===== Interfaces ===== | + | Der Zugriff auf die Admin-Oberflaechen erfolgt bitte immer per HOSTNAME.pveadmin.freifunk-stuttgart.de. Hintergrund: |
| - | * `vmbr1`: NAT für Gäste, Netz ist hier `10.0.CLUSTERID.0/ | + | Jeder pve-Cluster hat ein lokales Netzwerk (Hetzner vSwitch/ |
| - | * `vmbr2`: Layer 2 Freifunknetz, | + | |
| - | * `vmbr999`: externes Interface mit öffentlicher IP. Finger weg, bei Hetzner droht Serversperrung wenn hier unbekannte MACs oder IPs unterwegs sind! | + | ===== Backup ===== |
| + | |||
| + | ==== Host ==== | ||
| + | |||
| + | Die Hosts werden per PBS gebackupt, siehe ''/ | ||
| + | |||
| + | Infos zum restore per proxmox-backup-client gibt es unter [[technik: | ||
| + | |||
| + | ==== Gaeste ==== | ||
| + | |||
| + | Per Proxmox Backup. | ||
| + | |||
| + | In clustern bitte pro Cluster-Node extra Backup-Jobs anlegen, damit Notifcation per Healthchecks pro Node erfolgt | ||
| + | |||
| + | |||
| + | ===== Netz fuer Gaeste ===== | ||
| + | |||
| + | Es gibt per VXLAN ein Clusteruebergreifendes L2, ueber das die Gaeste miteinander kommunizieren koennen. Wird per Proxmox SDN konfiguriert. | ||
| + | |||
| + | Als L3-underlay dient der [[technik: | ||
| + | |||
| + | |||
| + | ===== Cluster ===== | ||
| + | |||
| + | ^ Clustername ^ Cluster-ID ^ Hoster/ | ||
| + | | ffshetzner | ||
| + | | ffsz10a | ||
| + | |||
| + | ===== Maschinen ===== | ||
| + | |||
| + | ^ Proxmox Instanz | ||
| + | | ffs05.freifunk-stuttgart.de | ||
| + | | ffs08.freifunk-stuttgart.de | ||
| + | | ffs11.freifunk-stuttgart.de | ||
| + | | ffs13.freifunk-stuttgart.de | ||
| + | |||
| + | ===== Setup ===== | ||
| + | |||
| + | Es gibt ein paar Konventionen zum Setup, an die wir uns halten moechten. | ||
| + | |||
| + | ==== Interfaces ==== | ||
| + | |||
| + | | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | ==== Dateisysteme ==== | ||
| + | |||
| + | Bei Hetzner kein Root auf ZFS, weil das Hetzner Rescue kein ZFS kann! Dann bitte mdadm RAID + LVM + ZFS (ja, wirklich). | ||
| + | |||
| + | ==== IP-Adressen ==== | ||
| + | |||
| + | Bitte alle IP-Adressen fuer Container und VMs im Wiki-Artikel [[technik: | ||
| + | |||
| + | ==== Gast-IDs ==== | ||
| + | |||
| + | Leiten sich aus dem letzten Oktett der Backbone-IP und der Cluster-ID ab: | ||
| + | |||
| + | < | ||
| + | Gast-ID = Cluster-ID * 1000 + letztes Oktett der IP | ||
| + | </ | ||
| + | |||
| + | Also hat der Gast mit IP '' | ||
| ===== Nutzerkonto auf Proxmox anlegen ===== | ===== Nutzerkonto auf Proxmox anlegen ===== | ||
| - | Die Nutzerkonten auf Proxmox Hosts werden alle mit Ansible verwaltet. Die Gruppe ffs gibt den Nutzern | + | Es werden grundsaetzlich nur lokale Nutzeraccounts benutzt, damit die Nutzer die Proxmox-Shell verwenden koennen und ihr Passwort selbst per SSH setzen koennen. |
| + | |||
| + | Die Nutzerkonten auf Proxmox Hosts werden alle mit Ansible verwaltet. | ||
| + | |||
| + | Die Proxmox(!)-Gruppe ffs gibt den Nutzern | ||
| - Nutzer im Ansible anlegen | - Nutzer im Ansible anlegen | ||
| - | - Playbook all.yml laufen lassen. | + | - Playbook |
| - | - Den Nutzer per `pveum User add NUTZER@pam` bei Proxmox bekannt machen. Das muss nur einmal pro Cluster und Nutzer gemacht werden. | + | - Den Nutzer per '' |
| + | - Den Nutzer per ''< | ||
| - Nutzer kann sich per SSH einloggen und anschließend ein Passwort per `passwd` setzen, mit dem er sich im Proxmox einloggen kann. Das Passwort gilt jeweils nur für einen Host, nicht clusterweit. | - Nutzer kann sich per SSH einloggen und anschließend ein Passwort per `passwd` setzen, mit dem er sich im Proxmox einloggen kann. Das Passwort gilt jeweils nur für einen Host, nicht clusterweit. | ||
| ===== Zugriff auf Container / Proxmox als Jumphost ===== | ===== Zugriff auf Container / Proxmox als Jumphost ===== | ||
| - | Sobald man einen Account | + | Zum Zugriff |
| - | Entweder per Jumphost und IP des Gastes: | + | Anleitung gibt es im [[https:// |
| - | ``` | + | ===== Neuen Container anlegen ===== |
| - | ssh -J PROXMOXHOST GASTIP | + | |
| - | ``` | + | |
| - | Oder man fügt folgenden Schnipsel in seine `.ssh/config` ein: | + | Wer ein Freifunkprojekt hat, kann vom Verein einen Container bekommen. Voraussetzung ist Vereinsmitgliedschaft und/oder eine entsprechende Vereinbarung mit dem Verein. Der Vorstand kann hierzu Auskunft geben. |
| - | ``` | + | Ansible-Playbooks im [[https:// |
| - | Host *.ffs05 | + | |
| - | User root | + | |
| - | ProxyCommand ssh ffs05 -W 10.0.3.$(( $(echo %n | sed -e 's/.ffs05//' | + | |
| - | ``` | + | |
| - | Und kann dann per `ssh GASTID.ffs05` auf jeden beliebigen Gast hinter ffs05. | + | * create_container_z10a_gastnet.yml |
| + | * erstellt einen LXC Container im gastnet | ||
| + | * Dualstack IPv4/IPv6; IPv4 NAT | ||
| + | * Inbound Firewall IPv4 und IPv6 | ||
| + | * ideal geeignet bspw fuer Webanwendungen | ||
| + | * keine Portforwardings | ||
| + | * create_container_z10a_services.yml | ||
| + | * erstellt einen LXC Container im services Netz | ||
| + | * Dualstack IPv4/IPv6; kein NAT | ||
| + | * :!: keinerlei Firewall! | ||
| - | ===== Neuen Container anlegen ===== | + | Die Playbooks reservieren autoamtisch IP-Adressen und erstellen DNS-Eintraege usw |
| - | Wer ein Freifunkprojekt hat, kann vom Verein einen Container bekommen. Voraussetzung ist Vereinsmitgliedschaft und/oder eine entsprechende Vereinbarung mit dem Verein. Der Vorstand kann hierzu Auskunft geben. | ||