Sparkマスターの自動選出

Sparkマスター選出は自動で管理されます。

logback.xml

logback.xmlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/cassandra/logback.xml
tarボール・インストール installation_location/resources/cassandra/conf/logback.xml

dse.yaml

dse.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/dse.yaml
tarボール・インストール installation_location/resources/dse/conf/dse.yaml

Sparkマスター選出は自動で管理されるため、手動で構成する必要はありません。

DSE Analyticsデータ・センターは、互いに通信してノードの1つをSparkマスターとして、もう1つを予約マスターとして選出します。マスターは各Sparkワーカーとアプリケーションを追跡し、情報をシステム・テーブルに格納します。Sparkマスター・ノードに障害が発生すると、予約マスターが引き継ぎ、残りのAnalyticsノードから新しい予約マスターが選出されます。

各Analyticsデータ・センターは、独自のマスターを選出します。

dsetoolコマンドとオプションについては、「dsetool」を参照してください。

Sparkマスター・アドレスの決定

DSE AnalyticsでSparkを構成または使用する場合は、マスター・アドレスを指定する必要はありません。DSEがマスター・ノードに接続してアプリケーションを実行するには、有効なURLを使用してアプリケーションを構成すれば十分です。次のコマンドは、DSEのSpark構成に関する情報を提供します。
  • Sparkアプリケーションの構成に使用するURLを表示するには、次のようにします。
    dse client-tool spark master-address
    dse://10.200.181.62:9042?connection.local_dc=Analytics;connection.host=10.200.181.63;
  • このデータ・センターでのSparkマスターの現在のアドレスを表示するには、次のようにします。
    dse client-tool spark leader-address
    10.200.181.62
  • Sparkマスターのワークロードにはワークロードの欄に「Analytics(SM)」のフラグが付けられます。
    dsetool ring
    Address          DC                   Rack         Workload             Graph  Status  State    Load             Owns                 Token                                        Health [0,1]                                                                                                                 0
    10.200.181.62    Analytics            rack1        Analytics(SM)        no     Up      Normal   111.91 KiB       ?                    -9223372036854775808                         0.10
  • dse_leases.leasesテーブルにクエリーを実行し、Analyticsノードがある各データ・センターのすべてのマスターをリストします。
    select * from dse_leases.leases ;
    name        | dc                   | duration_ms | epoch   | holder
    -------------------+----------------------+-------------+---------+---------------
     Leader/master/6.0 | Analytics            |       30000 |  805254 | 10.200.176.42
     Leader/master/6.0 | SearchGraphAnalytics |       30000 | 1300800 | 10.200.176.45
     Leader/master/6.0 | SearchAnalytics      |       30000 |       7 | 10.200.176.44

dse_leasesキースペースに対してレプリケーション係数が適切に構成されていることを確認する

dse_leasesキースペースが適切にレプリケートされていないと、Sparkマスターが選出されない可能性があります。
重要: 新しいデータ・センターを追加するたびに、新しいDSE Analyticsデータ・センターに備えて、dse_leasesキースペースのレプリケーション係数を手動で大きくする必要があります。また、クラスターでDataStax EnterpriseまたはSparkのセキュリティ・オプションが有効になっている場合は、すべての論理データ・センターでdse_securityキースペースのレプリケーション係数を大きくする必要があります。
マルチ・データ・センターの最初のノードは、dse_leasesキースペースのレプリケーション係数が1です。新しいデータ・センターの場合、最初のノードは、そのデータ・センターについてのdse_leasesキースペースのレプリケーション係数が1に設定されて作成されます。ただし、追加するデータ・センターのレプリケーション係数は0で、DSE Analyticsノードを起動する前に構成する必要があります。複数の分析データ・センターについて、dse_leasesキースペースのレプリケーション係数を変更する必要があります。「分析キースペースのレプリケーション係数の設定」を参照してください。

リース・サブシステムの監視

