Umstieg auf Proxmox VE

Sycoriorz

Well-Known Member
Mar 19, 2018
45
4
48
36
Hallo Zusammen,

ich bin durch auf Proxmox aufmerksam geworden.

Im Moment betreibe ich ein 2 Node aktiv-passiv cluster auf Ubuntu 16.04 mit DRBD8 und corosync als ClusterManager. Die VMs laufen in VirtualBox.Ich möchte umsteigen, da ich mit einem aktiven cluster am Maximum der Hardware angelangt bin, und keine weiteren VMs mehr laufen lassen kann.

Ich habe Proxmox in 3 vms getestet und habe diese 3 Nodes verbunden. Als Storage verwende ich Ceph.

Jetzt zu meinen Fragen:
1. Komme ich an die VMs die im Ceph abgelegt sind auch über FileZilla ran?
Oder sind die Daten nicht ohne weiteres abrufbar?
Unter DRBD wurde eine bspw Festplatte als Resource gemountet. Auf dem Masternode konnte auf dieses Verzeichnis zugegriffen werden und ich konnte die VMs wegsichern. Nachteil war das dieses nur möglich war solange DRBD diese Platte gemountet hatte.

Oder ist es möglich falls Proxmox nicht mehr startet, die Festplatte auszubauen und in einem anderem System mounten und die VMs wegsichern und in einem neuen System starten?
Ist das mit einem Ceph-Storage möglich?

2. Lässt sich auf die VMs auch direkt Remote zugreifen und nicht über Proxmox im Backend?
In VBox hat sich das über einen VRDE Port abwickeln lassen.

3. Wenn ich eine VM auf dem ersten Knoten laufen habe und an diesen Knoten den Stecker ziehe wird die Maschine automatisch auf einen anderen Knoten gezogen und gestartet(HA Einstellung). Ich möchte zwar das die Maschine auf den anderen Knoten umgelagert wird aber dort nicht automatisch hochfährt. Ich möchte die Situation manuell prüfen und dann starten. Der Grund ist ein Splitbrain zu verhindern. Falls beispielsweise ein Switch ausfällt. Ist das möglich?

Ich hatte versucht ohne HA zu arbeiten und bei abgeschalteten Node die darauf eingerichtete VM zu migrieren. Leider ohne Erfolg. Oder mache ich hier etwas Falsch?

Ich hoffe Ihr könnt mir bei meinen Fragen helfen.
Danke schonmal für eure Zeit.

Gruß
 
1. Komme ich an die VMs die im Ceph abgelegt sind auch über FileZilla ran?
der storage ist kein file basierter storage sondern block basiert und daher kann man auch keine files irgendwo sehen
was machbar ist, ist mit den ceph commandline tools (rbd export) die images exportieren

2. Lässt sich auf die VMs auch direkt Remote zugreifen und nicht über Proxmox im Backend?
inwiefern ist das gemeint? wenn in der vm ein vnc/ssh/rdp server installiert ist, kann man darauf zugreifen
um auf den eingebauten vnc server zuzugreifen muss man über die api/cli/webgui gehen

3. Wenn ich eine VM auf dem ersten Knoten laufen habe und an diesen Knoten den Stecker ziehe wird die Maschine automatisch auf einen anderen Knoten gezogen und gestartet(HA Einstellung). Ich möchte zwar das die Maschine auf den anderen Knoten umgelagert wird aber dort nicht automatisch hochfährt. Ich möchte die Situation manuell prüfen und dann starten. Der Grund ist ein Splitbrain zu verhindern. Falls beispielsweise ein Switch ausfällt. Ist das möglich?
solange eine 'normale' empfohlene konfiguration benutzt wird, kann kein split brain entstehen, wir benutzen corosync mit quorum und self fencing, das heißt, dass nur der teil des clusters dinge tun kann, der die mehrheit der stimmen hat (hälfte + 1; zb bei 3 nodes kann einer ausfallen, bei 5 können zwei ausfallen, etc)

