<
Proxmox STRATO Server
01 Vorbereitung Server und VM 02 Netzwerk und SSH 03 Firewall 04 Serielle Konsole 05 Installation Kleine Themen
>

Proxmox Server auf einem STRATO Server

Grundlegendes

Ich interessiere mich schon länger für virtuelle Maschinen. Zunächst begann ich am Desktop mit Virtuellen Maschinen auf Basis von VirtualBox. Ich hatte zu Hause bereits auch einen kleinen Server stehen, der zunächst ein normales Linux bessen hat. Darauf hatte ich kleine Anwendungen installiert. Diese lagen alle im Hauptsystem. Etwas später lernte ich Proxmox kennen und die Idee virtuelle Maschinen auf Basis von LXC zu haben. Durch die Kernel basierten Container sind CPU belastung und RAM verbrauch viel minimaler, als bei sog. KVM Maschinen. Docker, welches sich das LXC Prinzip angeignet hat, ist deshalb ziemlich ähnlich von den Eigenschaften. Allerdings hat man bei LXC virtuelle Maschinen, die man auch als solche verwaltet, wartet und ausbauen kann. Für einen Server fand ich das Proxmox Konzept passender.

Ich habe mir einen Server bei STRATO zugelegt und hatte auch auf diesem das Interesse gehabt verschiedenes installieren und testen zu können. Man kann sich sog. Root Server bei verschiedenen Anbietern besorgen. Dort kann man vorkonfigurierte Betriebssystem Installationen haben und auch eigene Betriebssysteme installieren. Dies ist je nach Anbieter unterschiedlich. Außerdem kann es jeh nach gewünschtem OS unterschiedlich sein, wie man es einrichten muss.
Ich hatte mich entschieden einen Proxmox auch auf meinen Server bei STRATO zu installieren, damit ich viele verschiedene Dinge mit dem Server anstellen kann. Auf dieser Seite und den Unterseiten zeige ich, wie ich meinen Server mit dem Proxmox installiert habe. Da dies ein bisschen aufwendiger ist, krigen die wichtigen Details teilweise eigene Seiten.

Mein Server bei STRATO

Dedizierte Server Pakete

Ich habe mir bei STRATO einen Dedizierten Server (Root- Server) zugelegt. Als Klasse für das installierte OS ist hier Linux vorgesehen. Für Kunden, die Windows basierte Serverdienste hosten wollen, gibt es auch Pakete mit vorinstalliertem Windows Server Produkt. Aber für mein Ziel einen Proxmox dort zu installieren, welcher auf einem Debian Linux basiert, macht natürlich ein Linux Server mehr Sinn.
Es gibt noch die sog. "Managed Server". Bei diesen bekommt man ein Server, dessen ganze Hardware man auslasten kann und darauf installieren kann, was man möchte. Man bekommt im Gegensatz zu einem Server auf Basis einer VM die volle "Power" der Hardware. Der Eine- oder Andere Administrator, vorallem in kleineren Unternehmen, möchte vielleicht sich jedoch maximal um die Software kümmern, die man selber einsetzt oder Webseiten, die man selber Hosted. Bei den Managed Servern wird das eigentliche System und die grundliegenden Software Programme für das Webhosting von STRATO installiert, gewartet und aktuell gehalten. Dafür kann man dann nicht frei über das System auf der Hardware entscheiden.
Möchte man selbst über das OS entscheiden und nur eine Grundinstallation gestellt bekommen, nimmt man also einen "Dedicated Server Linux", also einen Root Server.

Meine Serverauswahl

my-server meta facts

