既存のプロダクション・クラスターでの仮想ノードの有効化
既存のプロダクション・クラスターで仮想ノード(vnodes)を有効にする際の手順および推奨事項
単一トークン・ノードをvnodeに直接変換することはできません。ただし、vnodeをあらかじめ有効にして別のデータ・センターを構成し、既存のデータを新しいノードに自動的に分散することができます。この方法を使用すれば、パフォーマンスに大きな影響は与えません。
制約事項: DataStaxでは、DSE Searchと共にvnodeを使用しないように推奨しています。ただし、DSE Searchと共にvnodeを使用することに決めた場合は、8個を超えるvnodeを使用しないようにし、allocate_tokens_for_local_replication_factorオプションが cassandra.yaml ファイルで環境に合わせて正しく構成されていることを確認してください。
cassandra.yaml
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra.yaml |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra.yaml |
手順
- クラスターに新しいデータ・センターを追加します。
- vnodeが有効になっている新しいデータ・センターを起動したら、クライアントがその新しいデータ・センターを使用するように切り替えます。
-
nodetool repairを使用してフル・リペアを実行します。
このステップを行うことで、クライアントを新しいデータ・センターに移行した後、以前の書き込みがすべて新しいデータ・センターに追加されていること、古いデータ・センターを切り離すときに、ヒントなどを含め、何も取りこぼしがないことが確実になります。
- 以後、古いデータ・センターを参照しないように、スキーマを更新します。
-
クラスターから古いデータ・センターを切り離します。
「データ・センターの使用廃止」を参照してください。