CoreBiz Virtual Server Base (VSB)

overview.drawio

Hardware-Betrachtungen

Die benötigte Hardware für grundlegende Dienste, speziell die Anforderungen an CPU und RAM, sind abhängig von der geplanten Umgebung. Im Regelfall sind sie jedoch deutlich niedriger als in reinen Microsoft-Umgebungen. Oft werden in einer CoreBiz-Cluster-Umgebung bereits vorhandene Server verwendet, da eine Neuanschaffung in der Regel nicht notwendig ist.

Ein Grundsystem kann schon mit weniger als 100 GB auskommen: VSB und BAS benötigen ca. 60 GB, dazu kommt ein Minimum von 10 GB für ISO-Images. Für die Storage-Auslegung ist vor allem der Bedarf für weitere virtuelle Maschinen zu berücksichtigen. Dies hat auch einen wesentlichen Einfluss auf das Backup-Konzept.

Im Regelfall verfügt der physische Server, auf dem der VSB läuft, über ein eigenes RAID-System für System und Daten. Bei Bedarf können auch zentrale Storage-Dienste manuell eingerichtet werden. Dedizierte Quorum-Festplatten sind aber nicht nötig. Jeder physische und virtuelle Server hat seinen eigenen unabhängigen Storage-Pool.

Cluster

Die VSB ist die Plattform vom CoreBiz-Cluster, mit der sich Server virtuell auf derselben Hardware betreiben lassen (Typ-1-Hypervisor). Er sorgt für die Verfügbarkeit der vorhandenen Gastsysteme und für die Datenreplikation. Er wird direkt über ein Image auf dem physischen Server installiert.

In der Regel wird die VSB als Cluster betrieben. Dabei können beide physischen Server die identischen virtuellen Maschinen ausführen. Aus Gründen der Datenkonsistenz ist jedes Gastsystem jedoch immer nur auf einem VSB aktiv. Die Regeln für das automatische Umschalten sind konfigurierbar und Gastsysteme können auch manuell durch den Administrator umgeschaltet werden. Dies ist besonders bei Erweiterungen oder teilweisem Ausfall der physischen Hardware von großem Vorteil.

Nach der Ersteinrichtung können die folgenden Komponenten auch über die zentrale grafische Oberfläche CMC (CoreBiz Management Console) verwaltet werden.

Komponenten

Die VSB basiert auf:

  • KVM Hypervisor, integraler Bestandteil des Linux Kernels:
    KVM ist ein Typ-1-Hypervisor (Bare-Metal). Er führt VMs als Standard-Linux-Prozesse aus und nutzt Hardware-Virtualisierungserweiterungen, um die Leistung zu steigern. Es werden verschiedenste Gastbetriebssysteme wie Linux und Windows unterstützt.

  • QEMU für die Hardware-Emulation:
    Nicht jede Komponente eines physischen Servers lässt sich virtualisieren. Für die Emulation dieser zusätzlichen Komponente (z.B. Disks, Netzwerk, Graphics), ist Qemu zuständig.

  • libvirt für das Management der Gastbetriebssysteme:
    Libvirt ist eine Sammlung quelloffener Werkzeuge zur Verwaltung virtueller Maschinen auf einem Hostsystem.

  • DRBD (Distributed Replicated Block Device):
    DRBD ist eine Software zur Datenreplikation für Linux. DRBD arbeitet als Block-Device, also unterhalb des Dateisystems. Vereinfacht kann man sich DRBD als RAID 1 über das Netzwerk zwischen zwei Servern vorstellen.

    Die Replikations-Implementierung ist so gewählt, dass sie für Gastbetriebssysteme unsichtbar ist. Ein Gastbetriebssystem greift wie gewohnt auf seine Daten zu, während im Hintergrund die Replikation auf den Cluster-Partner erfolgt.

    • Daten werden dem schreibenden Dienst erst als geschrieben gemeldet, wenn die Replikation erfolgreich durchgeführt wurde. Um Latenzen klein zu halten, empfiehlt sich für den Produktivbetrieb deswegen eine Netzwerkverbindung (Cluster-Interconnect) mit 10 Gb/s oder mehr.

    • DRBD kooperiert mit der HA-Software Pacemaker und implementiert auf diesem Weg ein Resource-Level-Fencing, um Split-Brain-Szenarien zu vermeiden. Selbst bei einem Split-Brain tritt durch die Art der Implementierung keine Datenkorruption auf. Im Falle eines Falles kann und muss der Administrator entscheiden, welche der Instanzen die aktuellen (gültigen) Daten enthält, und den Split-Brain auflösen.

  • LVM (Logical Volume Manager):
    LVM teilt die vom RAID-Controller physisch bereitgestellte Partition in virtuelle Partitionen, die sich in der Größe verändern lassen. LVM kann auch Snapshots anlegen.

  • Pacemaker (High Availability):
    Pacemaker überwacht alle Cluster-Ressourcen auf beiden Knoten. Fällt ein Knoten oder eine einzelne Ressource aus, startet Pacemaker den Dienst auf dem verbliebenen Cluster-Knoten automatisch neu. Ein komplexes Regelwerk gibt vor, wie und in welcher Reihenfolge dies erfolgt.