Ich habe mir einen Root Server ausgewählt, da man bei diesen das System vollständig verwalten kann. Außerdem kann man ein eigenes OS installieren. Ich wollte genau das, nämlich einen Proxmox darauf installieren. Damit habe ich die Möglichkeit mir verschiedene Container und VMs nachzuinstallieren, bis hin zu einer Windows VM.
Dies ist bereits mein zweiter Server. Der erste war der Vorgänger des Proxmox Servers und ist auf einer der Unterseiten noch zu sehen. Im Bild kann man einen Ausschnitt sehen von meiner aktuellen Serverkonfiguration. Ich habe eine günstigere Konfiguration bestellt. Er hat eine Intel Xeon CPU, mit vier Kernen. Man sieht, er hat zwei SSD die als Soft-RAID 1 konfiguriert werden wenn der Server initial aufgesetzt wird. Es gäbe auch Varianten mit Hard-RAID, aber das habe ich nicht unbedingt gewollt. Der Vorgänger war eine spezielle Variante mit einer SSD ohne RAID in Kombination mit zwei Festplatten im RAID-1.
Das OS wird nun auf die SSD installiert mitsamt den Daten. In der alten Konfiguration wurde wegen der vorhandenen Disks das OS auf die einzelne SSD installiert und die RAID Festplatten waren für die Daten vorgesehen.
Diese Hardware reicht für einen Proxmoxserver aus. Jeh mehr auf Containern basiert, desto mehr kann man installieren. Für VMs reicht es auch, jedoch muss man beim Parallelbetrieb mehrerer VMs schon aufpassen und nachrechnen. Es geht hierbei um die virtuelle "logische Aufteilung" der CPU Threads und der Aufteilung des RAMs. Eine Windows VM z.B. braucht recht viel, weshalb dann eigentlich keine weitere VM nebenher Platz findet (als laufende Maschine). Container haben immer genügend Platz.
Der Server hat nur eine Anbindung von 100Mb/s. Das reicht mir, da ich eigentlich nie mit mehr Geschwindigkeit (meinem Download) mich verbinden kann. Also egal ob zu Hause oder Mobil. Wenn man viel Traffic erlauben möchte oder seine Glasfaserleitung beim Verbinden ausnutzen möchte, kann man ein Gigabit Paket zusätzlich buchen.

Besonderheiten bei STRATO Servern

Netzwerk / Internet

Ein Server bei STRATO verfügt oftmals über zwei Netzwerk Schnittstellen. Eine ist immer Angeschlossen und verbunden zum Internet. Die andere ist nicht verbunden. Sie wird im Auftrag an ein extra Netzwerk Angeschlossen, wenn der Kunde "ProNet VLAN" aktivieren lässt, um mehrere Server untereinander zu verbinden.
Die meisten Server haben keine eigene Firewall vorgelagert. Dies muss man bedenken, weil dass bedeutet, man muss selber auf offene Ports achten. Für die Dienste, die man bereitstellen will, ist das dadurch einfach. Aber ich hatte mit dem Proxmox das Problem, dass dieser für gewöhnlich einen Magagement Webinterface hat und diesen Port wollte ich nicht uneingeschränkt zum Internet offen haben.

Server Betriebssystem auswahl / installieren

Wenn man sich den eigenen Server initial einrichtet, kann man zwischen verschiedenen Betriebssystemen wählen. Diese werden dann für einen auf dem Server automatisch installiert. Dies geschieht alles über die Weboberfläche die von STRATO bereitgestellt wird. Dort kann man das zu installierende Betriebssystem wählen und ein paar Einstellungen, wie die Partitionierung vornehmen.
Das bedeutet der Server wird mit einem Template provisioniert und im Anschluss einem zu Verfügung gestellt. Man installiert das OS nicht per Setup Umgebung, wie sie von den verfügbaren Betriebssystemen angeboten wird. Die Installation wird damit für das unterstützte OS einfacher. Allerdings kann man so nie die vom OS definierte normale installation verwenden. Möchte man eines der angebotenen Systeme verwenden, ist das egal und man kann und sollte das angebotene System auch verwenden. Es ist im weitesten Sinne so vorkonfiguriert zu verstehen, wie ein Raspberry Pi OS Image, welches man auf SD-Karte für einen Pi installiert. Allerdings ist das Installieren eines eigenen OS mit Herrausforderungen verbunden. Im Fall von Proxmox, sogar besonderen.

Zugriff im Notfall

