你有一個場景需要Apache Hadoop設置屬性。
你通常會做什麼core-site.xml文件。
在本文中,我們解釋了如何設置core-site.xml在一個集群中。
創建core-site.xml文件DBFS
您需要創建一個core-site.xml文件並將其保存到DBFS集群。
一個簡單的方法來創建這個文件是通過一個bash腳本在一個筆記本上。
這個示例代碼創建了一個hadoop-configs文件夾在您的集群,然後寫一個屬性core-site.xml文件的文件夾。
% sh mkdir - p / dbfs hadoop-configs /貓< < EOF的> / dbfs / hadoop-configs /核心位點。xml <屬性> <名稱> < property-name-here > < /名稱> <價值> < property-value-here > < /值> < /屬性> EOF
您可以添加多個屬性文件通過添加附加腳本名稱/值對。
您還可以創建這個文件在本地,然後上傳到您的集群。
創建一個init腳本加載core-site.xml
這個示例代碼創建一個名為init腳本set-core-site-configs.sh使用core-site.xml您剛才創建的文件。
如果你手動上傳core-site.xml文件和存儲在其他地方,你應該更新config_xml示例代碼的價值。
% python dbutils.fs.put(" /磚/腳本/ set-core-site-configs。sh”、“”“# !/bin/bash回聲”設置核心位點。xml配置日期”START_DRIVER_SCRIPT = /磚/ /腳本/ start_driver火花。sh START_WORKER_SCRIPT = /磚/ /腳本/ start_spark_slave火花。sh TMP_DRIVER_SCRIPT = / tmp / start_driver_temp。sh TMP_WORKER_SCRIPT = / tmp / start_spark_slave_temp。sh TMP_SCRIPT = / tmp / set_core-site_configs。sh config_xml = " / dbfs hadoop-configs /核心位點。xml TMP_SCRIPT美元“貓> < < EOL # !/bin/bash # #設置核心位點。xml配置sed - i ' / > < \ /配置/ {r $ config_xml \ < /配置> d}”/磚/火花/ dbconf / hadoop /核心位點。xml EOL貓" $ TMP_SCRIPT " > " $ TMP_DRIVER_SCRIPT "貓" TMP_SCRIPT美元" > " $ TMP_WORKER_SCRIPT "貓" START_DRIVER_SCRIPT美元" > > " $ TMP_DRIVER_SCRIPT”mv“TMP_DRIVER_SCRIPT美元”“$ START_DRIVER_SCRIPT "貓" START_WORKER_SCRIPT美元" > > " $ TMP_WORKER_SCRIPT“mv”TMP_WORKER_SCRIPT美元“回聲“START_WORKER_SCRIPT美元完成核心位點。xml配置變化‘日期’”“”“,真的)
init腳本附加到您的集群
您需要配置作為一個新創建的init腳本集群級init腳本。
如果你使用示例代碼,你的目的地是DBFS和Init腳本路徑是dbfs: / / set-core-site-configs.sh磚/腳本。
如果你定製的示例代碼,確保您輸入正確的init腳本的路徑和名稱,當你將它附加到集群。