# Hardware und Zugang

Es gibt 2 Server mit gleicher Hardware: hypervisor01 (1) bei rrbone und blech02 (2) im WILA.  

| Gerät | Komponente | Adresse/Netzmaske | Gateway | VLAN |
|---|----|---|---|---|
| hypervisor01 | Management | 31.172.28.215/26 | 31.172.28.254 | n/a |
| hypervisor01 | Proxmox | 31.172.33.30/27 | 31.172.33.1 | n/a |
| blech02 | Stromschaltleiste | 192.168.48.38/24 | 192.168.48.1 | n/a |
| blech02 | Management | 192.168.48.70/24 | 192.168.48.1 | n/a |
| blech02 | Proxmox 1. Adresse | 91.204.4.52/28 | 91.204.4.49 (oder .50) | 160 |
| blech02 | Proxmox 2. Adresse | 91.204.5.46/25 | 91.204.5.1 | 510 |

Die 192er Adressen sind zwar private IP, aber aus dem FF@home Wartungsnetz zu erreichen.  
Mit der Stromschaltleiste wird der Strom für das Gehäuse und damit zunächst für das Managementboard im Gehäuse eingeschaltet. Nun sind IPMI-Konsole und Webinterface des Managementboards nutzbar.  
Mit dem Managementboard kann dann der eigentliche Server eingeschaltet werden (im Webinterface: roter Knopf oben rechts).

