Sparkノードの構成

Sparkノードのセキュリティ、パフォーマンス、およびロギングの設定を変更します。

cassandra-rackdc.properties

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

spark-env.sh

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

cassandra.yaml

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

hive-site.xml

Sparkを使用する場合のhive-site.xmlファイルのデフォルトの場所:
パッケージ・インストール /etc/dse/spark/hive-site.xml
tarボール・インストール installation_location/resources/spark/conf/hive-site.xml

spark-defaults.conf

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

dse.yaml

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

Sparkノードのセキュリティ、パフォーマンス、およびロギングの設定を変更します。

環境変数を設定する

DataStaxでは、OutOfMemoryError状態が発生しているか、ガーベージ・コレクションに時間がかかりすぎているためにメモリー設定を増やす必要がない限り、Spark環境変数のデフォルト値を使用することを推奨しています。dse.yaml および spark-env.shファイルのSparkメモリ構成オプションを使用します。

DSEを起動する前にお使いの環境でALLOW_SPARK_HOME=trueも設定すると、ユーザー固有のSPARK_HOMEディレクトリーを設定できます。

たとえば、DebianまたはUbuntuでパッケージ・インストールを使用する場合は、以下のようになります。

export SPARK_HOME=$HOME/spark && 
export ALLOW_SPARK_HOME=true && 
sudo service dse start

シャッフル・データ、RDD、およびその他の一時的なSparkデータの一時ディレクトリーは、ローカルに実行されているドライバーと、DSEによって管理されるSparkサーバー・プロセス(Sparkマスター、ワーカー、シャッフル・サービス、エグゼキューター、およびクラスター・モードで実行されているドライバー)の両方に対して構成できます。

ローカルで実行されているSparkドライバーの場合、SPARK_LOCAL_DIRS環境変数は、ユーザー環境またはspark-env.shでカスタマイズできます。デフォルトでは、システムの一時ディレクトリーに設定されます。たとえば、Ubuntuでは/tmp/です。システム一時ディレクトリーがない場合、SPARK_LOCAL_DIRSはユーザーのホーム・ディレクトリーの.sparkディレクトリーに設定されます。

その他のSparkサーバー・プロセスの場合、SPARK_EXECUTOR_DIRS環境変数は、ユーザー環境またはspark-env.shでカスタマイズできます。デフォルトでは、/var/lib/spark/rddに設定されています。

注: デフォルトのSPARK_LOCAL_DIRSおよびSPARK_EXECUTOR_DIRS環境変数値は、非DSE Sparkとは異なります。

ワーカーのクリーンアップを構成するには、SPARK_WORKER_OPTS環境変数を変更し、クリーンアップ・プロパティを追加します。SPARK_WORKER_OPTS環境変数は、ユーザー環境または spark-env.shで設定できます。たとえば、次の構成ではワーカー・クリーンアップを有効にし、クリーンアップ間隔を30分(1800秒)に設定し、アプリケーション・ワーカー・ディレクトリーが保持される時間の長さを7日(604800秒)に設定します。

export SPARK_WORKER_OPTS="$SPARK_WORKER_OPTS \ 
  -Dspark.worker.cleanup.enabled=true \ 
  -Dspark.worker.cleanup.interval=1800 \ 
  -Dspark.worker.cleanup.appDataTtl=604800"

Sparkディレクトリーを保護する

Sparkクラスターを起動すると、DataStax EnterpriseによってSparkワーカーごとにSpark作業ディレクトリーがワーカー・ノード上に作成されます。ワーカー・ノードには、spark-env.shSPARK_WORKER_INSTANCESオプションで構成される、複数のワーカーを含めることができます。SPARK_WORKER_INSTANCESが定義されていない場合は、単一のワーカーを起動します。作業ディレクトリーには、エグゼキューターの標準出力と標準エラーをはじめ、Sparkワーカーとエグゼキューターによって格納されているアプリケーション固有のデータが含まれており、DSEユーザーしか書き込めないようになっています。

デフォルトでは、Sparkの親作業ディレクトリーは/var/lib/spark/workにあります。各ワーカーはworker-numberという名前のサブディレクトリー内にあり、その番号は0から開始します。親ワーカー・ディレクトリーを変更するには、spark-env.shファイルのSPARK_WORKER_DIRを構成します。

