5 votes

Comment puis-je faire en sorte que Cassandra procède à un rééquilibrage automatique ?

J'envisage un cluster Cassandra, mais l'effort d'administration semble être assez élevé. Existe-t-il un moyen de configurer Cassandra pour qu'il rééquilibre automatiquement les nœuds lorsque de nouvelles machines sont ajoutées, que certaines sont éteintes ou temporairement indisponibles, etc.

4voto

Tom Steger Points 11

En fait, Cassandra rééquilibre automatiquement les nœuds au fur et à mesure que vous en ajoutez de nouveaux ; il ne s'agit simplement pas d'une approche très sophistiquée. Il choisit le nœud dont la " charge " est la plus élevée (voir la sortie de l'anneau nodetool) et place le nouveau nœud sur l'anneau pour reprendre environ la moitié du travail du nœud le plus chargé. Cela n'effectue pas un rééquilibrage du cluster dans son ensemble, mais minimise la charge de streaming nécessaire à l'expansion du cluster. Cette stratégie d'auto-équilibrage a tendance à fonctionner au mieux si vous doublez presque la taille du cluster à chaque expansion.

Si vous avez besoin d'un rééquilibrage plus nuancé, vous pouvez déplacer la position d'un nœud sur l'anneau à l'aide de la commande "nodetool move" (qui est en fait une enveloppe pour déclasser et réinsérer le nœud).

2voto

Alexis Lê-Quôc Points 343

Pas encore, car l'attribution des jetons est actuellement statique. Vous avez le choix d'écrire un script pour l'équilibrage comme suit http://wiki.apache.org/cassandra/Operations#Ring_management ou doubler la taille du cluster en une seule fois avec l'auto-bootstrap. Aucune de ces options n'est vraiment attrayante pour le moment, mais il n'est pas terrible d'ajouter des nœuds et de déplacer des jetons tant que vous laissez suffisamment de temps pour la migration des données.

Une chose à surveiller nodetool loadbalance ne va pas faire ce que vous pensez.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X