Aus verschiedenen Gründen braucht man manchmal eine Möglichkeit den Server mit einem anderen System starten zu können. Manchmal gibt es Dinge, die sich allein einfach nur erledigen lassen, wenn das Hauptsystem nicht läuft.
Den Server kann man dann auf der Konfigurationswebseite von STRATO auf das Rettungssystem umstellen lassen. Jeh nachdem wie dringend der Neustart ist kann man es so einstellen, dass man selber den Neustart dem Server befiehlt, wenn die Umstellung erfolgt ist. Oder die Not ist groß, weil ein Angriff läuft oder man etwas verstellt hat und keinen Zugriff mehr auf den Server. Dann lässt sich der Prozess auch mit hartem Neustarten befehlen, wobei das "Strom aus und wieder an" bedeutet und ggf. Datenverlust.
Der Server startet nach Umstellung ein aus dem STRATO Netzwerk kommendes Debian Live System, welches ein paar Werkzeuge gleich mitbringt. Es gelten, da es ein Livesystem ist, hier die gleichen "Gesetze", wie in einem System, welches man zur installation per ISO an einem Normalen Computer starten kann.
Man hat vollständigen Zugriff als "root" auf alles. Das System wird beim setzen des "Rescue OS" auf ein zufälliges Passwort für "root" eingestellt, welches man auf der Konfigurationswebseite kopieren kann, solange das "Rescue OS" eingestellt ist.
Da man auf alles Zugriff hat, kann man hier auch die Datenträger laden und eine andere Installationsumgebung laden. Zum Beispiel als sog. "chroot" (Change Root-) Umgebung. Dies ist eine Möglichkeit, um ein eigenes Betriebssystem installieren zu lassen.

Serielle Konsole

Eine weitere Möglichkeit auf den Linux Server zuzugreifen ist eine Serielle Konsole. Diese Möglichkeit erfordert auch keinen Neustart. Ferner kann man hierbei sogar den Server steuern, bevor dieser ein laufähiges Betriebssystem geladen hat. Allerdings betrifft dies nur Bootloader, welche Serielle Konsolen unterstützen, wie z.B. der grub-Bootmanager.
In dem Bootmanager muss die Unterstützung aktivert sein. Dem Linux Kernel muss dies ebenfalls beim Start als Parameter übergeben werden. In beiden Fällen muss auch die Baud-Rate der Seriellen Konsole richtig eingestellt sein. Bei STRATO Images ist das der Fall. So hat man die Möglichkeit die Textkonsole des Bootloaders und des laufenden Linuxsystems zu verwenden. So ist ein ändern von Einstellungen am System auch dann möglich, wenn kein Zugriff über Internet mehr möglich ist, ohne den Server neu starten zu müssen. Einzigste bedingungen in Linux ist, dass man sich mit einem Nutzer entsprechend anmelden kann.
Allerdings ist damit nur die Verwendung der Befehlszeile möglich und einiger Programme, die auch im Konsolenmodus richtig Zeichnen. Man hat (auch wenn man nach außen eine SSH Verbindung aufbaut) keine weitere Funktionalität einer richtigen SSH Konsole.
Was man nicht zu Verfügung hat ist eine vollständige KVM-Konsole. Damit wird das laden einer Grafischen installation nicht mögich.

Installation von Proxmox auf meinem STRATO Server

Als ich mich für den STRATO Server entschied, hatte ich gleich die Idee, einen Proxmox aus den oben genannten Gründen dort drauf zu installieren. Das Proxmox OS ist kein unterstütztes OS, weshalb die eigene Installation zur Herrausforderung wurde. Man kann zwar auf einem Debian "von der Stange" mit ein Paar Umbaumaßnahmen auch die Software von Proxmox inklusive des Kernels installieren. Allerdings bringt Debian dann eventuell Pakete mit sich, die in dem richtigen Proxmox OS nicht instaliert wären. Oder es fehlen Pakete und es läuft nur so "halb Nativ".
Daher entschied ich mich das richtige Proxmox Image installieren zu wollen. Aber aus den oben aufgeführten Eigenheiten eines STRATO Servers entstanden Dinge die es zu lösen galt, damit eine Installation überhaupt geht. Das installieren eines eigenen Betriebssystems ist auf dem STRATO Server sowieso nicht einfach. Deswegen zeige ich hier auf den Unterseiten das ganze auch so, dass es für andere OS nachmachbar sein soll.
Der Proxmox hatte derzeit keine Textkonsolen basierte installation. Man kann leider das Install ISO auch nicht einfach extrahieren und die Installation in einer "chroot" Umgegung ausführen. Daher bin ich hierfür einen weit Umständlicheren weg gegangen, um zu zeigen, dass - und wie es geht. Dabei spielen alle oben genannten Besonderheiten eine Rolle.
Die entstehenden Themenseiten verlinke ich hier unter dem Absatz. Dort kommt man auf die Themenseiten und im Seitenmenü.