Spark RDDディレクトリーは、エグゼキューターがディスクに書き出すことを決めたRDDが配置されるディレクトリーです。このディレクトリーには、データベースからのデータやSparkアプリケーションの実行結果などが格納されます。ディレクトリー内のデータの機密性が高い場合は、無許可ユーザーによるアクセスを防ぐ必要があります。RDDディレクトリーには大量のデータが置かれる可能性があるため、RDDディレクトリーは高速ディスク上に配置します。このディレクトリーに書き込むことができるのはcassandraユーザーだけです。Spark RDDディレクトリーのデフォルトの場所は/var/lib/spark/rddです。このディレクトリーは高速ディスク上に配置する必要があります。RDDディレクトリーを変更するには、spark-env.shファイルのSPARK_EXECUTOR_DIRSを構成します。

デフォルトのSparkディレクトリーへのアクセス権を付与する

tarボールでインストールした後でノードを起動する前に、デフォルトのSparkディレクトリーの場所である/var/lib/spark/var/log/sparkにアクセスするためのパーミッションを取得しておく必要があります。これらのディレクトリーの所有権を以下のように変更します。
sudo mkdir -p /var/lib/spark/rdd; sudo chmod a+w /var/lib/spark/rdd; sudo chown -R  $USER:$GROUP /var/lib/spark/rdd && 
sudo mkdir -p /var/log/spark; sudo chown -R  $USER:$GROUP /var/log/spark

複数データ・センター・クラスターでは、仮想データ・センターを使用してSparkジョブを分離します。実行中のSparkジョブは、リソースを消費し、レイテンシーとスループットに影響する可能性があります。

DataStax Enterpriseでは、仮想ノード(vnode)とSparkの併用がサポートされます。

Sparkノードのセキュリティを確保する

クライアントとノード間のSSL
クライアント認証が有効になっていない場合でも、「クライアントとノード間の暗号化」で説明されているように、cassandra.yaml にトラストストア・エントリーが存在することを確認します。
セキュリティおよび認証の有効化
セキュリティは、dse.yamlspark_security_enabledオプションを使用して有効にします。この設定をenabledにすると、Sparkマスター・ノードとWorkerノード間の認証がオンになり、暗号化を有効にすることができます。Web UI以外のすべてのコンポーネントのSpark接続を暗号化するには、spark_security_encryption_enabledを有効にします。Sparkコンポーネントのセキュリティ確保に使用される共有シークレットの長さは、spark_shared_secret_bit_lengthオプションを使用して設定され、デフォルト値は256ビットです。これらのオプションについては、「DSE分析オプション」で説明しています。プロダクション環境クラスターの場合は、これらの認証と暗号化を有効にします。有効にしても、パフォーマンスには大きな影響を与えません。
認証とSparkアプリケーション
認証を有効にすると、ユーザーは、アプリケーションを送信するために認証される必要があります。
権限管理とSparkアプリケーション
DSEの権限管理を有効にすると、ユーザーにはアプリケーションを送信するためのパーミッションが必要になります。また、アプリケーションを送信するユーザーはアプリケーションを管理するためのパーミッションを自動的に受け取り、このパーミッションを任意で他のユーザーに拡張できます。
Spark SQL Thriftサーバーのデータベース認証情報
hive-site.xml ファイルでSpark SQL Thriftサーバーの認証資格情報を構成します。以下のように、Sparkディレクトリーでhive-site.xmlファイルを使用します。
  • パッケージ・インストール:/etc/dse/spark/hive-site.xml
  • tarボール・インストール:installation_location/resources/spark/conf/hive-site.xml
SparkでKerberosを使用する方法
Sparkランチャーは、Kerberos認証を使用して、Kerberos認証情報でDSEに接続し、デリゲーション・トークンを生成するようにDSEに要求します。Sparkドライバーとエグゼキューターは、デリゲーション・トークンを使用してクラスターに接続します。有効な認証を行うために、デリゲーション・トークンを定期的に更新する必要があります。セキュリティ上の理由から、このトークンを使用して認証されるユーザーは、このトークンを更新することはできません。したがって、デリゲーション・トークンには、トークンの所有者とトークンの更新者の2名の関連ユーザーが存在することになります。

