単一トークン・アーキテクチャー・データ・センターの初期化

仮想ノード(vnode)を使用していない場合にデプロイするための手順。

ほとんどの状況では、検索、分析、トランザクションなどの各ワークロードの種類は、別々の仮想データ・センター内に編成される必要があります。ワークロードの分離により、リソースの競合を回避できます。ただし、トランザクション(OLTP)ワークロードと分析(OLAP)ワークロードを組み合わせるとパフォーマンスが低下しますが、分析用の大きな需要がない場合は、ワークロードをSearchAnalyticsノードに組み合わせることができます。クエリー対象のノードだけでDSE Graphを有効にできます。

CQLを使用してキースペースを作成すると、1つのノードのクラスターであっても、Cassandraではクラスターの仮想データ・センターが自動的に作成されます。同じ種類のワークロードを実行するノードを同じデータ・センターに割り当てます。異なる種類のノードを対象とした別々の仮想データ・センターは、その他の種類のワークロードを実行するノードからDSE Searchを実行するワークロードを分離します。

仮想ノード(vnode)を使用していない場合にのみ、これらの手順に従ってください。

始める前に

手順

これらの手順では、1つまたは複数のデータ・センターの設定について説明します。

  1. これらのノードにDataStax Enterpriseをインストールするとします。
    • node0 10.168.66.41 (seed1)
    • node1 10.176.43.66
    • node2 10.168.247.41
    • node3 10.176.170.59 (seed2)
    • node4 10.169.61.170
    • node5 10.169.30.138
  2. 単一トークン・アーキテクチャー・ノード用のトークンの計算」の説明に従って、トークンの割り当てを計算します。

    1つのデータ・センターまたは2つのデータ・センターで構成される6ノード・クラスターのトークン。

    表 1. 1つのデータ・センター
    ノード Token
    node0 0
    node1 21267647932558653966460912964485513216
    node2 42535295865117307932921825928971026432
    node3 63802943797675961899382738893456539648
    node4 85070591730234615865843651857942052864
    node5 106338239662793269832304564822427566080
    表 2. 複数データ・センター
    ノード Token オフセット データ・センター
    node0 0 NA DC1
    node1 56713727820156410577229101238628035242 NA DC1
    node2 113427455640312821154458202477256070485 NA DC1
    node3 100 100 DC2
    node4 56713727820156410577229101238628035342 100 DC2
    node5 113427455640312821154458202477256070585 100 DC2
  3. ノードがファイアウォールの背後にある場合は、内外で通信するために、必要なポートを開きます
  4. 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 
  5. 各ノードについてcassandra.yamlファイル内のプロパティを設定します。

    ディスクのレイアウト、共有ライブラリなどに関してクラスター内の各ノードが同じ場合は、すべてのノードでcassandra.yamlファイルの同じコピーを使用できます。

    cassandra-topology.propertiesファイルのデフォルトの場所は、インストールのタイプによって異なります。
    Installer-Servicesおよびパッケージ・インストール /etc/dse/cassandra/cassandra-topology.properties
    Installer-No Servicesおよびtarボール・インストール install_location/resources/cassandra/conf/cassandra-topology.properties
    cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
    パッケージ・インストール /etc/dse/cassandra/cassandra.yaml
    tarボール・インストール install_location/resources/cassandra/conf/cassandra.yaml
    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

    設定するプロパティ:

    • initial_token:token_value_from_calculation
    • num_tokens: 1
    • -seeds:各シード・ノードのinternal_IP_address
    • listen_address:

      設定されていないと、Cassandraは、そのホスト名に関連付けられているローカル・アドレスをシステムに照会します。正しいアドレスが生成されていない場合は、list_addressを指定する必要があります。

    • endpoint_snitch: スニッチ

      endpoint_snitch」および「スニッチについて」を参照してください。スニッチを変更する場合は、「Switching snitches」を参照してください。

    • auto_bootstrapfalse

      データなしで新しいクラスターを初期化する場合にのみ、ブートストラップ設定を追加します。

    • 以前のバージョンのcassandra.yamlファイルまたはdse.yamlファイルを使用している場合は、『アップグレード・ガイド』で、削除された設定を必ず確認してください。

    各データ・センターから1つ以上のシード・ノードを含める必要があります。DataStaxは、データ・センターごとに複数のシード・ノードを持つことを推奨します。すべてのノードをシード・ノードにしないでください。

    cluster_name:'MyDemoCluster'
    initial_token: 21267647932558653966460912964485513216
    num_tokens: 1
    seed_provider:
    - class_name:org.apache.cassandra.locator.SimpleSeedProvider
    parameters:
    -seeds:"10.168.66.41,10.176.170.59"
    listen_address:
    endpoint_snitch:GossipingPropertyFileSnitch
  6. dse.yamlファイルのプロパティをユース・ケースに応じて設定します。
  7. cassandra-rackdc.properties (GossipingPropertyFileSnitch)またはcassandra-topology.properties(PropertyFileSnitch)ファイルで、命名規則を使用してデータ・センターとラックの名前を各ノードのIPアドレスに割り当て、不明なノードにはデフォルトのデータ・センター名とラック名を割り当てます。
    注: このファイルが存在する場合、GossipingPropertyFileSnitchは常にcassandra-topology.propertiesを読み込みます。新しいクラスター、またはPropertyFileSnitchから移行したクラスターの各ノードからファイルを削除します。

    例:

    # Cassandra Node IP=Datacenter:Rack
    10.168.66.41=DC1:RAC1
    10.176.43.66=DC2:RAC1
    10.168.247.41=DC1:RAC1
    10.176.170.59=DC2:RAC1
    10.169.61.170=DC1:RAC1
    10.169.30.138=DC2:RAC1
    
    # default for unknown nodes
    default=DC1:RAC1
  8. すべてのノードにDataStax Enterpriseをインストールして構成したら、シード・ノードを1つずつ起動した後で、残りのノードを起動します。
  9. 自分のクラスターが起動して稼働していることを確認します。
    • 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