[解決済み] Sparkクラスタがハートビートのタイムアウトでいっぱいになり、エグゼキュータが勝手に終了してしまう。
2022-02-24 11:28:11
質問
私のApache Sparkクラスタは、多くのエグゼキュータタイムアウトを与えるアプリケーションを実行しています。
10:23:30,761 ERROR ~ Lost executor 5 on slave2.cluster: Executor heartbeat timed out after 177005 ms
10:23:30,806 ERROR ~ Lost executor 1 on slave4.cluster: Executor heartbeat timed out after 176991 ms
10:23:30,812 ERROR ~ Lost executor 4 on slave6.cluster: Executor heartbeat timed out after 176981 ms
10:23:30,816 ERROR ~ Lost executor 6 on slave3.cluster: Executor heartbeat timed out after 176984 ms
10:23:30,820 ERROR ~ Lost executor 0 on slave5.cluster: Executor heartbeat timed out after 177004 ms
10:23:30,835 ERROR ~ Lost executor 3 on slave7.cluster: Executor heartbeat timed out after 176982 ms
しかし、私の設定では、実行者のハートビート間隔を増やすことに成功したことが確認できます。
とマークされたエグゼキュータのログを閲覧したところ
EXITED
(つまり、ドライバがハートビートを取得できなかったときにそれらを削除した) エグゼキュータは、ドライバからタスクを受け取らなかったので自殺したように見えます。
16/05/16 10:11:26 ERROR TransportChannelHandler: Connection to /10.0.0.4:35328 has been quiet for 120000 ms while there are outstanding requests. Assuming connection is dead; please adjust spark.network.timeout if this is wrong.
16/05/16 10:11:26 ERROR CoarseGrainedExecutorBackend: Cannot register with driver: spark://[email protected]:35328
ハートビートをオフにしたり、エグゼキュータがタイムアウトしないようにするにはどうしたらいいですか?
解決方法は?
答えはいたってシンプルだった。私の
spark-defaults.conf
を設定しました。
spark.network.timeout
を高い値に設定しました。ハートビート間隔は問題とはやや無関係でした(チューニングは便利ですが)。
を使用する場合
spark-submit
また、以下のようにタイムアウトを設定することができました。
$SPARK_HOME/bin/spark-submit --conf spark.network.timeout 10000000 --class myclass.neuralnet.TrainNetSpark --master spark://master.cluster:7077 --driver-memory 30G --executor-memory 14G --num-executors 7 --executor-cores 8 --conf spark.driver.maxResultSize=4g --conf spark.executor.heartbeatInterval=10000000 path/to/my.jar
関連
-
[解決済み] spark.sql.autoBroadcastJoinThresholdは、Datasetの結合演算子を使用して結合するために動作しますか?
-
[解決済み] PySparkのデータフレームで、各キーのパーセンタイルはどのように計算されますか?
-
[解決済み] Spark コンテキスト 'sc' が定義されていない
-
[解決済み] ShuffledRDD、MapPartitionsRDD、ParallelCollectionRDDの違いは何ですか?
-
[解決済み] Sparkのバージョンを確認する方法【終了しました
-
[解決済み] スパークジョブとは?
-
[解決済み] プロパティspark.yarn.jars - どのようにそれに対処するのですか?
-
[解決済み] Spark - repartition() vs coalesce()
-
[解決済み】Spark StandaloneクラスタのWorker、Executor、Coreとは何ですか?
-
[解決済み] 複数のテキストファイルを1つのRDDに読み込むには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】spark.driver.maxResultSizeとは何ですか?
-
[解決済み] スパーク "プランの文字列表現が大きすぎたため、切り捨てました。" 手動で作成した集計式を使用した場合の警告
-
[解決済み] PySparkのデータフレームで、各キーのパーセンタイルはどのように計算されますか?
-
[解決済み] Spark コンテキスト 'sc' が定義されていない
-
[解決済み] Spark が "java.net.URISyntaxException" を報告するのはなぜですか?DataFrameを使用する際に「java.net.URIStyntaxException: Relative path in absolute URI」と表示されるのはなぜですか?
-
[解決済み] Apache SparkとAkkaの比較【終了しました
-
[解決済み] pyspark : NameError: name 'spark' is not defined.
-
[解決済み] Sparkのバージョンを確認する方法【終了しました
-
[解決済み】Spark Dataframeで列の内容をすべて表示するにはどうすればよいですか?
-
[解決済み】SparkコンソールにINFOメッセージを表示させないようにするには?