トークンの更新者がいない場合、トークンを更新できるのはDSE内部プロセスを通じた場合のみとなります。アプリケーションが送信されると、DSEは、Sparkアプリケーションに関連付けられているデリゲーション・トークンを自動的に更新します。アプリケーションが登録されていない(終了した)場合、デリゲーション・トークンの更新が停止し、トークンがキャンセルされます。

Kerberosオプションの設定については、「Kerberosスキームの定義」を参照してください。

Sparkメモリーおよびコアを構成する

Sparkメモリー・オプションは、Sparkエコシステムのさまざまなコンポーネントに影響します。

Spark HistoryサーバーとSpark Thriftサーバーのメモリー
SPARK_DAEMON_MEMORYオプションは、Spark SQL Thriftサーバーと履歴サーバーによって使用されるメモリーを構成します。この設定は、これらのサーバー・アプリケーションで実行される、ノード上の spark-env.sh ファイルで追加または変更します。
Sparkワーカーのメモリー
dse.yamlresource_manager_options.worker_optionsセクションのmemory_total オプションは、特定のノード上のワーク・プールによって実行されるすべてのエグゼキューターに割り当てることができるシステム・メモリーの合計を構成します。他のワーク・プールが定義されていない場合、defaultに指定されたワーク・プールがこのメモリーのすべてを使用します。追加のワーク・プールを定義する場合は、ワーク・プール定義でmemoryオプションを設定して、メモリーの合計量を設定できます。
アプリケーション・エグゼキューターのメモリー
アプリケーション用に消費できるメモリー容量をエグゼキューターごとに構成できます。Sparkでは、デフォルト値の512MBが使用されます。spark.executor.memoryオプション(「Sparkの使用可能なプロパティ」を参照)または--executor-memory mem引数をdse sparkコマンドに対して使用します。

アプリケーション・メモリー

アプリケーションのエグゼキューターを生成するときにワーカーによって適用される追加のJavaオプションを構成できます。spark.executor.extraJavaOptionsプロパティ(「Spark 1.6.2の使用可能なプロパティ」を参照)を使用します。例を次に示します。spark.executor.extraJavaOptions -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"

コアの管理

コアの数を管理するには、以下のオプションを構成します。
  • Sparkワーカー・コア

    dse.yamlresource_manager_options.worker_optionsセクションのcores_total オプションは、エグゼキューターのSparkワーカーで使用可能なシステム・コアの合計数を構成します。dse.yamlresource_manager_options.workpools セクションでワーク・プールが定義されていない場合、defaultに指定されたワーク・プールが、cores_totalで定義されたすべてのコアを使用します。追加のワーク・プールが定義されている場合、defaultに指定されたワーク・プールは、ワーク・プールで定義されたコアを割り当てた後に使用可能なコアを使用します。

    単一のエグゼキューターがワーカーから複数のコアを借りることができます。エグゼキューターによって使用されるコアの数は、エグゼキューターによって実行される並列タスクの数と関連しています。クラスターによって提供されるコアの数は、クラスター内のすべてのワーカーによって提供されるコアの合計です。

  • アプリケーション・コア

    アプリケーションのSpark構成オブジェクトでは、spark.cores.max構成プロパティまたは--total-executor-cores コア引数をdse sparkコマンドに対して使用することによって、そのアプリケーションがクラスターから要求するアプリケーション・コアの数を構成します。

メモリーとコアの割り当ての詳細については、Sparkのドキュメントを参照してください。
DataStax Enterpriseは、特定のSparkワーカーによって提供されるメモリー容量とコア数を半自動的に制御できます。dse.yaml ファイルのresource_manager_options.worker_optionsセクションには、Sparkワーカーおよび定義済みのワーク・プール、または明示的なリソース設定で使用可能なシステム・リソースの比率を構成するためのオプションがあります。システム・リソースの小数点以下の値を指定する場合、使用可能なリソースは次の方法で計算されます。
  • Spark Worker memory = memory_total * (total system memory - memory assigned to DSE)
  • Spark Worker cores = cores_total * total system cores

