DSE Multi-Instanceの構成

DataStax Enterpriseノードをホスト・マシンに追加してDSE Multi-Instanceを構成する手順。

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

パッケージ・インストールとDataStaxインストーラーのインストールでは、dse add-nodeコマンドにより、ホスト・マシンでのノードの追加と構成が簡素化されます。

tarボール・インストールでは、1つのホスト・マシンへのノードの追加がサポートされていません。tarボール・インストールでDSE Multi-Instanceをインストールするには、1つのホスト・マシン上の複数の場所にtarボールをアンパックします。各tarボール・インストールがホスト・マシンのDataStax Enterpriseノードになります。

ホスト・マシンでの、DSE Multi-Instanceのルート・ディレクトリーは/etc/defaultsです。このデフォルトの場所は設定できません。ノード・タイプは/etc/defaults/dse-nodeIdファイルで定義されます。
注: DSE Multi-Instanceはパッケージ・インストールとDataStaxインストーラー・インストールのみでサポートされています。
追加される各ノードに対して、以下のアクションが行われます。
  • ノード構成はコマンド引数に従って変更されます。
  • ノードを開始または停止できるように、スクリプトが作成されます。
  • ホスト・マシンが起動または停止するときにノードが開始または停止するように、実行レベルがデフォルト値に更新されます。
  • /etc/default/dse-nodeIdファイルが作成され、デフォルトのノード・タイプがCassandra Transactionalノードとして設定されます。
  • DSE Multi-Instanceを使用する場合、dseコマンドをホスト・マシンのノード上で実行すると、ノード構成は以下から読み取られます。
    • パッケージ・インストールとDataStaxインストーラー・インストール: /etc/dse/serverconfig/dse-nodeId
    • tarボール・インストール:/etc/dseディレクトリーは、DataStax Enterpriseをインストールした各場所のデフォルトの構成場所です。
注: DSE Multi-Instanceを使用する場合は、複数のDataStax Enterpriseノードが1台のホストマシン上に置かれます。DataStax Enterpriseのノードごとに構成を分離するには、ノードごとのディレクトリー構造を使用して、構成ファイルと運用ファイルを保存します。たとえば、/etc/dse/dse.yamlに加えて、DSE Multi-Instanceのdse.yamlファイルが/etc/dse-nodeId/dse.yamlの場所に保存されます。
ディレクトリー 説明
/etc/dse /etc/dse/dse.yamlは、DataStax Enterpriseの主要な構成ファイルです。
/etc/dse-node1 /etc/dse-node1/dse.yamlは、dse-node1ディレクトリーにあるDataStax Enterpriseノードの構成ファイルです。
/etc/dse-node2 /etc/dse-node2/dse.yamlは、dse-node2ディレクトリーにあるDataStax Enterpriseノードの構成ファイルです。
DSE Multi-Instanceノードの場合、2つのファイルでノードの構成を制御します。たとえば、ノード名がdse-node1の場合は次のようになります。
  • /etc/dse/serverconfig/dse-node1で、構成ファイルに対するディレクトリーを指定します。
  • /etc/dsefault/dse-node1で、ノード・タイプを含むノードの動作を設定します。
パッケージ・インストールの場合、DSE Multi-Instanceクラスター内のファイル場所の総合リストについては、「DSE Multi-Instance用のディレクトリー」を参照してください。

手順

  1. 既存のDataStax Enterpriseインストールが、/etc/dseディレクトリーでデフォルトのノード構成になっていることを確認します。デフォルトのノードに対する構成ファイルには、/etc/dse/dse.yaml/etc/dse/cassandra/cassandra.yamlが含まれます。
  2. デフォルトのクラスターにわかりやすい名前を付けます。たとえば、デフォルトのクラスター名dseをpayrollに変更します。
  3. ノードが作業用のIPアドレスにバインドしていることを確認します。
  4. DataStax EnterpriseノードをDSE Multi-Instanceクラスターに追加します。
    • Installer-Servicesおよびパッケージ・インストールの場合、dse add-nodeコマンドを使用できます。たとえば、起動時にクラスターpayrollに結合するCassandraノードを追加するには、次のようにします。
      sudo dse add-node --node-id nodeId --cluster payroll --listen-address unused_ip_of_server 
      --rpc-address unused_ip_of_server --seeds ip_of_default_node
  5. 新しいノードを開始する前に、/etc/default/dse-nodeIdファイルでノード・タイプを設定します。
    • DSE Search:
      SOLR_ENABLED=1
    • DSE Analytics:
      SPARK_ENABLED=1
  6. 必要に応じてノードの構成を続行します。
    1. デフォルトのDataStax Enterprise構成値を変更するには、/etc/nodeIdの構成ファイルを編集します。
      JMXポートが各ノードで構成されていることを確認します。
    2. デフォルトのCassandra構成値を変更するには、/etc/dse-nodeId/cassandra/cassandra.yamlファイルを編集します。
    DSE Multi-Instanceのファイルの場所」を参照してください。
  7. 構成の変更を行った後、ノードを開始します
  8. ノードが実行中で、クラスターの一部であることを確認します。
    たとえば、DSE Multi-Instanceクラスターのdse-node1というローカル・ノードからクラスターの状態を確認するには、次のようにします。
    sudo dse dse-node1 dsetool ring
    DSE Multi-Instanceを使用する場合、出力にサーバーIDが含まれます:
    Server ID          Address      DC          Rack   Workload    Graph  Status  State    Load       Owns     VNodes                                       Health [0,1)
    42-01-0A-F0-00-02  10.240.0.2   Cassandra   rack1  Cassandra   no     Up      Normal   92.13 KB   46.86%   -9223372036854775808                         0.17        
    42-01-0A-F0-00-02  127.0.0.1    Cassandra   rack1  Cassandra   no     Up      Normal   150.6 KB   53.14%   579561378715200106 
    標準のdsetool ringコマンドを使用すると、デフォルトのノードdseの状態が示されます。
    sudo dsetool ring
    クラスター内にDSE Multi-Instanceサーバーが存在すると、DSE Multi-Instanceホスト・マシンであるサーバー上でコマンドを実行する場合でも、出力には常にサーバーIDカラムが含まれます。
    
    Server ID          Address      DC          Rack   Workload    Graph  Status  State    Load       Owns     VNodes                                       Health [0,1)
    42-01-0A-F0-00-02  10.240.0.2   Cassandra   rack1  Cassandra   no     Up      Normal   92.13 KB   46.86%   -9223372036854775808                         0.17        
    42-01-0A-F0-00-02  127.0.0.1    Cassandra   rack1  Cassandra   no     Up      Normal   150.6 KB   53.14%   579561378715200106 
  9. DSE Multi-Instanceホスト・マシンのノードに対して標準的なDataStax Enterpriseコマンドを実行するには、この構文を使用してノード名を指定します。
    sudo dse dse-node-id tool [command-arguments]

    add-nodeコマンドで指定されたノードIDの前に、自動的にdse-が付けられます。add-nodeを除くすべてのインスタンスで、コマンド構文にdse-のプレフィックスが必要です。

    たとえば、DSE Multi-Instanceを使用して、dse-spark-nodeというノード上でSparkシェルを開始するコマンドは次のとおりです。
    sudo dse dse-spark-node spark
    一方、DSE Multi-Instanceを使用しないでSparkシェルを開始するコマンドは次のとおりです。
    dse spark