Architecture de clustering
GitHub Enterprise Server se compose d’un ensemble de services. Dans un cluster, ces services s’exécutent sur plusieurs nœuds et les demandes dont ils font l’objet sont gérées par un équilibreur de charge. Les modifications sont automatiquement stockées avec des copies redondantes sur les différents nœuds. La plupart des services sont des homologues égaux d’autres instances du même service. Les services mysql-server
et redis-server
sont des exceptions à ce principe. Ils fonctionnent avec un nœud principal unique avec un ou plusieurs nœuds réplicas.
Découvrez plus en détails les services nécessaires au clustering.
Le clustering est-il indiqué pour mon organisation ?
Le clustering offre une meilleure scalabilité en distribuant la charge entre plusieurs nœuds. Cette mise à l’échelle horizontale peut être préférable pour certaines organisations comptant des dizaines de milliers de développeurs. Cependant, configurer un cluster redondant et scalable peut être une tâche complexe qui demande en outre une planification minutieuse. Il convient de prendre en compte cette complexité supplémentaire pendant l’installation, les scénarios de reprise d’activité après sinistre et les mises à niveau.
GitHub Enterprise Server exige une faible latence entre les nœuds et n’est pas destiné à la redondance entre les emplacements géographiques.
Le clustering assure la redondance, mais n’est pas destiné à remplacer une configuration à haute disponibilité. Pour plus d’informations, consultez Configuration à haute disponibilité. Une configuration de basculement principal/secondaire est beaucoup plus simple que le clustering et servira les besoins de nombreuses organisations. Pour plus d’informations, consultez Différences entre le clustering et la haute disponibilité.
Remarque : pour le moment, GitHub Packages sur GitHub Enterprise Server ne prend pas en charge le clustering.
Comment accéder au clustering ?
Le clustering est conçu pour des situations de mise à l’échelle spécifiques et ne s’adresse pas à chaque organisation. Si le clustering est quelque chose que vous voulez prendre en considération, contactez votre représentant dédié ou l’L’équipe commerciale GitHub.