class: center, middle ![img80](IncusVsProxmox-1024.webp) ## Incus VS Proxmox ### Hauke Goos-Habermann #### https://goos-habermann.de --- ### Über mich - Entwickler des
Softwareverteilungssystems m23
- Organisator der
Kieler Open Source und Linux Tage
-
Dienstleister zu m23, Linux und Freier Software
- Softwareentwicklung (PHP, BASH, C/C++, JS, Python und was sonst so gebraucht wird...) - Administration - Schulungen - Support - Beratung - quasi **alles**, *was mit Linux zu tun hat* - Wöchentlicher Livestream *"Jean und Hauke Show"* auf https://www.youtube.com/c/LinuxGuides - Community-Video-Serie *"Nicht der Weisheit letzter Schluß"* auf
tube.tchncs.de
und
YouTube
mit **beruflichen** oder **privaten Projekten** - Sucht gern nach Alternativen :-) --- ### Vorbereitung Sowohl Proxmox 8.1 als auch Incus unter Debian 12 werden auf demselben Server unter VirtualBox ausgeführt. Die VMs haben jeweils: * 4 CPUs * 4 GB Ram * 25 GB Platte * Netzwerkbrücke * Nested VT-x/AMD-V und Nested Paging Wenn in der VirtualBox-Oberfläche beim Konfigurieren der VMs *System* ⇒ *Prozessor* ⇒ *Nested VT-x/AMD-V aktivieren* **ausgegraut** ist, hilft wahrscheinlich der Umweg über die Kommandozeile: ```bash VBoxManage modifyvm 'Proxmox 8.1' --nested-hw-virt=on ``` --- ### Incus und Proxmox Ein paar grundlegende Informationen * Virtualisierung mit KVM * Containerisierung mit LXC * Weboberfläche * Linux und Debian als Betriebssystem bzw. Distribution Incus haben Micha und ich uns bereits in einem Livestream angeschaut https://www.youtube.com/watch?v=kumLySKHOmQ --- ### Incus: Installationsvorbereitung Das Incus-Paket stammt aus dem
Zabbly-Repo
, daher muß es noch extra eingebunden werden. ```bash # Signatürschlüssel herunterladen mkdir -p /etc/apt/keyrings/ wget https://pkgs.zabbly.com/key.asc -O /etc/apt/keyrings/zabbly.asc # Paketqpellenliste anlegen sh -c 'cat <
/etc/apt/sources.list.d/zabbly-incus-stable.sources Enabled: yes Types: deb URIs: https://pkgs.zabbly.com/incus/stable Suites: $(. /etc/os-release && echo ${VERSION_CODENAME}) Components: main Architectures: $(dpkg --print-architecture) Signed-By: /etc/apt/keyrings/zabbly.asc EOF' ``` Informationen dazu: https://github.com/zabbly/incus Installationsdokumentation: https://linuxcontainers.org/incus/docs/main/installing/ --- ### Incus: Paketinstallation Nun installieren wir die Incus-Pakete mit Abhängigkeiten und da wir neben den Linux Containern (**LXC**) auch die *Vollvirtualisierung* **KVM** nutzen wollen, brauchen wir auch das entsprechende Paket. ```bash # Paketinformationen holen apt-get update # Incus-Hauptpaket, KVM und Weboberfläche installieren apt-get install -y incus qemu-kvm incus-ui-canonical # Neustart reboot ``` #### NTP aktivieren Sollte auf dem Debian 12 kein NTP-Client aktiv sein, so holen wir das nach mit: ```bash apt install -y systemd-timesyncd timedatectl set-ntp true ``` --- ### Incus-Nutzer Incus verwendet die normalen Linux-Benutzer für das Anmelden an der Incus-Weboberfläche oder für das Kommandozeilenwerkzeug. Die Gruppenzugehörigkeit entscheidet über die Befugnisse des Benutzeraccounts: * ***incus***: Grundlegender Zugriff auf Incus, aber keine Administration * ***incus-admin***: Administratorzugang Als root ```bash # Gruppe anlegen newgrp incus-admin # Einen Benutzer der Incus-Admin- adduser
incus-admin # oder Nutzergruppe hinzufügen adduser
incus # Als root und normaler Benutzer abmelden exit; exit # Neu anmelden, damit die Gruppenzugehörigkeit wirkt ``` --- ### Incus-Konfiguration Die **Incus-Komponenten** richten wir nun noch ein: ```bash # Interaktive Einrichtung incus admin init Would you like to use clustering? (yes/no) [default=no]: Do you want to configure a new storage pool? (yes/no) [default=yes]: Name of the new storage pool [default=default]: Would you like to create a new local network bridge? (yes/no) [default=yes]: What should the new bridge be called? [default=incusbr0]: What IPv4 address should be used? (CIDR subnet notation, âautoâ or ânoneâ) [default=auto]: What IPv6 address should be used? (CIDR subnet notation, âautoâ or ânoneâ) [default=auto]: Would you like the server to be available over the network? (yes/no) [default=no]: yes Address to bind to (not including port) [default=all]: Port to bind to [default=8443]: Would you like stale cached images to be updated automatically? (yes/no) [default=yes]: Would you like a YAML "init" preseed to be printed? (yes/no) [default=no]: yes ``` Mehr: https://linuxcontainers.org/incus/docs/main/howto/initialize/#non-interactive-configuration Im Browser öffnen: https://a.b.c.d:8443/ui/login --- ### Proxmox: Optimieren Proxmox hat ohne Abo ein paar nervige Eigenschaften, die Ihr folgendermaßen loswerdet: ```bash # Skriptbibliothek laden wget https://goos-habermann.de/commonInstall.inc; . commonInstall.inc # Proxmox auf kostenlose Paketquellen umstellen CI_proxmoxNoSubscriptions # Proxmox-Abo-Meldung von der Weboberfläche entfernen CI_removeProxmoxSubscriptionMessage # System aktualisieren apt update; apt dist-upgrade -y # Neustart reboot ``` Im Browser öffnen: https://192.168.1.181:8006 --- class: center, middle ### Informationen zu mir und meinen Dienstleistungen, m23, ... ### https://goos-habermann.de