単一トークン・アーキテクチャーのクラスターへのデータ・センターの追加
仮想ノードを使用するクラスターではなく、単一トークン・アーキテクチャーのクラスターにデータ・センターを追加するための手順。
仮想ノードを使用するクラスターではなく、単一トークン・アーキテクチャーのクラスターにデータ・センターを追加するための手順。
警告: クラスターに新しいノードのみを追加します。新しいノードとは、DataStax Enterpriseによってこれまで起動されていないシステムのことです。新しいノードでは絶対に、データ・ディレクトリー、saved_caches、commitlog、およびhintsに以前のデータを含めてはいけません。これまでテストに使用されたノードや別のクラスターから削除されたノードを追加すると、古いデータがクラスターにマージされ、重大な問題の原因になる場合があります。
手順
- すべてのキースペースで必ずNetworkTopologyStrategyを使用します。
-
新しいノードごとに、cassandra.yamlファイルの構成プロパティを以下のように編集します。
auto_bootstrap
をFalse
に設定します。initial_token
を設定します。新しいデータ・センターのトークンのオフセットを確認してください(単一トークン・アーキテクチャー・データ・センターを初期化するを参照)。cluster name
を設定します。- デフォルト以外に設定します。
- シード・リストを設定します。クラスター内の各ノードには、同じシード・リストを割り当て、各データ・センターから1つ以上のノードを含める必要があります。一般的に、データ・センターあたり1つから3つまでのシードが使用されます。
-
すべてのノードで使用されるプロパティ・ファイルのいずれかを更新し、新しいノードを含めます。再起動する必要はありません。
- GossipingPropertyFileSnitch:cassandra-rackdc.properties
- PropertyFileSnitch:cassandra-topology.properties
- 明示的に命令されるまではクライアントが新しいノードに問い合わせをしないよう、新しいノードが自動検出されないことを確認してください。
- QUORUM整合性レベルを読み取りおよび書き込みに使用している場合は、LOCAL_QUORUMまたはEACH_QUORUMの整合性レべルを調べ、そのレベルが複数データ・センターの要件に適合するかどうかを確認してください。
- 新しいノードを起動します。
-
GossipingPropertyFileSnitch
は、cassandra-topology.propertiesが存在する場合は、常にこのファイルを読み込みます。新しいクラスター、またはPropertyFileSnitch
から移行されたクラスターの各ノードからファイルを削除します。 -
クラスター内のすべてのノードを起動したら、以下の手順に従ってください。
- 拡張されたクラスターのキースペースのレプリケーション係数を変更します。
- 新しいデータ・センターの各ノードでnodetool rebuildを実行します。
cassandra-rackdc.propertiesファイルの場所は、インストールのタイプによって異なります。パッケージ・インストールInstaller-Servicesインストール
/etc/dse/cassandra/cassandra-rackdc.properties tarボール・インストールInstaller-No Servicesインストール
installation_location/resources/cassandra/conf/cassandra-rackdc.properties cassandra-topology.propertiesファイルの場所は、インストールのタイプによって異なります。パッケージ・インストールInstaller-Servicesインストール
/etc/dse/cassandra/cassandra-topology.properties tarボール・インストールInstaller-No Servicesインストール
installation_location/resources/cassandra/conf/cassandra-topology.properties cassandra.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストールInstaller-Servicesインストール
/etc/dse/cassandra/cassandra.yaml tarボール・インストールInstaller-No Servicesインストール
installation_location/resources/cassandra/conf/cassandra.yaml