Sparkマスターの自動選出
Sparkマスター選出は自動で管理されます。
dse.yaml
dse.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/dse.yaml |
tarボール・インストール | installation_location/resources/dse/conf/dse.yaml |
logback.xml
logback.xmlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/logback.xml |
tarボール・インストール | installation_location/resources/cassandra/conf/logback.xml |
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
テーブルに記録されます。ほとんどの場合、ロギングを有効にする必要はありません。 - ロギングをオンにするには、lease_metrics_optionsがdse.yamlファイル内で有効になっていることを確認します。
lease_metrics_options: enabled:true ttl_seconds: 604800
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 |
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
- 関連する情報がログの警告とエラーに含まれていない場合は、logback.xml ファイルを編集して以下を追加します。
<logger name="com.datastax.bdp.leasemanager" level="DEBUG">
- デバッグ設定を有効にするには、ノードを再起動します。
トラブルシューティング
DataStaxサポートに問い合わせる前に、以下のさまざまなリース・ホルダーのトラブルシューティング・アクティビティーを実行してください。
- ワークロード・ステータスの確認
Dsetool
ringコマンドを実行します。dsetool ring
レプリケーション係数が不適切な場合、またはレプリカがダウンしている場合は、dsetool ring
コマンドの出力に警告が含まれます。
自動Job TrackerまたはSparkマスター選出に失敗した場合は、dse_leasesキースペースに適切なレプリケーション係数が設定されていることを確認します。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
- cqlshコマンドを使用して、Analyticsキースペースのレプリケーション係数を確認する
-
dse_leases
キースペースを記述します。DESCRIBE KEYSPACE dse_leases;
CREATE KEYSPACE dse_leases WITH replication = {'class': 'NetworkTopologyStrategy', 'Analytics1': '1'} AND durable_writes = true;
dse_leases
キースペースのレプリケーション係数を高くします。ALTER KEYSPACE dse_leases WITH replication = {'class': 'NetworkTopologyStrategy', 'Analytics1': '3', 'Analytics2':'3'} ;
- nodetool repairを実行します。