この計算は、小数点以下の値に使用されます。設定が指定されていない場合は、デフォルト値の0.7が使用されます。値に小数点以下の桁数が含まれていない場合、設定は、DSEによってSpark用に予約されたコア数またはメモリー容量の明示的な数値になります。

注: Cores_totalまたはワークプールのcoresを1.0に設定すると、またはワークプールのcoresを1.0に設定すると10進値が生成され、これは使用可能なコアの100%が予約されることを意味します。cores_totalまたはcoresを1(小数点なし)に設定すると明示的な値が生成され、1つのコアが予約されます。

名前が付いたワーク・プールのメモリー容量とコア数に割り当てることができる最小値は、それぞれ64 MBと1コアです。計算結果がこれよりも低い場合、例外はスローされず、自動的に値が制限されます。

次の例は、1つのコアと512MBのRAMが割り当てられているworkpool1という名前のワーク・プールを示しています。worker_optionsの値から計算された残りのリソースは、defaultのワーク・プールに割り当てられます。

resource_manager_options:
    worker_options:
        cores_total: 0.7
        memory_total: 0.7

        workpools:
              - name: workpool1
              cores: 1
              memory: 512M

クラウド環境でのSparkクラスターの実行

Amazon EC2のようなクラウド・インフラストラクチャー・プロバイダーを使用している場合は、お使いのクラスターで公的にルーティング可能なIPアドレスに対してポートを明示的に開く必要があります。ポートを開かないと、SparkワーカーはSparkマスターを見つけることができません。

回避策の1つは、cassandra-rackdc.properties スニッチ・セットアップ・ファイルのprefer_local設定をtrueに設定することです。

# Uncomment the following line to make this snitch prefer the internal ip when possible, as the Ec2MultiRegionSnitch does.
prefer_local=true

これにより、ルーティング可能なパブリックIPアドレスではなく、データ・センター内のプライベートIPアドレスでのみ通信するようにクラスターに通知されます。

Spark構成を取得するリトライ数の構成

SparkがDSEから構成設定をフェッチすると、構成データを取得できない場合はすぐに失敗しますが、デフォルトでは5回リトライが行われるため、リトライ間の遅延が大きくなります。リトライ数をSpark構成で設定するには、dse sparkコマンドを呼び出す際またはspark-defaults.confspark.dse.configuration.fetch.retries構成プロパティを変更します。

連続ページングの無効化

連続ページングでは、DSEからDSE Sparkによって使用されるDataStax Java Driverへとレコードを一括でストリーミングします。デフォルトでは、クエリー内での連続ページングが有効になっています。これを無効にするには、Spark SQLシェルを起動する際または spark-defaults.confspark.dse.continuous_paging_enabled設定をfalseに設定します。例を次に示します。

dse spark-sql --conf spark.dse.continuous_paging_enabled=false
注: 連続ページングを使用すると、データとクエリーに応じて程度は異なりますが、パフォーマンスが3倍にまで向上する可能性があります。パフォーマンスの向上に影響を与える要素としては、ノードごとのエグゼキューターJVMの数とクエリーに含まれるカラムの数が挙げられます。ノードごとのエグゼキューターJVMの数を少なくして、選択されたカラムの数を多くすると、より大きなパフォーマンスの向上が見られました。

Spark Webインターフェイス・ポートの構成

デフォルトでは、Spark Web UIはポート7080で実行されます。ポート番号を変更するには、次の操作を行います。

  1. テキスト・エディターで spark-env.sh ファイルを開きます。
  2. SPARK_MASTER_WEBUI_PORT変数を新しいポート番号に設定します。たとえば、ポート7082に設定するには、次のようにします。
    export SPARK_MASTER_WEBUI_PORT=7082
  3. クラスター内のAnalyticsノードごとに以上の手順を繰り返します。
  4. クラスター内のノードを再起動します。

DSE SparkでのGraphiteメトリクスの有効化

サードパーティJARは、各ノードのSpark libディレクトリーに追加して、クラスターを再起動することで、Sparkノードに追加できます。このディレクトリーにGraphiteメトリクスJARを追加して、DSE Sparkでメトリクスを有効にします。