Die Maschine (1) hat keine vorgeschaltete Stromschaltleiste. Macht nix, denn hypervisor01 muss sowieso durchlaufen, weil fast der ganze FF-DO auf ihn angewiesen ist.  
Aber solange blech02 noch nicht im Produktivbetrieb ist, gilt: **blech02 bitte komplett ausschalten**, d.h. auch per Stromleiste. Das Klima (und die Stromrechnung;) werden es danken: Denn so eine Maschine verbraucht idle fast 100 Watt. Und selbst wenn der eigentliche Server aus ist, verbraucht das Managementboard immer noch 20 Watt:-(

Vom Managementboard aus kann man auf das Bootmenü und die serielle Konsole des Servers zugreifen. Damit kann man ein virtuelles Installations-Medium booten um ein OS auf dem Server zu installieren (in unserem Fall Debian/Proxmox) sowie die IP-Konfiguration im OS durchzuführen und zu prüfen. Nun (endlich:) kann man übers Netzwerk die Proxmox-GUI direkt erreichen und das Proxmox darüber weiter konfigurieren.  

# Stromschaltleiste  

Die Stromschaltleiste hat eine GUI und ist selbsterklärend. Es können die beiden Dosen 21 und 22 geschaltet werden, der Server hat 2 Netzteile. 

# IP Management IPMI-Konsole  

Mit der vorgeschalteten IPMI-Konsole kann der Server verwaltet werden. Als Erstes sollte der Server eingeschaltet werden, sein Schaltzustand ist oben links rot=aus oder grün=ein zu erkennen.  
Die IPMI-Konsole bietet eine Serverkonsole auf Java-Basis, mit der der Bootvorgang gesteuert werden kann. Dort können auch externe Speicher mit ISO-Dateien der Proxmox-Software eingebunden werden, um sie zu installieren.  
Bei der Installation sollten die beiden Platten als ZFS-Laufwerke Raid1 formatiert werden. Der Server hypervisor01 hat noch zusätzlich 2 SSD sda und sdb aus einem Vorgänger.   

# Netzwerk-Konfiguration mit der IPMI-Konsole  

Bei der Installation von Proxmox wird auch die Netzwerkkonfiguration eingestellt, dann sollte der Zugriff auf die Proxmox-Oberfläche möglich sein. Falls das nicht der Fall ist, muss das Netzwerk über die IPMI-Konsole und dort über die bash konfiguriert werden. Die Dateien /etc/resolv.conf und /etc/network/interfaces werden im nächsten Absatz erläutert, müssen aber notfalls hier eingegeben und bearbeitet werden.  

# lesson learned 1  

Bei der Installation von Proxmox in der IPMI-Konsole war ein Tippfehler für die DNS-ip aufgetreten, der später in der Proxmox-Oberfläche die Namensauflösung verhinderte. (91.204.56.66 statt 91.204.6.66) Das fiel erst bei der Prüfung von resolv.conf auf. Die Datei resolv.conf war während der Installation (falsch) erstellt worden. Sie wurde nachträglich korrigiert.  

# Proxmox-Oberfläche und ssh  

Die Proxmox-Oberfläche ist nur zu erreichen, wenn die Stromschaltleiste zugeschaltet und in der IPMI-Konsole der Server eingeschaltet sind. Ein Zugang ist dann auch per ssh möglich, das Passwort entspricht dem der Proxmox-Oberfläche.  

## Konfiguration hypervisor01 rrbone  

Die beiden Dateien resolv.conf und interfaces:

root@hypervisor01:~# cat /etc/resolv.conf  
    
    search ffdo.de  
    nameserver 195.182.2.2  
    nameserver 195.182.2.22  

root@hypervisor01:~# cat /etc/network/interfaces
    
    auto lo  
    iface lo inet loopback  

    auto enp65s0f0  
    iface enp65s0f0 inet manual  

    auto enp65s0f1  
    iface enp65s0f1 inet manual  

    auto bond0  
    iface bond0 inet manual  
        bond-slaves enp65s0f0 enp65s0f1  
        bond-miimon 100  
        bond-mode 802.3ad  
        bond-xmit-hash-policy layer3+4  

    auto vmbr0  
    iface vmbr0 inet static  
        address 31.172.33.30/27  
        gateway 31.172.33.1  
        bridge-ports bond0  
        bridge-stp off  
        bridge-fd 0  

    iface vmbr0 inet6 static  
        address 2a01:a700:48af::30/64  
        gateway 2a01:a700:48af::1  

    auto vmbr1  
    iface vmbr1 inet manual  
        bridge-ports none  
        bridge-stp off  
        bridge-fd 0  
        mtu 9000  
    #FFDO INT  

### Aufbau der Netzwerkkonfiguration hypervisor01 

Die beiden physikalischen Schnittstellen enp65s0f0 und enp65s0f1 werden eingeschaltet und über die bond0-Schnittstelle logisch zusammengefasst, d.h. der Durchsatz wird verdoppelt. Die bond0-Schnittstelle wird über die Bridge vmbr0 mit der ip 31.172.33.30/27 und dem gateway 31.172.33.1 verbunden.  

Wichtig: die Bridge ist für die Verbindung der VMs nach aussen notwendig, ohne Bridge können für die VMs keine Schnittstellen eingerichtet werden.  

- Images für die VM  

ISO- oder andere image-Dateien werden unter /var/lib/vz unter den jeweiligen Unterverzeichnissen z.B. .../iso abgelegt.    
Eine Möglichkeit, dorthin Dateien zu kopieren, ist z.B. root@hypervisor01~ /var/lib/vz/iso#  scp user@quell-ip:/tmp/dateiname zieldateiname (oder ".", wenn gleich). Damit stehen sie bei der Erstellung einer VM zur Auswahl.  

## Konfiguration blech02 WILA  

Die beiden datein resolv.conf und interfaces:

root@blech02:~# cat /etc/resolv.conf
    
    search ffdo.net  
    nameserver 91.204.6.66  
    nameserver 91.204.4.5  

root@blech02:~# cat /etc/network/interfaces
    
    auto lo  
    iface lo inet loopback  
 
    # für den Notfall dhcp  
    # auto eno2np1  
    # allow-hotplug eno2np1  
    # iface eno2np1 inet dhcp  

    # so soll es sein mit der Bridge vmbr0:  
    # iface eno2np1 inet manual  

    # ohne Bridge  
    allow-hotplug eno1np0  
    iface eno1np0 inet manual  

    allow-hotplug eno2np1  
    iface eno2np1 inet manual 

    auto eno2np1.510  
    iface eno2np1.510 inet static  
	address 91.204.5.46/25  
	gateway 91.204.5.1  
	vlan-rawdevice eno2np1  
	dns-nameservers 91.204.6.66 91.204.4.5  
	dns-namesearch ffdo.net  

    allow-hotplug eno1np0  
    iface eno1np0 inet manual  

    auto eno1np0.160  
    iface eno1np0.160 inet static  
	address 91.204.4.52/28  
	#gateway 91.204.49  
	vlan-raw-device eno1np0  
	#dns-nameservers 91.204.6.66 91.204.4.5  
	#dns-search ffdo.net  

    #auto vmbr0  
    #iface vmbr0 inet static  
    #	address 91.204.5.46/25  
    #	gateway 91.204.5.1  
    #	bridge_ports eno2np1  
    #	bridge_stp off  
    #	bridge_fd 0  

    iface enp65s0f0 inet manual  

    iface enp65s0f1 inet manual  

### Aufbau der Netzwerkkonfiguration blech02 

Die beiden physikalischen Schnittstellen eno1np0 und eno2np1 werden eingeschaltet und jeweils mit dem vlan 510 bzw. 160 verbunden. Die beiden Schnittstellen enp65s0f0 und enp65s0f1 sind aktiv, aber nicht angeschlossen.  

Wichtig: die Bridge fehlt noch, ist aber für die Verbindung der VMs nach aussen notwendig, ohne Bridge können für die VMs keine Schnittstellen eingerichtet werden, Stand 17.11.21.  

# Update von Proxmox 6.3 auf 6.4 und 7.1  
## Update von Proxmox 6.3 auf 6.4  

Das wird in der Konsole über apt update und apt-upgrade vorgenommen.  

# Update von Proxmox 6.4 auf 7.1  

Dazu stellt Proxmox auf ihrer Webseite eine Vorgehensweise vor. Quelle: https://pve.proxmox.com/wiki/Upgrade_from_6.x_to_7.0. Da der FFDO Proxmox ohne Subscription betreibt, kann die Datei /etc/apt/sources.list.d/pve-enterprise.list gelöscht werden. Nur die Datei /etc/apt/sources.list ist (ohne Subscription) wichtig, ihr fehlt der Abschnitt

# lesson learned 2
    
    # PVE pve-no-subscription repository provided by proxmox.com,
    # NOT recommended for production use
    deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription

der eingefügt werden muss. Solange er fehlt, fragt die Update-Routine, ob man pve wirklich löschen wolle...;)  

