Clustering-Architektur
GitHub Enterprise Server besteht aus einer Reihe an Diensten. In einem Cluster werden diese Dienste knotenübergreifend ausgeführt, und die Last der Anforderungen wird zwischen ihnen ausgeglichen. Änderungen werden automatisch mit redundanten Kopien auf separaten Knoten gespeichert. Die meisten Dienste sind gleichwertige Peers mit anderen Instanzen desselben Diensts. Die Dienste mysql-server
und redis-server
bilden hierzu die Ausnahmen. Diese werden mit einem einzelnen primären Knoten betrieben, der mindestens einen Replikatknoten aufweist.
Learn more about services required for clustering.
Ist Clustering die richtige Lösung für meine Organisation?
Clustering bietet eine bessere Skalierbarkeit, indem die Last auf mehrere Knoten verteilt wird. Diese horizontale Skalierung empfiehlt sich allenfalls für Organisationen mit Zehntausenden Entwicklern. Das Einrichten eines redundanten und skalierbaren Clusters kann jedoch komplex sein und erfordert eine genaue Planung. Diese zusätzliche Komplexität muss bei der Installation, bei Disaster Recovery-Szenarien und bei Upgrades berücksichtigt werden.
GitHub Enterprise Server erfordert eine niedrige Latenz zwischen den Knoten und ist nicht für die Redundanz über geografische Standorte hinweg vorgesehen.
Clustering bietet Redundanz, ist jedoch nicht dazu vorgesehen, eine Hochverfügbarkeitskonfiguration zu ersetzen. Weitere Informationen finden Sie unter „Hochverfügbarkeitskonfiguration“. Eine Konfiguration mit einer primären/sekundären Failover-Instanz ist viel einfacher als Clustering und erfüllt die Anforderungen vieler Organisationen. Weitere Informationen finden Sie unter „Unterschiede zwischen Clustering und Hochverfügbarkeit“.
Note: GitHub Packages on GitHub Enterprise Server does not currently support clustering.
Wie kann ich auf Clustering zugreifen?
Clustering ist für bestimmte Skalierungssituationen vorgesehen, nicht aber für jede Organisation. Wenn Du Clustering in Betracht ziehen möchtest, wende Dich bitte an Deinen GitHub's Vertriebsteam.