Spark libディレクトリーのデフォルトの場所は、インストールのタイプによって異なります。
  • パッケージ・インストール:/usr/share/dse/spark/lib
  • tarボール・インストール:/var/lib/spark
パッケージ・インストールでGraphite JARをSparkに追加するには、これらをSpark libディレクトリーにコピーします。
cp metrics-graphite-3.1.2.jar /usr/share/dse/spark/lib/ && 
cp metrics-json-3.1.2.jar /usr/share/dse/spark/lib/

ドライバーとエグゼキューターのSparkプロパティの設定

Sparkドライバーとエグゼキューターの追加のSparkプロパティは、 spark-defaults.confで設定します。たとえば、Sparkのcommons-crypto暗号化ライブラリを有効にするには、次のようにします。

spark.network.crypto.enabled true

Sparkでの権限管理の使用

Sparkアプリケーションの起動、停止、管理、および表示を許可するロールのパーミッションを設定します。

Sparkアプリケーションの起動、停止、管理、および表示を許可するロールのパーミッションを設定します。特定のロールのパーミッションを構成するには、CQLコマンドを発行して、WORKPOOLおよびSUBMISSIONデータベース・オブジェクトを変更します。

Sparkに適用される権限管理パーミッションは2種類あります。ワーク・プール・パーミッションは、DSEへのSparkアプリケーションの送信機能や表示機能を制御します。サブミット・パーミッションは、特定のアプリケーションの表示機能や管理機能を制御します。Spark Web UIに対して認証と承認が有効になっている場合、これらのパーミッションは、認証されたユーザーに許可される表示機能や変更機能を制御します。

以下の手順はすべて、データベース・スーパーユーザーとしてCQLコマンドを発行することを想定しています。正規データベース・ユーザーとして次のCQLコマンドを発行するには、対象のユーザーにDSE Resource Manager(DSEリソース・マネージャー)RPCを使用するパーミッションを付与する必要があります。

GRANT ALL ON REMOTE OBJECT DseResourceManager TO role;

各DSE Analyticsユーザーには、クライアント・ツールRPCを使用するパーミッションを付与する必要があります。

GRANT ALL ON REMOTE OBJECT DseClientTool TO role;

ロールがSparkアプリケーションを起動するのを承認する

CREATEパーミッションを使用して、ロールがワーク・プールでSparkアプリケーションを起動できるようにします。

次のCQLコマンドは、Sparkアプリケーションを任意のAnalyticsデータ・センターに送信するパーミッションを付与します。

GRANT CREATE ON ANY WORKPOOL 
TO role;

次のCQLコマンドは、SparkアプリケーションをAnalyticsデータ・センターの特定のワーク・プールに送信するパーミッションを付与します。

GRANT CREATE ON WORKPOOL datacenter_name.workpool_name 
TO role;

データ・センター内のすべてのワーク・プールに適用されるように、workpool_nameにワイルドカードを使用できます。

GRANT CREATE ON WORKPOOL datacenter_name.* 
TO role;
注: データ・センターを指定する場合は、ワーク・プール名またはワイルドカードを指定する必要があります。6.0より前のDSEバージョンでは、データ・センター名のみを指定できますが、ワーク・プール名またはワイルドカードを省略すると、構文エラーが発生します。

以下の類似する取り消しコマンドを使用できます。

REVOKE CREATE ON ANY WORKPOOL FROM role
REVOKE CREATE ON WORKPOOL datacenter_name.workpool_name FROM role

アプリケーションが送信されると、そのアプリケーションを送信したユーザーにはアプリケーションを管理および取り消すパーミッションが自動的に付与されます。また、そのアプリケーションを管理する機能を別のユーザーまたはロールに付与することもできます。

パーミッションを削除するには、REVOKEコマンドを使用します。

REVOKE CREATE ON ANY WORKPOOL FROM role;

ロールがSparkアプリケーションを停止または管理するのを承認する

SUBMISSIONオブジェクトにMODIFYパーミッションを設定することで、Sparkアプリケーションを変更または停止する機能を制御します。

次のCQLコマンドを使用して、任意のワーク・プール内のサブミットを管理するパーミッションを、指定されたロールに付与します。

