Apache Hadoop YARN、HDFS、Spark 和相關屬性
安裝在 Dataproc 叢集上的開放原始碼元件包含許多設定檔。例如,Apache Spark 和 Apache Hadoop 就有幾個 XML 和純文字設定檔。在建立叢集時,可於 gcloud dataproc clusters create 指令中使用 ‑‑properties 旗標,修改多項常用的設定檔。
格式設定
gcloud dataproc clusters create --properties 旗標接受下列字串格式:
file_prefix1:property1=value1,file_prefix2:property2=value2,...
file_prefix 會對應至預先定義的設定檔 (如下表所示),而 property 則對應至檔案中的屬性。
預設用於分隔多個叢集屬性的分隔符號是半形逗號 (,)。但若屬性值包含半形逗號,則必須在屬性清單開頭指定「^delimiter^」來變更分隔符號 (詳情請參閱「gcloud 主題逸出」)。
- 使用「#」分隔符號的範例:
--properties ^#^file_prefix1:property1=part1,part2#file_prefix2:property2=value2
- 使用「#」分隔符號的範例:
範例
gcloud 指令
如要變更 spark-defaults.conf 檔案中的 spark.master 設定,請新增下列 gcloud dataproc clusters create --properties 旗標:
--properties 'spark:spark.master=spark://example.com'
您可以透過使用逗號分隔的方式,一次變更一或多個設定檔中的數個屬性。每個屬性都必須以完整的 file_prefix:property=value 格式指定。例如,若要變更 spark-defaults.conf 檔案中的 spark.master 設定以及 hdfs-site.xml 檔案中的 dfs.hosts 設定,請在建立叢集時使用下列 --properties 旗標:
--properties 'spark:spark.master=spark://example.com,hdfs:dfs.hosts=/foo/bar/baz'
REST API
如要將 spark.executor.memory 設為 10g,請在 clusters.create 要求的 SoftwareConfig 區段中插入下列 properties 設定:
"properties": {
"spark:spark.executor.memory": "10g"
}
要查看如何建構 Dataproc API 叢集 REST 要求的 JSON 主體,一個簡單方法是使用 --log-http 旗標啟動對等 gcloud 指令。以下 gcloud dataproc clusters create 指令示範使用 --properties spark:spark.executor.memory=10g 旗標設定來叢集指令。stdout 記錄檔顯示該指令所產生的 REST 要求主體 (properties 片段顯示如下):
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties=spark:spark.executor.memory=10g \ --log-http \ other args ...
輸出內容:
...
== body start ==
{"clusterName": "my-cluster", "config": {"gceClusterConfig": ...
"masterConfig": {... "softwareConfig": {"properties": {"spark:spark.executor.memory": "10g"}},
...
== body end ==
...
附註:如果不希望指令生效,則務必在輸出內容出現 JSON 主體後取消指令。
控制台
如要變更 spark-defaults.conf 檔案中的 spark.master 設定,請執行下列步驟:
- 在 Google Cloud 控制台中,開啟 Dataproc 的「Create a cluster」(建立叢集) 頁面。按一下「Customize cluster」(自訂叢集) 面板,然後捲動至「Cluster properties」(叢集屬性) 區段。
- 按一下「+ ADD PROPERTIES」(新增資源)。在「Prefix」(前置字元) 清單中選取「spark」,然後在「Key」(索引鍵) 欄位新增「spark.master」,並在「Value」(值) 欄位輸入設定值。
叢集 vs. 工作屬性
建立叢集時,Apache Hadoop YARN、HDFS、Spark 和其他帶有檔案前置字元的屬性會套用到整個叢集。叢集建立完成後,就無法再套用這些屬性。然而,其中許多屬性也可以套用於特定工作。將屬性套用至工作時,不應使用檔案前置字元。
下列範例會將 Spark 執行器記憶體設為 4G,用於 Spark 工作 (省略 spark: 前置字元)。
gcloud dataproc jobs submit spark \ --region=REGION \ --properties=spark.executor.memory=4g \ other args ...
您可以使用 gcloud dataproc jobs submit job-type --properties-file 旗標,在檔案中提交工作屬性 (範例可參閱在 Hadoop 工作提交程序中使用 --properties-file 的相關說明)。
gcloud dataproc jobs submit JOB_TYPE \ --region=REGION \ --properties-file=PROPERTIES_FILE \ other args ...
PROPERTIES_FILE 是由換行符號分隔的 key=value 組合。所要設定的屬性是 key,而要為屬性設的值即是 value。有關屬性檔案格式的詳細資訊,請參閱 java.util.Properties 類別。
以下範例中的屬性檔案,可在提交 Dataproc 工作時一併傳遞至 --properties-file 旗標。
dataproc:conda.env.config.uri=gs://some-bucket/environment.yaml spark:spark.history.fs.logDirectory=gs://some-bucket spark:spark.eventLog.dir=gs://some-bucket capacity-scheduler:yarn.scheduler.capacity.root.adhoc.capacity=5
帶檔案前置字元的屬性表
| 檔案前置字元 | 檔案 | 檔案用途 |
|---|---|---|
| capacity-scheduler | capacity-scheduler.xml | Hadoop YARN Capacity Scheduler 設定 |
| core | core-site.xml | Hadoop 一般設定 |
| distcp | distcp-default.xml | Hadoop Distributed Copy 設定 |
| Flink | flink-conf.yaml | Flink 設定 |
| flink-log4j | log4j.properties | Log4j 設定檔 |
| hadoop-env | hadoop-env.sh | Hadoop 特定環境變數 |
| hadoop-log4j | log4j.properties | Log4j 設定檔 |
| hbase | hbase-site.xml | HBase 設定 |
| hbase-log4j | log4j.properties | Log4j 設定檔 |
| hdfs | hdfs-site.xml | Hadoop HDFS 設定 |
| hive | hive-site.xml | Hive 設定 |
| hive-log4j2 | hive-log4j2.properties | Log4j 設定檔 |
| hudi | hudi-default.conf | Hudi 設定 |
| mapred | mapred-site.xml | Hadoop MapReduce 設定 |
| mapred-env | mapred-env.sh | Hadoop MapReduce 特定環境變數 |
| pig | pig.properties | Pig 設定 |
| pig-log4j | log4j.properties | Log4j 設定檔 |
| presto | config.properties | Presto 設定 |
| presto-jvm | jvm.config | Presto 特定 JVM 設定 |
| spark | spark-defaults.conf | Spark 設定 |
| spark-env | spark-env.sh | Spark 特定環境變數 |
| spark-log4j | log4j.properties | Log4j 設定檔 |
| tez | tez-site.xml | Tez 設定 |
| webcat-log4j | webhcat-log4j2.properties | Log4j 設定檔 |
| yarn | yarn-site.xml | Hadoop YARN 設定 |
| yarn-env | yarn-env.sh | Hadoop YARN 特定環境變數 |
| zeppelin | zeppelin-site.xml | Zeppelin 設定 |
| zeppelin-env | zeppelin-env.sh | Zeppelin 特定環境變數 (僅限選用元件) |
| zeppelin-log4j | log4j.properties | Log4j 設定檔 |
| zookeeper | zoo.cfg | Zookeeper 設定 |
| zookeeper-log4j | log4j.properties | Log4j 設定檔 |
附註
- 有些屬性是預留項目且無法覆寫,因為它們攸關 Dataproc 叢集功能的正常運作。如果嘗試變更預留屬性,會在建立叢集時收到錯誤訊息。
- 如要指定多個變更,可以用逗號來分隔。
--properties旗標無法修改上表未列出的設定檔。- 系統會先套用屬性的變更,然後才啟動叢集上的 Daemon。
- 如果指定的屬性存在,系統會更新該屬性。如果指定的屬性不存在,系統會將它新增至設定檔。
Dataproc 服務屬性
本節列出的屬性是 Dataproc 的專屬項目,可用於進一步設定 Dataproc 叢集的功能。
格式設定
gcloud dataproc clusters create --properties 旗標接受下列字串格式:
property_prefix1:property1=value1,property_prefix2:property2=value2,...
預設用於分隔多個叢集屬性的分隔符號是半形逗號 (,)。但若屬性值包含半形逗號,則必須在屬性清單開頭指定「^delimiter^」來變更分隔符號 (詳情請參閱「gcloud 主題逸出」)。
- 使用「#」分隔符號的範例:
--properties ^#^property_prefix1:property1=part1,part2#property_prefix2:property2=value2
- 使用「#」分隔符號的範例:
範例:
建立叢集,並將「強化版彈性模式」設為 Spark 主要 worker 重組。
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties=dataproc:efm.spark.shuffle=primary-worker \ other args ...
Dataproc 服務屬性表
| 屬性前置字元 | 屬性 | 值 | 說明 |
|---|---|---|---|
| dataproc | agent.process.threads.job.min | number |
Dataproc 會在執行緒集區並行執行使用者工作驅動程式。即使系統未執行任何工作,這項屬性也會控制執行緒集區的最低執行緒數量,以確保能快速啟動 (預設值:10 個)。 |
| dataproc | agent.process.threads.job.max | number |
Dataproc 會在執行緒集區並行執行使用者工作驅動程式。這項屬性控制執行緒集區的最高執行緒數量,因此會限制使用者工作的並行上限。增加此值可提高並行上限 (預設值:100 個)。 |
| dataproc | am.primary_only | true 或 false |
將此屬性設為 true,防止應用程式主要執行個體在 Dataproc 叢集先占 worker 上執行。注意:此功能僅適用於 Cloud Dataproc 1.2 以上版本。預設值為 false。 |
| dataproc | conda.env.config.uri | gs://<path> |
Conda 環境設定檔在 Cloud Storage 中的位置。系統會根據此檔案建立並啟用新的 Conda 環境。詳情請參閱「使用 Conda 相關叢集屬性」。(預設值:empty)。 |
| dataproc | conda.packages | Conda 套件 | 這項屬性接受以半形逗號分隔的 Conda 套件清單,且該清單須指明要在 base Conda 環境中安裝的特定版本。詳情請參閱「使用 Conda 相關叢集屬性」。(預設值:empty)。 |
| dataproc | dataproc.allow.zero.workers | true 或 false |
在 Dataproc clusters.create API 要求中,將此 SoftwareConfig 屬性設為 true,即可建立單節點叢集,將預設的worker數量從 2 變更為 0,並將 worker 元件放置於主要執行個體主機。您也可以透過 Google Cloud 控制台或使用 Google Cloud CLI,將 worker 數量設為 0 來建立單節點叢集。 |
| dataproc | dataproc.alpha.master.nvdimm.size.gb | 1500-6500 | 設定此值後,系統會建立一個配備 Intel Optane DC 持續性記憶體的 Dataproc 主要執行個體。注意:Optane VM 只能在 us-central1-f 可用區建立,僅可使用 n1-highmem-96-aep 機型,並僅適用於已列入許可清單的專案。 |
| dataproc: | dataproc.alpha.worker.nvdimm.size.gb | 1500-6500 | 設定此值後,系統會建立一個配備 Intel Optane DC 持續性記憶體的 Dataproc worker。注意:Optane VM 只能在 us-central1-f 可用區建立,僅可使用 n1-highmem-96-aep 機型,並僅適用於已列入許可清單的專案。 |
| dataproc: | dataproc.await-new-workers-service-registration | true 或 false |
此屬性適用於 2.0.49 以上版本的映象檔。預設值為 false。將此屬性設為 true,可在叢集建立或叢集擴充期間,等待新增的主要 worker 節點向 HDFS NameNode 和 YARN ResourceManager 等服務領導節點註冊 (系統僅監控 HDFS 和 YARN 服務)。如果設為 true,新的 worker 若向服務註冊失敗,則系統會將 worker 標記為 FAILED 狀態。在叢集擴充期間,系統會移除失敗的 worker。在叢集建立期間,如果在 gcloud 指令或 API 叢集建立要求中指定了 gcloud dataproc clusters create --action-on-failed-primary-workers=DELETE 旗標或 API actionOnFailedPrimaryWorkers=DELETE 欄位,系統就會移除失敗的 worker。 |
| dataproc: | dataproc.beta.secure.multi-tenancy.user.mapping | user-to-service account mappings |
這項屬性接受使用者與服務帳戶的對應關係清單。經過對應的使用者能以隔離的使用者身分,向叢集提交互動式工作負載 (請參閱「基於 Dataproc 服務帳戶的多租戶安全架構」)。 |
| dataproc: | dataproc.cluster.caching.enabled | true 或 false |
啟用叢集快取功能後,叢集會快取 Spark 工作所存取的 Cloud Storage 資料,藉此提升工作效能,同時確保資料一致性。(預設值:false)。 |
| dataproc | dataproc.cluster-ttl.consider-yarn-activity | true 或 false |
設為 true 時,叢集排定刪除功能會同時考量 YARN 和 Dataproc Jobs API 活動,據以計算叢集閒置時間。如果設為 false,系統只會考量 Dataproc Jobs API 活動。(預設值:true)。詳情請參閱「叢集閒置時間計算」。 |
| dataproc | dataproc.conscrypt.provider.enable | true 或 false |
啟用 (true) 或停用 (false) Conscrypt,決定是否將其設為主要 Java 安全性供應來源。注意:Conscrypt 在 Dataproc 1.2 以上版本預設為啟用,但在 1.0/1.1 則預設為停用。 |
| dataproc | dataproc.cooperative.multi-tenancy.user.mapping | user-to-service account mappings |
這項屬性接受以半形逗號分隔的使用者與服務帳戶對應關係清單。若以此屬性集建立叢集,則使用者提交工作時,叢集會嘗試透過 Cloud Storage 連接器存取 Cloud Storage,並模擬對應的服務帳戶。此功能需搭配 Cloud Storage 連接器 2.1.4 以上版本。詳情請參閱「Dataproc 合作模式租戶架構」。(預設值:empty)。 |
| dataproc | dataproc.control.max.assigned.job.tasks | 100 |
這項屬性限制叢集主要執行個體節點可並行的工作數量。如果執行中的工作數量超過任務限制,新工作會排入佇列,直到執行中的工作完成並釋出資源,才能分配新的工作。注意:不建議將預設工作限制設為超過 100 (預設值),因為這可能會導致主節點發生記憶體不足的情況。 |
| dataproc | dataproc:hudi.version | Hudi 版本 | 設定要與選用 Dataproc Hudi 元件搭配的 Hudi 版本。注意:此版本是由 Dataproc 設定,確保與叢集映像檔版本相容。如果使用者設定了與叢集映像檔不相容的版本,叢集建立作業可能會失敗。 |
| dataproc | dataproc.lineage.enabled | true |
在 Dataproc 叢集中為 Spark 工作啟用資料歷程。 |
| dataproc | dataproc.localssd.mount.enable | true 或 false |
決定是否將本機 SSD 掛接為 Hadoop/Spark 臨時目錄和 HDFS 資料目錄 (預設值:true)。 |
| dataproc | dataproc.logging.extended.enabled | true 或 false |
啟用 (true) 或停用 (false) Cloud Logging 中的下列記錄:knox、zeppelin、ranger-usersync、jupyter_notebook、jupyter_kernel_gateway 和 spark-history-server (預設值:true)。詳情請參閱「在 Logging 中查看 Dataproc 叢集記錄」。 |
| dataproc | dataproc.logging.stackdriver.enable | true 或 false |
啟用 (true) 或停用 (false) Cloud Logging (預設為 true)。相關費用請參閱 Cloud Logging 定價。 |
| dataproc | dataproc.logging.stackdriver.job.driver.enable | true 或 false |
啟用 (true) 或停用 (false) Cloud Logging 中的 Dataproc 工作驅動程式記錄檔。請參閱「Dataproc 工作輸出內容和記錄檔」(預設值:false)。 |
| dataproc | dataproc.logging.stackdriver.job.yarn.container.enable | true 或 false |
啟用 (true) 或停用 (false) Cloud Logging 中的 YARN 容器記錄。請參閱「Spark 工作內容輸出選項」。(預設值:false)。 |
| dataproc | dataproc.logging.syslog.enabled | true 或 false |
啟用 (true) 或停用 (false) Cloud Logging 中的 VM syslog (預設值:true)。 |
| dataproc | dataproc.master.custom.init.actions.mode | RUN_BEFORE_SERVICES 或 RUN_AFTER_SERVICES |
如果是 2.0 以上的映像檔叢集,設為 RUN_AFTER_SERVICES 時,系統會在初始化 HDFS 和任何依附於 HDFS 的服務後,執行主要執行個體的初始化動作。依附 HDFS 的服務範例包括:HBase、Hive Server2、Ranger、Solr,以及 Spark 和 MapReduce 歷史記錄伺服器。(預設值:RUN_BEFORE_SERVICES)。 |
| dataproc | dataproc.monitoring.stackdriver.enable | true 或 false |
啟用 (true) 或停用 (false) Monitoring 代理程式 (預設值:false)。這項屬性已淘汰。如要啟用 Monitoring 中的 Dataproc OSS 指標收集功能,請參閱「啟用自訂指標收集功能」。 |
| dataproc | dataproc.scheduler.driver-size-mb | number |
驅動程式記憶體的平均用量,決定叢集可執行的並行工作數量上限。預設值為 1 GB。Spark 工作可能適合較小的值,例如 256。 |
| dataproc | dataproc.scheduler.job-submission-rate | number |
如果超過這個速率,系統就對工作進行節流。預設值為 1.0 QPS。 |
| dataproc | dataproc.scheduler.max-concurrent-jobs | number |
並行工作數量上限。如果在建立叢集時未設定此值,並行工作上限的計算方式為 max((masterMemoryMb - 3584) / masterMemoryMbPerJob, 5)。masterMemoryMb 取決於主要執行個體 VM 的機型。masterMemoryMbPerJob 預設為 1024,但可在建立叢集時使用 dataproc:dataproc.scheduler.driver-size-mb 叢集屬性調整設定。 |
| dataproc | dataproc.scheduler.max-memory-used | number |
可使用的 RAM 容量上限。如果目前用量超過此門檻,就無法分配新工作。預設值為 0.9 (90%)。若將此值設為 1.0,會停用基於主節點記憶體使用率的工作節流機制。 |
| dataproc | dataproc.scheduler.min-free-memory.mb | number |
Dataproc 工作驅動程式在叢集上調度其他工作時,所需的最低可用記憶體量 (以 MB 為單位)。預設值為 256 MB。 |
| dataproc | dataproc.snap.enabled | true 或 false |
啟用或停用 Ubuntu Snap Daemon。預設值為 true。如果設為 false,映像檔中預先安裝的 Snap 套件不會受到影響,但會停用自動重新整理功能。適用於 1.4.71、1.5.46、2.0.20 以上版本的 Ubuntu 映像檔。 |
| dataproc | dataproc.worker.custom.init.actions.mode | RUN_BEFORE_SERVICES |
對於 2.0 之前的映像檔叢集,系統不會設定 RUN_BEFORE_SERVICES,使用者可在建立叢集時加以設定。如果是 2.0 以上的映像檔叢集,系統會設定 RUN_BEFORE_SERVICES,且屬性無法傳遞至叢集 (使用者無法變更)。有關此設定的影響,請參閱「重要注意事項與準則 - 初始化處理程序」。 |
| dataproc | dataproc.yarn.orphaned-app-termination.enable | true 或 false |
預設值為 true。設為 false 可防止 Dataproc 終止「無主」的 YARN 應用程式。如果負責提交 YARN 應用程式的工作驅動程式結束運作,Dataproc 會將 YARN 應用程式視為無主應用程式。警告:如果使用 Spark 叢集模式 (spark.submit.deployMode=cluster) 並設定 spark.yarn.submit.waitAppCompletion=false,Spark 驅動程式會逕自結束運作,不會等待 YARN 應用程式完成作業;在此情況下請設定 dataproc:dataproc.yarn.orphaned-app-termination.enable=false。如需提交 Hive 工作,也請將此屬性設為 false。 |
| dataproc | diagnostic.capture.enabled | true 或 false |
啟用叢集查核點診斷資料收集功能。(預設值:true)。 |
| dataproc | diagnostic.capture.access | GOOGLE_DATAPROC_DIAGNOSE |
如果設為 GOOGLE_DATAPROC_DIAGNOSE,Cloud Storage 內儲存的叢集查核點診斷資料將會分享給 Dataproc 支援團隊共用。(預設值:未設定)。 |
| dataproc | efm.spark.shuffle | primary-worker |
如果設為 primary-worker,Spark Shuffle 資料會寫入主要 worker。詳情請參閱「Dataproc 強化版彈性模式」。 |
| dataproc | job.history.to-gcs.enabled | true 或 false |
允許將 MapReduce 和 Spark 歷史記錄檔持續儲存於 Dataproc 暫時 bucket (映像檔 1.5 以上版本預設為 true)。使用者可透過下列屬性覆寫工作歷史記錄檔的持續儲存位置:mapreduce.jobhistory.done-dir、mapreduce.jobhistory.intermediate-done-dir、spark.eventLog.dir 和 spark.history.fs.logDirectory。有關上述及其他與 Dataproc 工作歷史記錄和事件檔案相關的叢集屬性,請參閱「Dataproc 持續性記錄伺服器 」。 |
| dataproc | jobs.file-backed-output.enable | true 或 false |
設定 Dataproc 工作,將輸出內容導向到 /var/log/google-dataproc-job 目錄中的暫存檔案。必須設為 true,才能在 Cloud Logging 中啟用工作驅動程式記錄 (預設值:true)。 |
| dataproc | jupyter.listen.all.interfaces | true 或 false |
為避免未加密的筆記本伺服器 API 成為遠端執行程式碼的漏洞,1.3 版以上的映象檔的預設設定為 false,在啟用元件閘道時,會將連線限制於 localhost (127.0.0.1) (2.0 版以上映象檔不需啟用元件閘道)。如要允許所有連線,請將這項屬性設為 true,即可覆寫預設設定。 |
| dataproc | jupyter.notebook.gcs.dir | gs://<dir-path> |
Jupyter 筆記本在 Cloud Storage 中的儲存位置。 |
| dataproc | kerberos.beta.automatic-config.enable | true 或 false |
設為 true 時,使用者不需要以 --kerberos-root-principal-password 和 --kerberos-kms-key-uri 旗標指定 Kerberos 根主體密碼 (預設為 false)。詳情請參閱「透過 Kerberos 啟用 Hadoop 安全模式」。 |
| dataproc | kerberos.cross-realm-trust.admin-server | hostname/address |
遠端管理伺服器的主機名稱/位址 (通常與 KDC 伺服器相同)。 |
| dataproc | kerberos.cross-realm-trust.kdc | hostname/address |
遠端 KDC 的主機名稱/位址。 |
| dataproc | kerberos.cross-realm-trust.realm | realm name |
運作範圍名稱可包含任何大寫 ASCII 字串,且通常與您的 DNS 網域名稱相同 (但須為大寫)。例如,若機器名稱為「machine-id.example.west-coast.mycompany.com」,相關聯的運作範圍可能會指定為「EXAMPLE.WEST-COAST.MYCOMPANY.COM」。 |
| dataproc | kerberos.cross-realm-trust.shared-password.uri | gs://<dir-path> |
經 KMS 加密的共用密碼在 Cloud Storage 中的位置。 |
| dataproc | kerberos.kdc.db.key.uri | gs://<dir-path> |
含有 KDC 資料庫主金鑰的 KMS 加密檔案在 Cloud Storage 中的位置。 |
| dataproc | kerberos.key.password.uri | gs://<dir-path> |
含有 KeyStore 檔案中金鑰密碼的 KMS 加密檔案在 Cloud Storage 中的位置。 |
| dataproc | kerberos.keystore.password.uri | gs://<dir-path> |
含有 KeyStore 密碼的 KMS 加密檔案在 Cloud Storage 中的位置。 |
| dataproc | kerberos.keystore.uri1 | gs://<dir-path> |
含有叢集節點所使用萬用字元認證和私密金鑰的 KeyStore 檔案在 Cloud Storage 中的位置。 |
| dataproc | kerberos.kms.key.uri | KMS key URI |
用於解密根密碼的 KMS 金鑰 URI,例如 projects/project-id/locations/region/keyRings/key-ring/cryptoKeys/key (請參閱「金鑰資源 ID」)。 |
| dataproc | kerberos.root.principal.password.uri | gs://<dir-path> |
Kerberos 根主體的 KMS 加密密碼在 Cloud Storage 中的位置。 |
| dataproc | kerberos.tgt.lifetime.hours | hours |
票證授予票證的生命週期上限。 |
| dataproc | kerberos.truststore.password.uri | gs://<dir-path> |
含有信任儲存庫檔案密碼的 KMS 加密檔案在 Cloud Storage 中的位置。 |
| dataproc | kerberos.truststore.uri2 | gs://<dir-path> |
含有信任憑證的 KMS 加密信任儲存庫檔案在 Cloud Storage 中的位置。 |
| dataproc | pip.packages | Pip 套件 | 這項屬性接受以半形逗號分隔的 Pip 套件清單,且該清單須指明要在 base Conda 環境中安裝的特定版本。詳情請參閱「Pip 相關叢集屬性」。(預設值:empty)。 |
| dataproc | ranger.kms.key.uri | KMS key URI |
用於解密 Ranger 管理員使用者密碼的 KMS 金鑰 URI,例如 projects/project-id/locations/region/keyRings/key-ring/cryptoKeys/key (請參閱「金鑰資源 ID」)。 |
| dataproc | ranger.admin.password.uri | gs://<dir-path> |
Ranger 管理員使用者經 KMS 加密的密碼在 Cloud Storage 中的位置。 |
| dataproc | ranger.db.admin.password.uri | gs://<dir-path> |
Ranger 資料庫管理員使用者經 KMS 加密的密碼在 Cloud Storage 中的位置。 |
| dataproc | ranger.cloud-sql.instance.connection.name | cloud sql instance connection name |
Cloud SQL 執行個體的連線名稱,例如 project-id:region:name. |
| dataproc | ranger.cloud-sql.root.password.uri | gs://<dir-path> |
Cloud SQL 執行個體超級使用者經 KMS 加密的密碼在 Cloud Storage 中的位置。 |
| dataproc | ranger.cloud-sql.use-private-ip | true 或 false |
決定叢集執行個體與 Cloud SQL 執行個體之間的通訊是否應透過私人 IP 進行 (預設值為 false)。 |
| dataproc | solr.gcs.path | gs://<dir-path> |
用作 Solr 主目錄的 Cloud Storage 路徑。 |
| dataproc | startup.component.service-binding-timeout.hadoop-hdfs-namenode | seconds |
Dataproc 開機指令碼會等待 hadoop-hdfs-namenode 繫結至連接埠的時間長度,之後才會判定啟動成功。系統最多可辨識 1800 秒 (30 分鐘)。 |
| dataproc | startup.component.service-binding-timeout.hive-metastore | seconds |
Dataproc 開機指令碼會等待 Hive Metastore 服務繫結至連接埠的時間長度,之後才會判定啟動成功。系統最多可辨識 1800 秒 (30 分鐘)。 |
| dataproc | startup.component.service-binding-timeout.hive-server2 | seconds |
Dataproc 開機指令碼會等待 hive-server2 繫結至連接埠的時間長度,之後才會判定啟動成功。系統最多可辨識 1800 秒 (30 分鐘)。 |
| dataproc | user-attribution.enabled | true 或 false |
將此屬性設為 true,可將 Dataproc 工作的執行身分歸因於提交該工作的使用者 (預設值為 false)。 |
| dataproc | yarn.docker.enable | true 或 false |
設為 true 即可啟用 Dataproc Docker on YARN 功能 (預設值為 false)。 |
| dataproc | yarn.docker.image | docker image |
啟用 Dataproc Docker on YARN 功能 (dataproc:yarn.docker.enable=true) 時,可使用此選用屬性來指定 Docker 映像檔 (例如 dataproc:yarn.docker.image=gcr.io/project-id/image:1.0.1)。指定完成後,系統會在建立叢集期間下載映像檔,並快取至叢集的所有節點。 |
| dataproc | yarn.log-aggregation.enabled | true 或 false |
允許 (true) 啟用 YARN 記錄檔匯總功能,並將匯總後的記錄檔儲存至叢集的 temp bucket。Bucket 名稱的格式如下:dataproc-temp-<REGION>-<PROJECT_NUMBER>-<RANDOM_STRING>。(1.5 版以上映像檔預設為 true)。注意:刪除叢集時,系統不會刪除叢集的暫時 bucket。使用者也可以覆寫 yarn.nodemanager.remote-app-log-dir YARN 屬性,設定匯總 YARN 記錄的存放位置。 |
| Knox | gateway.host | ip address |
為避免未加密的筆記本伺服器 API 成為遠端執行程式碼的漏洞,1.3 版以上的映象檔的預設設定為 127.0.0.1,在啟用元件閘道時,系統會將連線限制於 localhost。如要允許所有連線,請將這項屬性設為 0.0.0.0,即可覆寫預設設定。 |
| zeppelin | zeppelin.notebook.gcs.dir | gs://<dir-path> |
Zeppelin 筆記本在 Cloud Storage 中的儲存位置。 |
| zeppelin | zeppelin.server.addr | ip address |
為避免未加密的筆記本伺服器 API 成為遠端執行程式碼的漏洞,1.3 版以上的映象檔的預設設定為 127.0.0.1,在啟用元件閘道時,系統會將連線限制於 localhost。如要允許所有連線,請將這項屬性設為 0.0.0.0,即可覆寫預設設定。 |
1KeyStore 檔案:KeyStore 檔案包含 SSL 憑證,且應採用 Java KeyStore (JKS) 格式。複製到 VM 後,此檔案會重新命名為 keystore.jks。SSL 憑證應為適用於叢集中各個節點的萬用字元憑證。
2信任儲存庫檔案:信任儲存庫檔案應採用 Java KeyStore (JKS) 格式。複製到 VM 後,此檔案會重新命名為 truststore.jks。