見つけた関連ドキュメントを読みましたが、まだ疑問があります。
私が読んだもの
http://wiki.apache.org/cassandra/Operations#Moving_nodesから
クラスターにノードを追加すると、リングのバランスが崩れます。完璧なバランスを得る唯一の方法は、ノードごとに新しいトークンを計算し、nodetool move コマンドを使用して手動で各ノードに割り当てることです。
不均一な数のノードによって容量を増やす必要がある場合は、クラスター全体のトークンを再計算してから、nodetool move を使用して新しいトークンを既存のノードに割り当てる必要があります。すべてのノードが新しいトークンの割り当てで再起動されたら、nodetool クリーンアップを実行して、すべてのノードで未使用のキーを削除します
しかし、これらの順序については明確ではありません。
次のシナリオでそれを行う方法を説明できますか?
- Cassandra 1.1.9 を使用しているため、仮想ノードは使用されていません。
- 5 つのノードを持つクラスター リングがあり、それぞれが 20% を所有しています
- 彼らのトークンは
- 0
- 34028236692093846346337460743176821145
- 68056473384187692692674921486353642291
- 102084710076281539039012382229530463436
- 136112946768375385385349842972707284582
ノードを 2 つ追加したいと考えています。
どのような手順に従う必要がありますか? cassandra をインストールして構成し、元の 5 をシードとして使用し、新しいトークンを計算する必要があることはわかっていますが、どの順序で を使用してデータを移動する必要がありますnodetool move
か? 一つ一つですか?
最初のデータを移動すると、データはどうなりますか? いつでも利用できますか?
元の 5 つのノードを新しいトークンに移動する前に、2 つの新しいノードを開始する必要がありますか?
ステップバイステップガイドが理想的です。
バージョン1.2より前に行う必要があることに注意してください