複数のネットワーク・インターフェイスの使用
複数のネットワーク・インターフェイス用にCassandraを設定する、またはクラウド実装で異なるリージョンを使用する際の手順
複数のネットワーク・インターフェイス用にCassandraを設定する、またはクラウド実装で異なるリージョンを使用する方法
cassandra.yamlファイルおよびスニッチで使用されるプロパティ・ファイル(cassandra-rackdc.propertiesまたはcassandra-topology.properties)の両方で設定を構成する必要があります。
複数のネットワーク、またはクラウド実装でのリージョン全体でのcassandra.yamlの設定
複数のネットワーク、またはリージョン間のクラウド・シナリオでは、データ・センター間の通信は、外部IPアドレスを使用してのみ行われます。外部IPアドレスは、broadcast_address設定を使用して、cassandra.yamlファイルで定義されます。各ノードを以下のように構成します。
- cassandra.yamlで、listen_addressをノードのプライベートIPアドレスに設定し、broadcast_addressをノードのパブリックIPアドレスに設定します。
これにより、別のネットワークまたはリージョンのノードに結合され、複数データ・センターのサポートが有効になります。ネットワーク内またはリージョン内トラフィックのために、Cassandraは、接続を確立した後プライベートIPに切り替えます。
- cassandra.yamlファイル内シード・ノードのアドレスをパブリックIPのアドレスに設定します。プライベートIPはネットワーク間でルーティングできません。例:
seeds: 50.34.16.33, 60.247.70.52
注: すべてのノードをシードにしないでください。「ノード間のコミュニケーション(ゴシップ)」を参照してください。 - storage_portまたはssl_storage_portがパブリックIPファイアウォールで開かれていることを確認してください。
複数のネットワーク用のスニッチの構成
データ・センター間の外部通信は、broadcast_address(パブリックIP)を使用している場合にのみ行われます。
実稼働環境にはGossipingPropertyFileSnitchを推奨します。cassandra-rackdc.propertiesファイルは、このスニッチが使用するデータ・センターを定義します。
ネットワークのノードごとに、そのデータ・センターをcassandra-rackdc.propertiesファイルで指定します。
以下の例では、2つのcassandraデータ・センターがあり、データ・センターはそれぞれ、ワークロードの名前が付けられています。この例でのデータ・センター命名規則は、ワークロードに基づいています。DC1、DC2、または100、200など他の規則を使用することもできます。 (データ・センター名では大文字と小文字が区別されます。)
ネットワークA | ネットワークB |
---|---|
ノードとデータ・センター:
|
ノードとデータ・センター:
|
クラウド実装でのリージョン間通信用のスニッチの構成
クラウド実装の場合は、リージョン名はデータ・センター名として扱われ、アベイラビリティー・ゾーンはデータ・センター内のラックとして扱われます。たとえば、ノードがus-east-1リージョンにある場合、us-eastはデータ・センター名で、1がラックの場所です(ラックはレプリカの分散には重要ですが、データ・センターの命名には重要ではありません)。
以下の例では、2つのcassandraデータ・センターがあり、データ・センターはそれぞれ、ワークロードの名前が付けられています。この例でのデータ・センター命名規則は、ワークロードに基づいています。DC1、DC2、または100、200など他の規則を使用することもできます。 (データ・センター名では大文字と小文字が区別されます。)
ノードごとに、cassandra-rackdc.propertiesでそのデータ・センターを指定します。dc_suffixオプションは、スニッチで使用するデータ・センターを定義します。他の行は無視されます。
Region:us-east | Region:us-west |
---|---|
Node and data center:
この結果、4つのus-eastデータ・センターがあることになります。
|
Node and data center:
この結果、4つのus-westデータ・センターがあることになります。
|
パッケージ・インストール | /etc/cassandra/cassandra.yaml |
tarボール・インストール | install_location/resources/cassandra/conf/cassandra.yaml |
Windowsインストール | C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra.yaml |
パッケージ・インストール | /etc/cassandra/cassandra-rackdc.properties |
tarボール・インストール | install_location/conf/cassandra-rackdc.properties |
Windowsインストール | C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra-rackdc.properties |
パッケージ・インストール | /etc/cassandra/cassandra-topology.properties |
tarボール・インストール | install_location/conf/cassandra-topology.properties |
Windowsインストール | C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra-topology.properties |