Spark Historyサーバーの構成

イベントのロギングを有効にして実行されたSparkジョブからイベント・ログを読み込みます。

Spark Historyサーバーは、イベントのロギングを有効にして実行されたSparkジョブからイベント・ログを読み込む手段を提供します。Spark Historyサーバーは、Sparkマスターが履歴ユーザー・インターフェイスを構築しようとする前にファイルがフラッシュされなかった場合にのみ機能します。

手順

Spark Historyサーバーを有効にするには:

  1. Cassandraファイル・システム(CFS)でイベント・ログのディレクトリーを作成します。
    dse hadoop fs -mkdir /spark/events 
  2. クラスター内の各ノードでspark-defaults.confファイルを編集してイベントのロギングを有効にし、イベント・ログのディレクトリーを指定します。
    #Turns on logging for applications submitted from this machine 
    spark.eventLog.dir cfs:/spark/events 
    spark.eventLog.enabled true 
    #Sets the logging directory for the history server 
    spark.history.fs.logDirectory cfs:/spark/events 
  3. クラスター内のノードのいずれかでSpark Historyサーバーを起動します。

    Spark Historyサーバーは、Sparkクラスター内のすべてのノードからのロギング・データを表示するフロントエンド・アプリケーションです。これはクラスター内のどのノードからも起動できます。

    dse spark-history-server start 
    注: SparkマスターのWebUIには履歴ログは表示されません。この既知の問題を回避するには、ポート18080から履歴にアクセスします。
  4. イベントのロギングが有効になっている場合は、デフォルトによりすべてのログが保存されます。それによって時間の経過とともにストレージが拡大します。自動クリーンアップを有効にするには、spark-defaults.confおよび次のオプションを編集します。
    spark.history.fs.cleaner.enabled true 
    spark.history.fs.cleaner.interval 1d
    spark.history.fs.cleaner.maxAge 7d

    これらの設定によって自動クリーンアップが有効になり、クリーンアップが日次で実行されて、7日より古くなったログが削除されます。