GRANT MODIFY ON ANY SUBMISSION TO role;

次のCQLコマンドを使用して、指定されたデータ・センター内のサブミットを管理するパーミッションを付与します。

GRANT MODIFY ON ANY SUBMISSION 
IN WORKPOOL datacenter_name 
TO role;

次のCQLコマンドを使用して、特定のデータ・センターのワーク・プール内の指定されたIDで識別されたサブミットを管理するパーミッションを付与します。

GRANT MODIFY ON SUBMISSION id 
IN WORKPOOL datacenter_name.workpool_name 
TO role;

IDは、SparkアプリケーションIDまたはクラスター・モードで実行されているSparkドライバーのIDのいずれかの文字列です。

パーミッションを削除するには、REVOKEコマンドを使用します。

REVOKE MODIFY ON SUBMISSION id 
IN WORKPOOL datacenter_name.workpool_name 
FROM role;

ロールがSpark Web UIでSparkアプリケーション情報を参照するのを承認する

DESCRIBEパーミッションを使用して、ロールがSpark Web UIでアプリケーションを参照できるようにします。パーミッションは、ワーク・プールまたはアプリケーション・レベルで設定できます。

次のCQLコマンドを使用して、ロールがAnalyticsデータ・センター内のすべてのアプリケーションを表示できるようにします。

GRANT DESCRIBE ON ANY WORKPOOL TO role;

次のCQLコマンドを使用して、アプリケーションを表示するロールの機能を、Analyticsデータ・センター内の特定のワーク・プールに制限します。

GRANT DESCRIBE ON WORKPOOL datacenter_name.workpool_name 
TO role;

次のCQLコマンドを使用して、ロールが指定されたロールに対する任意のワーク・プール内のすべてのサブミット(エグゼキューターを含む)を表示できるようにします。

GRANT DESCRIBE ON ANY SUBMISSION TO role;

表示を次の特定のデータ・センターに制限できます

GRANT DESCRIBE ON ANY SUBMISSION 
IN WORKPOOL datacenter_name.workpool_name 
TO role;

さらに、ロールをデータ・センター内の1つのアプリケーションのエグゼキューターの表示のみに制限できます。

GRANT DESCRIBE ON SUBMISSION id 
IN WORKPOOL datacenter_name.datacenter_name 
TO role;

パーミッションを削除するには、REVOKEコマンドを使用します。

REVOKE DESCRIBE ON ANY SUBMISSION 
IN WORKPOOL datacenter_name.workpool_name 
FROM role

Sparkサーバー構成

spark-daemon-defaults.confファイルは、DSE Sparkマスターとワーカーを構成します。

cassandra.yaml

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

spark-daemon-defaults.conf

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

この spark-daemon-defaults.conf ファイルでは、DSE Sparkマスターとワーカーを構成します。

1. Sparkサーバー構成のプロパティ
オプション デフォルト値 説明
dse.spark.application.timeout 30 ハートビートを受信していない場合は、アプリケーションが停止状態と見なされるまでの時間(秒)。
spark.dseShuffle.sasl.port 7447 SASLのセキュリティで保護されたアプリケーションのシャッフル・サービスを開始するポート番号。cassandra.yaml内のlisten_addressにバインドされています。
spark.dseShuffle.noSasl.port 7437 セキュリティで保護されていないアプリケーションのシャッフル・サービスを開始するポート番号。cassandra.yaml内のlisten_addressにバインドされています。

デフォルトでは、Sparkアプリケーション出力の大部分をログに記録するSparkエグゼキューター・ログは、標準出力にリダイレクトされます。出力はSparkワーカーによって管理されます。ログを構成するには、spark-designmon-defaults.confファイルにspark.executor.logs.rolling.*プロパティを追加します。

spark.executor.logs.rolling.maxRetainedFiles 3
spark.executor.logs.rolling.strategy size
spark.executor.logs.rolling.maxSize 50000

マスターとドライバーに影響を与える追加のSparkプロパティは、spark-daemon-default.confに追加できます。 たとえば、Sparkのcommons-crypto暗号化ライブラリを有効にするには、次のようにします。

spark.network.crypto.enabled true