Ist die Datei /etc/apt/sources.list vollständig, kann mit apt dist-upgrade das Update vorgenommen werden, vorher sollte noch die Version 6.4 mit apt ugrade aktualisiert werden.  
Nach einem Reboot erscheint die Version Proxmox 7.1.  

# MAC-Adressen in Proxmox 7  

In Proxmoxx 7 werden die MAC-Adressen anders festgelegt:  
    
    Linux Bridge MAC-Address Change

    With Proxmox VE 7 / Debian Bullseye, a new systemd version is used, that changes how the MAC addresses of Linux  network 
    bridge devices are calculated:

    MACAddressPolicy=persistent was extended to set MAC addresses based on the device name. Previously addresses were 
    only based on the ID_NET_NAME_* attributes, which meant that interface names would never be generated for virtual 
    devices. Now a persistent address will be generated for most devices, including in particular bridges.

    -- https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html#v241

    A unique and persistent MAC address is now calculated using the bridge name and the unique machine-id 
    (/etc/machine-id), which is generated at install time. 

Also sollte die MAC-Adresse der Bridge festgelegt werden:  
    
    auto vmbr0
    iface vmbr0 inet static
    address 192.168.X.Y/24
    hwaddress aa:bb:cc:12:34
    # ... remaining options

Jetzt können die VMs kommen...
