単一トークン・アーキテクチャーのクラスターへのデータ・センターの追加
仮想ノードを使用するクラスターではなく、単一トークン・アーキテクチャーのクラスターにデータ・センターを追加するための手順。
仮想ノードを使用するクラスターではなく、単一トークン・アーキテクチャーのクラスターにデータ・センターを追加するための手順。
警告: クラスターに新しいノードのみを追加します。新しいノードとは、DataStax Enterpriseによってこれまで起動されていないシステムのことです。新しいノードでは絶対に、データ・ディレクトリー、saved_caches、commitlog、およびhintsに以前のデータを含めてはいけません。これまでテストに使用されたノードや別のクラスターから削除されたノードを追加すると、古いデータがクラスターにマージされ、データの損失や破損の原因になる場合があります。
cassandra-rackdc.properties
cassandra-rackdc.propertiesファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra-rackdc.properties |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra-rackdc.properties |
cassandra-topology.properties
cassandra-topology.propertiesファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra-topology.properties |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra-topology.properties |
cassandra.yaml
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra.yaml |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra.yaml |
手順
- すべてのキースペースで必ず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を実行します。