ceph benutzt genauso quorum (dh man sollte eine ungerade anzahl an ceph montoren haben, wenn die mehrheit da ist -> man kann schreiben, sonst nicht)
das thema ceph ist aber sehr umfangreich und komplex, und man sollte sich zeit nehmen um zu verstehen was und wie ceph etwas macht

um eine vm auf eine andere node zu verschieben falls die erste offline ist, kann man auf der cli einfach das config file verschieben (solange alle resourcen auch auf der anderen node verfügbar ist, zb storage)

mit

Code:
mv /etc/pve/nodes/<alte-node>/qemu-server/<vmid>.conf /etc/pve/nodes/<neue-node>/qemu-server/<vmid>.conf
 
. Komme ich an die VMs die im Ceph abgelegt sind auch über FileZilla ran?
Du kannst die Images mit krbd als block dev anlegen und dann mounten.

Oder ist es möglich falls Proxmox nicht mehr startet, die Festplatte auszubauen und in einem anderem System mounten und die VMs wegsichern und in einem neuen System starten?
Ceph ist ein Verteiltes System also deine Daten liegen auf mehren Festplaten auf mehren Nodes und nicht wie bei DRBD auf einer Platte.
Ceph ist nicht wie DRBD fuer 2 nodes gemacht Ceph benötigt mind 3 Nodes und kann mehre 100 Nodes haben.

Lässt sich auf die VMs auch direkt Remote zugreifen und nicht über Proxmox im Backend?
Du kannst VM interne zugreifen (X2Go, RDP, ...) oder VNC verwenden.

Ich möchte zwar das die Maschine auf den anderen Knoten umgelagert wird aber dort nicht automatisch hochfährt.
Ceph hat keine Splitbrains. Auch Proxmox nicht. Wenn du in die Gefahr kommst ein Splitbrain zu produzieren schalten beide Systeme in read only mode.
Die VM config ist sowieso immer auf allen Nodes vorhanden.

Ich hatte versucht ohne HA zu arbeiten und bei abgeschalteten Node die darauf eingerichtete VM zu migrieren. Leider ohne Erfolg. Oder mache ich hier etwas Falsch?
Das musst du manuell über das pmxcfs machen. Also config im /etc/pve/nodes/<source node>/qemu-server/<VMID>.conf nach /etc/pve/nodes/<target node>/qemu-server/<VMID>.conf kopieren.
 
Vielen Dank für die Antworten.

Ceph hat keine Splitbrains. Auch Proxmox nicht. Wenn du in die Gefahr kommst ein Splitbrain zu produzieren schalten beide Systeme in read only mode.
wir benutzen corosync mit quorum und self fencing, das heißt, dass nur der teil des clusters dinge tun kann, der die mehrheit der stimmen hat (hälfte + 1; zb bei 3 nodes kann einer ausfallen, bei 5 können zwei ausfallen, etc)

Also wenn ich es richtig verstanden habe im bezug auf dem split brain.
Ich baue ein 3 Node cluster. Wenn einer abspringt bekommt das schreibrecht die restlichen zwei überlebenden.
Sagen wir die Nodes wären über einem switch verbunden und der switch fällt aus. Dann wären alle drei Nodes online aber es gibt keine Mehrheit im Cluster da die Knoten sich nicht mehr finden und das System schaltet in den read-only modus!?
(Werden dann alle laufenden VMs pausiert?)
Dann wartet corosync solange bis der gesamte Clusterverbund wieder eine Mehrheit hat und gibt der Mehrheit wieder das schreibrecht.
Das heist spaltet sich ein einzelner Knoten ab(Sei es weil das Netzwerkkabel durchtrennt wird) und auf dieser Maschine läuft eine VM merkt der Knoten selbst das keine Kommunikation zu den anderen Knoten möglich ist und pausiert die VM?
Wenn dies so ist wäre ein automatischer start der VMs kein Problem da der start nur läuft wenn die Mehrheit da ist.

um eine vm auf eine andere node zu verschieben falls die erste offline ist, kann man auf der cli einfach das config file verschieben (solange alle resourcen auch auf der anderen node verfügbar ist, zb storage)

