ワークロードの種類ごとにデータ・センターが1つだけある混在ワークロード・クラスター内でノードを構成するための手順。
ほとんどの状況では、検索、分析、トランザクションなどの各ワークロードの種類は、別々の仮想データ・センター内に編成される必要があります。ワークロードの分離により、リソースの競合を回避できます。ただし、トランザクション(OLTP)ワークロードと分析(OLAP)ワークロードを組み合わせるとパフォーマンスが低下しますが、分析用の大きな需要がない場合は、ワークロードをSearchAnalyticsノードに組み合わせることができます。クエリー対象のノードだけでDSE Graphを有効にできます。
CQLを使用してキースペースを作成すると、1つのノードのクラスターであっても、Cassandraではクラスターの仮想データ・センターが自動的に作成されます。同じ種類のワークロードを実行するノードを同じデータ・センターに割り当てます。異なる種類のノードを対象とした別々の仮想データ・センターは、その他の種類のワークロードを実行するノードからDSE Searchを実行するワークロードを分離します。
このシナリオでは、混在ワークロード・クラスター内のワークロードの種類ごとに1つのデータ・センターのみがあります。たとえば、クラスターに3つのanalyticsノード、3つのCassandraノード、2つのDSE Searchノードがある場合、クラスターには各種ワークロードごとに1つずつ、合計3つのデータ・センターがあります。これに対し、複数データ・センター・クラスターには、各種ワークロードごとに複数のデータ・センターがあります。
手順
この構成例では、デフォルトの整合性レベルがQUORUMである、1つのデータ・センター内の2つのラックにまたがる8つのノードで構成されるクラスターをインストールする方法を説明します。
-
ノードに以下のIPが割り当てられており、ラックごとに1つのノードがシードの役割を担うと想定します。
- node0 110.82.155.0(Cassandraシード)
- node1 110.82.155.1(Cassandra)
- node2 110.82.155.2(Cassandra)
- node3 110.82.155.3(Analyticsシード)
- node4 110.82.155.4(Analytics)
- node5 110.82.155.5(Analytics)
- node6 110.82.155.6(Search - シード・ノードはDSE Searchには必要ありません)。
- node7 110.82.155.7(Search)
-
ノードがファイアウォールの背後にある場合は、内外で通信するために、必要なポートを開きます。
-
DataStax Enterpriseが実行されている場合は、ノードを停止してデータを消去します。
- Installer-Servicesおよびパッケージのインストール:
$ sudo service dse stop
$ sudo rm -rf /var/lib/cassandra/* # Clears the data from the default directories
- Installer-No Servicesおよびtarボールのインストール:
インストール・ディレクトリーから以下を実行します。
$ sudo bin/dse cassandra-stop
$ sudo rm -rf /var/lib/cassandra/* # Clears the data from the default directories
-
各ノードについて構成ファイル内のプロパティを設定します。
ディスクのレイアウト、共有ライブラリなどに関してクラスター内の各ノードが同じ場合は、すべてのノードでcassandra.yamlファイルの同じコピーを使用できます。
設定するプロパティ:
- num_tokens:「」を参照してください。
- -seeds:各シード・ノードのinternal_IP_address
- listen_address: 空
設定されていないと、Cassandraは、そのホスト名に関連付けられているローカル・アドレスについてシステムに尋ねます。正しいアドレスが生成されていない場合は、listen_addressを指定する必要があります。
- endpoint_snitch: スニッチ
「endpoint_snitch」および「スニッチについて」を参照してください。スニッチを変更する場合は、「Switching snitches」を参照してください。
- auto_bootstrap:false
データなしで新しいクラスターを初期化する場合にのみ、ブートストラップ設定を追加します。
- 以前のバージョンのcassandra.yamlファイルまたはdse.yamlファイルを使用している場合は、『アップグレード・ガイド』で、削除された設定を必ず確認してください。
各データ・センターから1つ以上のシード・ノードを含める必要があります。DataStaxは、データ・センターごとに複数のシード・ノードを持つことを推奨します。すべてのノードをシード・ノードにしないでください。
cluster_name:'MyDemoCluster'
num_tokens: 256
seed_provider:
- class_name:org.apache.cassandra.locator.SimpleSeedProvider
parameters:
-seeds:"110.82.155.0,110.82.155.3"
listen_address:
endpoint_snitch:GossipingPropertyFileSnitch
-
ファイルのプロパティをユース・ケースに応じて設定します。
-
(GossipingPropertyFileSnitch)または(PropertyFileSnitch)ファイルで、命名規則を使用してデータ・センターとラックの名前を各ノードのIPアドレスに割り当て、不明なノードにはデフォルトのデータ・センター名とラック名を割り当てます。
注: このファイルが存在する場合、GossipingPropertyFileSnitchは常にcassandra-topology.propertiesを読み込みます。新しいクラスター、またはPropertyFileSnitchから移行したクラスターの各ノードからファイルを削除します。
cassandra-topology.propertiesファイルのデフォルトの場所は、インストールのタイプによって異なります。
Installer-Servicesおよびパッケージ・インストール |
/etc/dse/cassandra/cassandra-topology.properties |
Installer-No Servicesおよびtarボール・インストール |
install_location/resources/cassandra/conf/cassandra-topology.properties |
cassandra-rackdc.propertiesファイルのデフォルトの場所は、インストールのタイプによって異なります。
Installer-Servicesおよびパッケージ・インストール |
/etc/dse/cassandra/cassandra-rackdc.properties |
Installer-No Servicesおよびtarボール・インストール |
install_location/resources/cassandra/conf/cassandra-rackdc.properties |
dse.yamlファイルの場所は、インストールのタイプによって異なります。
Installer-Services |
/etc/dse/dse.yaml |
パッケージ・インストール |
/etc/dse/dse.yaml |
Installer-No Services |
install_location/resources/dse/conf/dse.yaml |
tarボール・インストール |
install_location/resources/dse/conf/dse.yaml |
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール |
/etc/dse/cassandra/cassandra.yaml |
tarボール・インストール |
install_location/resources/cassandra/conf/cassandra.yaml |
タイプまたはデータ・センターまたはクラスター |
vnode(トークン)数 |
Cassandraのみ |
128 |
Spark |
128 |
DSE Searchのみ |
16または32 |
DSE Graph |
128 |
DSE Searchとともに使用する場合のDSE Graph |
16または32 |
# Cassandra Node IP=Datacenter:Rack
110.82.155.0=DC_Cassandra:RAC1
110.82.155.1=DC_Cassandra:RAC1
110.82.155.2=DC_Cassandra:RAC1
110.82.155.3=DC_Analytics:RAC1
110.82.155.4=DC_Analytics:RAC1
110.82.155.5=DC_Analytics:RAC1
110.82.155.6=DC_Solr:RAC1
110.82.155.7=DC_Solr:RAC1
# default for unknown nodes
default=DC1:RAC1
注: 構成ファイルを変更した後、ノードを再起動して変更を有効にする必要があります。
-
すべてのノードにDataStax Enterpriseをインストールして構成したら、シード・ノードを1つずつ起動した後で、残りのノードを起動します。
-
自分のクラスターが起動して稼働していることを確認します。
- Installer-Servicesおよびパッケージのインストール:
$ nodetool status
- Installer-No Servicesおよびtarボールのインストール:
$ install_location/bin/nodetool
status
タスクの結果
Datacenter:Cassandra
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 110.82.155.0 21.33 KB 256 33.3% a9fa31c7-f3c0-...RAC1
UN 110.82.155.1 21.33 KB 256 33.3% f5bb416c-db51-...RAC1
UN 110.82.155.2 21.33 KB 256 16.7% b836748f-c94f-...RAC1
Datacenter:Analytics
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Owns Host ID Tokens Rack
UN 110.82.155.3 28.44 KB 13.0.% e2451cdf-f070- ...-922337.... RAC1
UN 110.82.155.4 44.47 KB 16.7% f9fa427c-a2c5- ...30745512... RAC1
UN 110.82.155.5 54.33 KB 23.6% b9fc31c7-3bc0- ..- 45674488...RAC1
Datacenter:Solr
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Owns Host ID Tokens Rack
UN 110.82.155.6 15.44 KB 50.2.% e2451cdf-f070- ...9243578.... RAC1
UN 110.82.155.7 18.78 KB 49.8.% e2451cdf-f070- ...10000 RAC1