リース・ホルダーの変更はすべてdse_leases.logsテーブルに記録されます。ほとんどの場合、ロギングを有効にする必要はありません。
  1. ロギングをオンにするには、lease_metrics_optionsdse.yamlファイル内で有効になっていることを確認します。
    lease_metrics_options:
        enabled:true
        ttl_seconds: 604800
  2. dse_leases.logsテーブルを確認します。
    select * from dse_leases.logs ;
     name              | dc  | monitor       | at                              | new_holder    | old_holder
    -------------------+-----+---------------+---------------------------------+---------------+------------
     Leader/master/6.0 | dc1 | 10.200.180.44 | 2018-05-17 00:45:02.971000+0000 | 10.200.180.44 |
     Leader/master/6.0 | dc1 | 10.200.180.49 | 2018-05-17 02:37:07.381000+0000 | 10.200.180.49 |
  3. lease_metrics_optionが有効になっている場合は、取得、更新、解決、無効化の操作を調べることができます。ほとんどの場合、これらの操作は100 ms以下で完了します。
    select * from dse_perf.leases ;
     name              | dc  | monitor       | acquire_average_latency_ms | acquire_latency99ms | acquire_max_latency_ms | acquire_rate15 | disable_average_latency_ms | disable_latency99ms | disable_max_latency_ms | disable_rate15 | renew_average_latency_ms | renew_latency99ms | renew_max_latency_ms | renew_rate15 | resolve_average_latency_ms | resolve_latency99ms | resolve_max_latency_ms | resolve_rate15 | up   | up_or_down_since
    -------------------+-----+---------------+----------------------------+---------------------+------------------------+----------------+----------------------------+---------------------+------------------------+----------------+--------------------------+-------------------+----------------------+--------------+----------------------------+---------------------+------------------------+----------------+------+---------------------------------
     Leader/master/6.0 | dc1 | 10.200.180.44 |                          0 |                   0 |                      0 |              0 |                          0 |                   0 |                      0 |              0 |                       24 |               100 |                  100 |            0 |                          8 |                  26 |                     26 |              0 | True | 2018-05-03 19:30:38.395000+0000
     Leader/master/6.0 | dc1 | 10.200.180.49 |                          0 |                   0 |                      0 |              0 |                          0 |                   0 |                      0 |              0 |                        0 |                 0 |                    0 |            0 |                         10 |                  32 |                     32 |              0 | True | 2018-05-03 19:30:55.656000+0000
  4. 関連する情報がログの警告とエラーに含まれていない場合は、logback.xml ファイルを編集して以下を追加します。
    <logger name="com.datastax.bdp.leasemanager" level="DEBUG"> 
  5. デバッグ設定を有効にするには、ノードを再起動します。

トラブルシューティング

DataStaxサポートに問い合わせる前に、以下のさまざまなリース・ホルダーのトラブルシューティング・アクティビティーを実行してください。
ワークロード・ステータスの確認
Dsetool ringコマンドを実行します。
dsetool ring
レプリケーション係数が不適切な場合、またはレプリカがダウンしている場合は、dsetool ringコマンドの出力に警告が含まれます。
Address          DC                   Rack         Workload             Graph  Status  State    Load             Owns                 Token                                        Health [0,1]
                                                                                                                                      0
10.200.178.232   SearchGraphAnalytics rack1        SearchAnalytics      yes    Up      Normal   153.04 KiB       ?                    -9223372036854775808                         0.00
10.200.178.230   SearchGraphAnalytics rack1        SearchAnalytics(SM)  yes    Up      Normal   92.98 KiB        ?                    0                                            0.000
自動Job TrackerまたはSparkマスター選出に失敗した場合は、dse_leasesキースペースに適切なレプリケーション係数が設定されていることを確認します。
cqlshコマンドを使用して、Analyticsキースペースのレプリケーション係数を確認する
  1. dse_leasesキースペースを記述します。
    DESCRIBE KEYSPACE dse_leases;
    CREATE KEYSPACE dse_leases WITH replication =
    {'class': 'NetworkTopologyStrategy', 'Analytics1': '1'}
    AND durable_writes = true;
  2. dse_leasesキースペースのレプリケーション係数を高くします。
    ALTER KEYSPACE dse_leases WITH replication =
    {'class': 'NetworkTopologyStrategy', 'Analytics1': '3', 'Analytics2':'3'}
    ;
  3. nodetool repairを実行します。