mit

Code:
mv /etc/pve/nodes/<alte-node>/qemu-server/<vmid>.conf /etc/pve/nodes/<neue-node>/qemu-server/<vmid>.conf

Spitze das hat geklappt. Aber ist warscheinlich wenn ich aufgrund der obigen Kenntnis bzgl split brain das HA-aktiviere überflüssig.

inwiefern ist das gemeint? wenn in der vm ein vnc/ssh/rdp server installiert ist, kann man darauf zugreifen
um auf den eingebauten vnc server zuzugreifen muss man über die api/cli/webgui gehen

Ich habe das gebraucht wenn ich bspw eine VM neu aufgesetzt habe. Bei meinen VMs handelt es sich in der Masse um WindowsVMs.
Ich verwende wenn Windows aufgesetzt ist den RDP. Manchmal kann ich aber nach einen Neustart nicht per RDP drauf da der RDP-Dienst nicht sauber hochgefahren ist. Dies ist mit der noVNC Console gelöst über das Backend im Proxmox. Was aber wenn das Backend aus irgendeinem Szenario nicht erreichbar ist. Ich möchte ungern die Maschinen über die cli einfach abschießen bevor ich nicht versucht habe einen sauberes herunterfahren zu gewährleisten.

Per Vbox im headless mode war dies über "host-ip:vrde-port" mit dem RDP Client im Windows möglich.


Ceph ist ein Verteiltes System also deine Daten liegen auf mehren Festplaten auf mehren Nodes und nicht wie bei DRBD auf einer Platte.
Ceph ist nicht wie DRBD fuer 2 nodes gemacht Ceph benötigt mind 3 Nodes und kann mehre 100 Nodes haben.

Ok. In meinem Bsp habe ich drei Knoten und habe auf jedem node im ceph->osd eine ganze festplatte zugeteilt.
D.h.
node1 sdb1
node2 sdb1
node3 sdb1
Der Ceph pool ist auf replicated-rule.

Das bedeutet doch, dass auf allen nodes die jeweiligen Cephplatten synchron sind?!

der storage ist kein file basierter storage sondern block basiert und daher kann man auch keine files irgendwo sehen
was machbar ist, ist mit den ceph commandline tools (rbd export) die images exportieren

kann ich die Platte die in diesem Cephcluster steckt ausbauen und an einem anderen Rechner(Einfaches neuinstalliertes Debian System) per rbd export dann die images exportieren?
Oder muss das auf einem node der aus diesem cluster stammt passieren?

Vielen Dank

Gruß
 
Sagen wir die Nodes wären über einem switch verbunden und der switch fällt aus. Dann wären alle drei Nodes online aber es gibt keine Mehrheit im Cluster da die Knoten sich nicht mehr finden und das System schaltet in den read-only modus!?
(Werden dann alle laufenden VMs pausiert?)
wenn kein ha aktiviert ist, passiert noch gar nichts, außer dass man keine aktion durchführen kann die etwas ändert (start/stop/etc)
wenn ha aktiviert ist, wird eine node die nicht teil der mehrheit ist, nach einer zeit selbst gefencts (resettet), das passiert
damit die anderen nodes sicher sein können, dass die node auf keine resource mehr zugreift

Das bedeutet doch, dass auf allen nodes die jeweiligen Cephplatten synchron sind?!
ganz so einfach ist es nicht, ceph teilt die daten in objekte, und verteilt die objekte auf den platten

kann ich die Platte die in diesem Cephcluster steckt ausbauen und an einem anderen Rechner(Einfaches neuinstalliertes Debian System) per rbd export dann die images exportieren?
Oder muss das auf einem node der aus diesem cluster stammt passieren?
nein so geht das nicht, solange ceph noch in einem funktionierenden zustand ist, kann von dem cluster auf alle daten zugegriffen werden

am besten die doku von uns https://pve.proxmox.com/pve-docs/
und die von ceph durchlesen: http://docs.ceph.com/docs/master/
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!