添加一個配置設置覆蓋所有默認spark.executor。extraJavaOptions設置

學習如何解決在磚覆蓋配置設置。

寫的亞當Pavlacka

去年發表在:2022年12月8日

問題

當你添加一個配置設置通過輸入Apache火花配置文本區域,新設置替換現有的設置,而不是附加。

版本

下麵的磚5.1運行時。

導致

重啟當集群,集群從配置文件中讀取設置創建的集群UI,覆蓋默認設置。

例如,當你添加以下extraJavaOptions火花配置文本區域:

spark.executor.extraJavaOptions- javaagent:/opt/prometheus_jmx_exporter/jmx_prometheus_javaagent.jar=9404:/opt/prometheus _jmx_exporter/jmx_prometheus_javaagent.yml

然後,在火花UI>環境>火花屬性spark.executor.extraJavaOptions,隻有新添加的配置設置顯示:

- javaagent: / opt / prometheus_jmx_exporter / jmx_prometheus_javaagent。jar = 9404: / opt /普羅米修斯_jmx_exporter / jmx_prometheus_javaagent.yml

刪除任何現有的設置。

供參考,默認設置是:

-Djava.io。tmpdir = / local_disk0 / tmp - XX: ReservedCodeCacheSize = 256 - XX: + UseCodeCacheFlushing -Ddatabricks。名= spark-executor-1 - Djava.security.properties = /磚/ / dbconf / java /額外的火花。安全- XX: + PrintFlagsFinal - XX: + PrintGCDateStamps - verbose: gc - XX: + PrintGCDetails -Xss4m - Djavax.xml.datatype.DatatypeFactory = com.sun.org.apache.xerces.internal.jaxp.datatype.Dataty peFactoryImpl - Djavax.xml.parsers.DocumentBuilderFactory = com.sun.org.apache.xerces.internal.jaxp.Documen tBuilderFactoryImpl - Djavax.xml.parsers.SAXParserFactory = com.sun.org.apache.xerces.internal.jaxp.SAXParserFact oryImpl - Djavax.xml.validation.SchemaFactory =https://www.w3.org/2001/XMLSchema=com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory- Dorg.xml.sax.driver = com.sun.org.apache.xerces.internal.parsers.SAXParser Dorg.w3c.dom.DOMImplementationSourceList = com.sun.org.apache.xerces.internal.dom.DOMX SImplementationSourceImpl

解決方案

添加一個新的配置設置spark.executor.extraJavaOptions不失默認設置:

  1. 火花UI>環境>火花屬性,選擇並複製所有的默認屬性設置spark.executor.extraJavaOptions
  2. 點擊編輯
  3. 火花配置文本區域(集群>集群名稱>高級選項>火花),粘貼的默認設置。
  4. 添加新的配置設置下麵的默認設置。
  5. 單擊在文本區域,然後單擊確認
  6. 重新啟動集群。

例如,假設你粘貼到下麵的設置火花配置文本區域。新的配置設置添加到默認設置。

spark.executor.extraJavaOptions= -Djava.io.tmpdir=/local_disk0/tmp - XX:ReservedCodeCacheSize=256m -XX:+UseCodeCacheFlushing -Ddatabricks.serviceName=spark- executor-1 -Djava.security.properties=/databricks/spark/dbconf/java/extra.security - XX:+PrintFlagsFinal -XX:+PrintGCDateStamps -verbose:gc -XX:+PrintGCDetails -Xss4m - Djavax.xml.datatype.DatatypeFactory=com.sun.org.apache.xerces.internal.jaxp.datatype.Dataty peFactoryImpl - Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentB uilderFactoryImpl - Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactor yImpl - Djavax.xml.validation.SchemaFactory:https://www.w3.org/2001/XMLSchema=com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory - Dorg.xml.sax.driver = com.sun.org.apache.xerces.internal.parsers.SAXParser Dorg.w3c.dom.DOMImplementationSourceList = com.sun.org.apache.xerces.internal.dom.DOMXSImplem entationSourceImpl - javaagent: / opt / prometheus_jmx_exporter / jmx_prometheus_javaagent。jar = 9404: / opt / prometheus_jm x_exporter / jmx_prometheus_javaagent.yml

在您重新啟動集群之後,出現在默認設置和新添加的配置設置火花UI>環境>火花屬性

這篇文章有用嗎?