technik:proxmox

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
technik:proxmox [02.02.2023 - 07:18] – angelegt nrbtechnik:proxmox [16.04.2023 - 12:47] (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: damit kann man auch ueber den Reverse Proxy, die auf anderen Hosts laufen, zugreifen. Ausserdem bekommt man so ein ordentliches Zertifikat.
  
-  * `vmbr1`: NAT für Gäste, Netz ist hier `10.0.CLUSTERID.0/24`. Die Mitglieder des Cluster haben die IPs 1-10. +===== Cluster =====  
-  * `vmbr2`: Layer 2 Freifunknetz, VLAN = Segment + 100. VLAN 255 ist Transfernetz in den Wireguard Backbone. + 
-  * `vmbr999`: externes Interface mit öffentlicher IP. Finger weg, bei Hetzner droht Serversperrung wenn hier unbekannte MACs oder IPs unterwegs sind!+^ Clustername ^ Cluster-ID ^ Hoster/Standort ^ Cluster-Netz ^ 
 +| ffshetzner  | 3          | Hetzner  | ''10.0.3.0/24''
 +| ffsz10a     | 8          | Nepustil, Zettachring 10a | ''10.0.8.0/24''
 + 
 +===== Maschinen =====  
 + 
 +^ Proxmox Instanz                ^ Cluster    ^ Cluster-IP ^ 
 +| ffs03.freifunk-stuttgart.de    | ffshetzner | 10.0.3.1   
 +| ffs05.freifunk-stuttgart.de    | ffshetzner | 10.0.3.2   | 
 +| ffs08.freifunk-stuttgart.de    | ffsz10a    | 10.0.8.1   | 
 +| ffs11.freifunk-stuttgart.de    | ffshetzner | 10.0.3.3   | 
 + 
 +===== Setup =====  
 + 
 +Es gibt ein paar Konventionen zum Setup, an die wir uns halten moechten. 
 + 
 +==== Interfaces ==== 
 + 
 +  ''vmbr1'': NAT für Gäste, Netz ist hier `10.0.CLUSTERID.0/24`. Die Mitglieder des Cluster haben die IPs 1-10. 
 +  * ''vmbr2'': Layer 2 Freifunknetz, VLAN = Segment + 100. VLAN 255 ist Transfernetz in den Wireguard Backbone. 
 +  * ''vmbr999'': externes Interface mit öffentlicher IP. Finger weg, bei Hetzner droht Serversperrung wenn hier unbekannte MACs oder IPs unterwegs sind! 
 + 
 +==== 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:ip-adressen#zentraler_backbone|Zentraler Backbone]] aus ''10.191.255.0/24'' reservieren. Das stellt sicher, dass alle Gaeste spaeter auch prinzipiell an den Backbone angebunden werden koennen. 
 + 
 +==== Gast-IDs ==== 
 + 
 +Leiten sich aus dem letzten Oktett der Backbone-IP und der Cluster-ID ab: 
 + 
 +<code> 
 +Gast-ID = Cluster-ID * 1000 + letztes Oktett der IP 
 +</code> 
 + 
 +Also hat der Gast mit IP ''10.191.255.123'' auf Cluster 7 die IP ''7123''.
  
 ===== Nutzerkonto auf Proxmox anlegen ===== ===== Nutzerkonto auf Proxmox anlegen =====
  
-Die Nutzerkonten auf Proxmox Hosts werden alle mit Ansible verwaltet. Die Gruppe ffs gibt den Nutzern Berechtigung auf Proxmox zuzugreifen.+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 Zugriff aufs Proxmox-Webinterface.
  
   - Nutzer im Ansible anlegen   - Nutzer im Ansible anlegen
-  - Playbook all.yml laufen lassen.  +  - Playbook ''all.yml'' laufen lassen.  
-  - Den Nutzer per `pveum User add NUTZER@pambei Proxmox bekannt machen. Das muss nur einmal pro Cluster und Nutzer gemacht werden.+  - 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 ''<nowiki>pveum user modify --groups ffs nrb@pam</nowiki>'' zur Proxmox-Gruppe ffs hinzufuegen. Das muss nur einmal pro Cluster und Nutzer gemacht werden.
   - 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.
  
Zeile 24: Zeile 67:
 Entweder per Jumphost und IP des Gastes: Entweder per Jumphost und IP des Gastes:
  
-``` +''ssh -J PROXMOXHOST GASTIP'' 
-ssh -J PROXMOXHOST GASTIP  +
-```+
  
 Oder man fügt folgenden Schnipsel in seine `.ssh/config` ein: Oder man fügt folgenden Schnipsel in seine `.ssh/config` ein:
  
-``` 
-Host *.ffs05 
-        User root 
-        ProxyCommand ssh ffs05 -W 10.0.3.$(( $(echo %n | sed -e 's/.ffs05//') - 3000 )):22 
-``` 
  
-Und kann dann per `ssh GASTID.ffs05auf jeden beliebigen Gast hinter ffs05.+  Host *.ffs05 
 +          User root 
 +          ProxyCommand ssh ffs05 -W 10.0.3.$(( $(echo %n | sed -e 's/.ffs05//') - 3000 )):22 
 + 
 + 
 +Und kann dann per ''ssh GASTID.ffs05'' auf jeden beliebigen Gast hinter ffs05.
  
 ===== Neuen Container anlegen ===== ===== Neuen Container anlegen =====
  
 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. 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.
 +
 +  - IP-Adresse reservieren im wiki-Artikel [[technik:ip-adressen|IP-Adressen]].
 +  - Im Proxmox auf "Create CT" klicken
 +  - Container-ID, Hostnamen und SSH-Key eintragen
 +  - Bei Netzwerk die IP-Adresse aus dem Wiki-Artikel eintragen. Das letzte Oktett wird in das jeweilige Netz des Clusters eingesetzt. Beispiel: hat man die IP-Adresse ''10.191.255.163'' reserviert, nutzt man im Cluster ''3'' die IP ''10.0.3.163''. Netzmaske ist immer ''/24''. Gateway ist die Cluster-IP des jeweiligen Hosts.
 +  - Den Container oeffnen, auf "Console mode" klicken und auf "shell" aendern.
 +  - Unter Netzwerk die MTU von ''eth0'' auf ''1400'' umstellen (nur bei Hetzner, wegen  vSwitch).
 +
 +
 +
  • technik/proxmox.1675322310.txt.gz
  • Zuletzt geändert: vor 16 Monaten
  • von nrb