RabbitMQ-Bereitstellungsoption: Eigenständige Cluster - Mission Control 3.1.3.0

Genetec Mission Control™ – Bereitstellungshandbuch 3.1.3.0

Product
Mission Control
Content type
Handbücher > Bereitstellungshandbücher
Version
3.1
Release
3.1.3.0
Language
Deutsch
Last updated
2023-12-08

Sie können RabbitMQ in einer Clusterkonfiguration auf mindestens drei eigenständigen Computern bereitstellen.

Was Sie wissen sollten

Diese Bereitstellungsarchitektur erfordert mindestens drei eigenständige Computer (Knoten). Sie müssen sich im gleichen lokalen Netzwerk (LAN) befinden.
BEMERKUNG: Die Cloud-Bereitstellung wird derzeit nicht für Genetec Mission Control™ unterstützt.
Damit diese Bereitstellungsmethode funktioniert müssen die folgenden Anforderungen erfüllt werden:
  • Das Netzwerk zwischen den Knoten sollte zuverlässig sein, eine hohe Leistungsschwelle haben und eine geringe Latenzzeit aufweisen.
  • Wenn Sie Knoten in verschiedenen geografischen Regionen bereitstellen, müssen Sie die oben genannten Metriken garantieren können. Die meisten Cloud-Anbieter verfügen beispielsweise über sehr zuverlässige Verbindungen zwischen ihren Rechenzentren.
  • Die Knoten sollten sich in verschiedenen Server-Racks befinden, um eine bessere Toleranz zu erreichen, wenn sie vor Ort bereitgestellt werden.
  • Mehr Knoten verbessern zwar die Ausfallsicherheit, nicht aber die Leistung.

Es wird empfohlen, dass Sie über gründliche Kenntnisse der RabbitMQ-Konfigurationen verfügen. Details finden Sie in der offiziellen RabbitMQ-Dokumentation.

Hochverfügbarkeit in RabbitMQ-Clustern

In einem Cluster mit drei Knoten führt der Ausfall eines Knotens zu Leistungseinbußen, auch wenn die beiden anderen Knoten noch ausgeführt werden.

Die Hochverfügbarkeitskonfiguration von RabbitMQ verwendet den Raft-Consensus-Algorithmus, bei dem sich mehrere Server auf Werte einigen müssen.

In diesem Szenario bedeutet dies, dass für einen effektiven Betrieb mehr Knoten aktiv als offline sind. Die Formel zur Berechnung der Anzahl von Knoten, die für eine effektive Systemverfügbarkeit erforderlich sind, lautet (N/2)+1, wobei N die Anzahl der Knoten ist.
Aktive RabbitMQ-Cluster-Szenarien
Anzahl der Knoten im Cluster Anzahl der Knoten, die verfügbar sein müssen Anzahl der unterstützten Knotenausfälle
1 1 0
2 2 0
3 2 1
4 3 1
5 3 2
6 4 2
7 4 3
BEMERKUNG: Damit der Raft Consensus-Algorithmus und damit Ihr Cluster funktioniert, müssen alle Knoten eine aktive Kommunikationsverbindung haben.

Je größer der Cluster ist, desto mehr Einfluss hat er auf die Leistung. Wenn Knoten ausfallen und der Cluster in einem gestörten Zustand arbeitet, würde die Leistung stark abnehmen.

Um Hochverfügbarkeit für RabbitMQ einzurichten, siehe Konfigurieren von Hochverfügbarkeit für RabbitMQ.

Vorteile: Eigenständige RabbitMQ-Cluster

Hochverfügbarkeit
Die Unterbrechung des Betriebs ist minimal, selbst wenn ein Knoten ausfällt.
RabbitMQ-Ressourcen werden nicht freigegeben
Andere Dienste nutzen nicht die gleichen Ressourcen und haben daher keinen Einfluss auf die Leistung oder Verfügbarkeit von RabbitMQ.
Keine Ausfallzeiten für rollierende Updates
Sie können die RabbitMQ-Einrichtung jeweils für einen Knoten aktualisieren, ohne die Verfügbarkeit des Dienstes zu beeinträchtigen.

Nachteile: Eigenständige RabbitMQ-Cluster

Hochkomplexe Bereitstellung
RabbitMQ muss auf mindestens drei Knoten bereitgestellt werden. Der Bereitstellungsprozess ist langwierig und kompliziert.
Hoher Wartungsaufwand
In dem seltenen Fall, dass ein ganzer Cluster aufgrund von mehreren Netzwerkpartitionen offline geht, müssen Sie das Problem manuell beheben. Es wird empfohlen, gute Kenntnisse über RabbitMQ-Konfigurationen und -Diagnosen zu haben.

Details finden Sie in der offiziellen RabbitMQ-Dokumentation.

Qualität der Dienste

Die Verwendung dieser Bereitstellungsarchitektur bedeutet, dass die Qualität der Dienste stärker von Ihrer Systeminfrastruktur abhängt. Die Qualität der Dienste hängt direkt von der Qualität und Zuverlässigkeit Ihrer Netzinfrastrukturen ab.