• Onlineshop
    Onlineshop
    • Shop
    • Thomas-Krenn-Wiki
    • Über Thomas-Krenn
    • Kontakt
    Thomas-Krenn-Magazin durchsuchen
    mag - Home mag
    • Shop
    • Thomas-Krenn-Wiki
    • Über Thomas-Krenn
    • Kontakt

      Container-Virtualisierung mit Proxmox

      0
      • von Redaktion
      • in Expertentipps · Virtualisierung
      • — 17.11.2020 um 07:29
      Container-Virtualisierung mit Proxmox

      Je nach Einsatzgebiet eignet sich entweder Container-Virtualisierung oder der Einsatz von virtuellen Maschinen (VMs) ist sinnvoller. Im Bereich Container lässt sich neben Docker bspw. Proxmox auf Linux Container Basis nutzen, mit dem sich komplette Applikationen bereitstellen lassen. In diesem Artikel erfahren Sie, welche Vor- und Nachteile die Container-Virtualisierung mit Proxmox LXC Container bietet.

      Container vs. VMs

      Container sind eine leichtgewichtige Art der Virtualisierung, die bei Cloud-Anbietern und auch bei der Entwicklung moderner modularer Software wie Microservices äußerst beliebt ist. Der Erfolg etwa von Docker und darauf aufsetzender Frameworks wie Kubernetes sind der beste Beweis dafür. Im Gegensatz zu virtuellen Maschinen werden Container nativ auf dem Host-Betriebssystem eingesetzt. Dieses sorgt dafür, dass für jeden Container eine isolierte Umgebung zur Verfügung steht, es sperrt also die Prozesse ein. Da dabei so gut wie kein Overhead durch separate Gast-Kernel oder Hardware-Emulation entsteht, sind problemlos hunderte Container auf einem Host möglich. Die Isolation der Gastsysteme ist jedoch nicht so vollständig wie bei virtuellen Maschinen, denn alle Gastsysteme nutzen den Betriebssystem-Kern des Hosts. Das heißt, Container-Virtualisierung ist immer ein größeres Sicherheitsrisiko als Hardware-Virtualisierung mit VMs.

      Unterscheidung Docker und Container

      Obwohl Docker fast zum Synonym für Container geworden ist, gibt es auch andere Technologien, die sich für bestimmte Zwecke sogar besser eignen. Docker ist eher auf sehr leichtgewichtige Container ausgelegt, die jeweils nur einen einzigen Dienst zur Verfügung stellen. Für komplexe Anwendungen braucht man also sehr viele Container und deshalb wiederum Orchestrierungs-Plattformen wie Kubernetes, um die Menge und Vielfalt der Container zu bändigen.

      Proxmox auf Linux Container Basis (LXC)

      Bei der Container-Virtualisierung geht Proxmox VE einen anderen Weg und stellt das Schwergewicht unter den Leichtgewichten dar. Seine Container basieren auf LXC (Linux Container), einer Container-Technologie, die bereits in jeder Linux-Distribution vorhanden ist. Proxmox LXC Container sind eher „schwergewichtig“, also dafür ausgelegt, mehrere Dienste oder komplette Applikationen bereitzustellen. Die Proxmox-Entwickler bezeichnen sie als „System Container“, im Gegensatz zu „Micro Containern“ wie bei Docker. Bei Proxmox lassen sich Container sehr ähnlich zu virtuellen Maschinen (VMs) verwalten. Netzwerk- und vor allem Storage-Anbindung ist flexibler und mittels der Proxmox-Tools weitaus einfacher zu konfigurieren als bei LXC-Containern in „normalen“ Distributionen. Natürlich ist es auch möglich, in Proxmox eine virtuelle Maschine (VM) einzurichten und dort Docker inklusive Kubernetes oder einer andere Container-Management-Plattform zu installieren. Dann lassen sich die Vorteile von Proxmox wie skalierbares Storage und Hochverfügbarkeit auch für andere Container-Plattformen nutzen.

      Für die Verwaltung der nativen Proxmox-Container ist das Proxmox Container Toolkit (pct) verantwortlich. Wie immer bei Proxmox VE sind dessen grundlegende Funktionen auch über das Web Interface erreichbar. Für komplexere Management-Aufgaben kann der Administrator auf gut dokumentierte Kommandozeilenwerkzeuge zurückgreifen.


      Mehr Sicherheit durch weniger Privilegien

      Proxmox bietet eine Reihe von Möglichkeiten, die Sicherheit der Gastsysteme zu erhöhen. So können LXC-Container wahlweise im privilegierten oder unprivilegierten Modus angelegt werden. Bei letzterem sorgt das Betriebssystem dafür, dass alle Prozesse des Gastes mit weniger Rechten als denen des Host-Systems ausgeführt werden. Dafür werden User Namespaces genutzt. Das ist ein Feature des Linux-Kernels, das privilegierte User IDs innerhalb des Containers auf unprivilegierte User IDs außerhalb abbildet. Damit lassen sich „Ausbruchsversuche“ bösartiger Software verhindern. Zusätzlich sorgt das standardmäßig aktivierte Kernel-Sicherheitsmodul AppArmor mit sinnvollen Voreinstellungen dafür, dass auch in privilegierten Containern die Ausführungsrechte beschränkt werden, ohne die Funktionalität allzu zu stark einzuschränken.

      Container erlauben immer nur Gastsysteme vom gleichen Typ wie das Hostsystem, bei Proxmox VE also Linux. Jedoch sind sie nicht auf die jeweilige Linux-Distribution des Host-Systems beschränkt. Außer Debian-Varianten und Ubuntu können also auch Red-Hat-, SUSE- oder Archlinux-basierte Systeme betrieben werden.

       Die Zuweisung von Hardware-Ressourcen an Container orientiert sich bei Proxmox VE an virtuellen Maschinen.
      Die Zuweisung von Hardware-Ressourcen an Container orientiert sich bei Proxmox VE an virtuellen Maschinen.

      Flexibles Storage-Konzept auch für Container

      Das Storage-Konzept der Proxmox-Container macht es besonders einfach, all die verschiedenen Storage-Arten zu nutzen, die Proxmox VE bietet. Jeder Container kann mehrere Mount Points haben – anwendungsspezifisch lassen sich damit je nach Bedarf lokaler Speicher, Shared Storage wie iSCSI oder NFS und auch verteilte Systeme mit Ceph einbinden. Bei den eher minimalistischen Container-Ansätzen a la Docker ist das oft nur mit großem Aufwand möglich. Wie bei virtuellen Maschinen (VMs) sind auch bei Containern Snapshots mit einer breiten Palette von Optionen sowie Migrationen auf andere physische Hosts innerhalb eines Clusters möglich. Im Gegensatz zu VMs müssen sie dafür aber kurz heruntergefahren werden. Live-Migrationen von Containern unterstützt Proxmox nicht.

      Templates für schnelles Deployment

      Um Container schnell zu installieren, stehen zwei Arten von Images zur Verfügung: Die vom Proxmox-Team selbst gepflegten Templates für alle gängigen Linux-Distributionen und die Templates vom Turnkey Linux Projekt, das Linux-Images für über 100 vorkonfigurierten Stacks und Web-Applikationen zur Verfügung stellt. Letztere sind vor allem interessant, um in wenigen Schritten eine komplexe, mehrstufige Anwendung bereitzustellen und sich die Details der Datenbank- und Webserverkonfiguration zu ersparen. Einige Beispiele für Turnkey-Templates:

      • Nextcloud
      • WordPress
      • Mattermost
      • Moodle
      • OpenVPN

      Im Gegensatz zu den generischen Proxmox-Templates sind Turnkey Linux Templates nicht speziell auf Proxmox VE abgestimmt. In der Praxis kann es deshalb manchmal notwendig sein, bei der Installation manuell nachzuarbeiten. Das betrifft vor allem den Betrieb in unprivilegierten Containern, weil manche Dienste mit den eingeschränkten User IDs nicht korrekt starten. Meist findet sich im Proxmox-Userforum oder auf den Github-Seiten des LXC-Projekts eine Lösung. Wer selbst Templates erstellen will, kann dazu die Werkzeuge der jeweiligen Linux-Distribution nutzen, etwa den Debian Appliance Builder.

       Für das schnelle Aufsetzen von Servern stehen Templates aller wichtigen Linux-Distributionen und eine Vielzahl von vorkonfigurierten Web-Applikationen zur Verfügung.
      Für das schnelle Aufsetzen von Servern stehen Templates aller wichtigen Linux-Distributionen und eine Vielzahl von vorkonfigurierten Web-Applikationen zur Verfügung.

      Proxmox Container Fazit

      Hinsichtlich Handhabung und Verwendungszweck stellt Container-Virtualisierung mit Proxmox einen Kompromiss zwischen virtuellen Maschinen (VMs) und den aktuell sehr populären leichtgewichtigen Microcontainern dar. Dank nahtloser Einbindung in GUI und Tools von Proxmox VE braucht ein Administrator weder tiefgreifende Kenntnisse von Linux Container (LXC) selbst, noch benötigt er ein Orchestrierungs-Framework wie Kubernetes. Zur Bereitstellung von Microservices, bei denen die Gleichung „Ein Container – ein Dienst“ gilt, eignen sich Proxmox Container hingegen weniger. Für die schnelle und dennoch skalierbare Bereitstellung kompletter Web-Applikationen oder Test- und Entwicklungssystemen auf Linux-Basis sind sie jedoch perfekt.


      Tags: ProxmoxVirtualisierung

      Redaktion

      — Redaktion

      In unserem TKmag legen wir großen Wert darauf, alle Artikel von unseren Experten schreiben zu lassen. Aus diesem Grund gibt es den Redaktions-Account: Unter diesem Namen stellen wir alle Artikel ein, die von unseren Mitarbeitern ohne eigenen Account verfasst wurden.

      Das könnte Sie auch interessieren

      • Windows Installation – Partition auf einem RAID größer als 2TB
      • Open-E JovianDSS – Funktionsweise, Einsatzszenarien und Lizensierung
      • UCS Einsatzmöglichkeiten Einsatzmöglichkeiten und Funktionen von UCS
      • Die Bedeutung von Next-Gen Firewalls: Vorausschauende Integration von Zenarmor

      Schreibe einen Kommentar Antwort abbrechen

      Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

        • Home
        • Expertentipps
        • Container-Virtualisierung mit Proxmox
        • Thomas-Krenn-Produkte

          • » Rack-Server
          • » Tower-Systeme
          • » Workstations
          • » Industrie-PCs
          • » Storage-Systeme
          • » Low Energy Systeme
          • » PCs & Thin Clients
          • » Einsatzzweck
          • » Software
          • » Infrastruktur
        • Über die Thomas-Krenn.AG

          Die Thomas-Krenn.AG ist einer der größten Hersteller individueller Server- und Storage-Systeme in Deutschland. Seit 2002 beliefert das Unternehmen Endanwender, Wiederverkäufer und Betreiber von Rechenzentren mit hochwertiger Hardware nach dem Build-to-Order-Prinzip. Auch als Lösungsanbieter für individuelle Kundenprojekte steht die Thomas-Krenn.AG für höchste Servicequalität bei hardwarenaher Entwicklung, Auftragsfertigung, Produktveredlung und Logistik.

          Sie ist damit ein anerkannt zuverlässiger Partner für Industrie, Systemhäuser, Dienstleister sowie mittelständische Endkunden aus jeder Branche. Die Thomas-Krenn.AG produziert mit derzeit rund 200 Mitarbeitern alle Server in Deutschland am Standort Freyung.

        • Unsere Autoren

          Redaktion
          Redaktion
          Thomas Niedermeier
          Thomas
          Niedermeier
          Florian Fritsch
          Florian
          Fritsch
          Werner Fischer
          Werner
          Fischer
          Ulrich Wolf
          Ulrich
          Wolf
          Andreas Ljubisic
          Andreas
          Ljubisic
          Christoph Mitasch
          Christoph
          Mitasch
          Bernhard Seibold
          Bernhard
          Seibold
          Benjamin Bayer
          Benjamin
          Bayer
          Stefan Bohn
          Stefan
          Bohn
          Armin Oberneder
          Armin
          Oberneder

        alle Rechte vorbehalten c/o Thomas-Krenn.AG