Apache Hadoop-tulajdonságok core-site.xml beállítása

Van egy forgatókönyve, amelyhez be kell állítani az Apache Hadoop-tulajdonságokat.

Ezt általában a fájlban kell core-site.xml megtennie.

Ebben a cikkben ismertetjük, hogyan állíthat be egy core-site.xml fürtöt.

A fájl core-site.xml létrehozása DBFS-ben

Létre kell hoznia egy core-site.xml fájlt, és mentenie kell a fürtÖN található DBFS-be.

Ezt a fájlt egyszerűen létrehozhatja egy jegyzetfüzetben található Bash-szkripttel.

Ez a példakód létrehoz egy mappát a fürtön, majd egyetlen tulajdonságfájlt ír hadoop-configscore-site.xml ebbe a mappába.

mkdir -p /dbfs/hadoop-configs/
cat << 'EOF' > /dbfs/hadoop-configs/core-site.xml
 <property>
    <name><property-name-here></name>
    <value><property-value-here></value>
 </property>
EOF

Több tulajdonságot is hozzáadhat a fájlhoz, ha további név/érték párokat ad hozzá a szkripthez.

Ezt a fájlt helyileg is létrehozhatja, majd feltöltheti a fürtre.

Betöltő init szkript létrehozása core-site.xml

Ez a példakód létrehoz egy nevű init set-core-site-configs.sh szkriptet, amely az újonnan core-site.xml létrehozott fájlt használja.

Ha manuálisan töltött fel és tárolt egy fájlt máshol, frissítse a core-site.xmlconfig_xml példakódban található értéket.

dbutils.fs.put("/databricks/scripts/set-core-site-configs.sh", """
#!/bin/bash

echo "Setting core-site.xml configs at `date`"

START_DRIVER_SCRIPT=/databricks/spark/scripts/start_driver.sh
START_WORKER_SCRIPT=/databricks/spark/scripts/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/core-site.xml"

cat >"$TMP_SCRIPT" <<EOL
#!/bin/bash
## Setting core-site.xml configs

sed -i '/<\/configuration>/{
    r $config_xml
    a \</configuration>
    d
}' /databricks/spark/dbconf/hadoop/core-site.xml

EOL
cat "$TMP_SCRIPT" > "$TMP_DRIVER_SCRIPT"
cat "$TMP_SCRIPT" > "$TMP_WORKER_SCRIPT"

cat "$START_DRIVER_SCRIPT" >> "$TMP_DRIVER_SCRIPT"
mv "$TMP_DRIVER_SCRIPT" "$START_DRIVER_SCRIPT"

cat "$START_WORKER_SCRIPT" >> "$TMP_WORKER_SCRIPT"
mv "$TMP_WORKER_SCRIPT" "$START_WORKER_SCRIPT"

echo "Completed core-site.xml config changes `date`"

""", True)

Az init szkript csatlakoztatása a fürthöz

Az újonnan létrehozott init szkriptet fürthatókörű init szkriptként kell konfigurálnia.

Ha a példakódot használta, a Cél a cél, az Init-szkript elérési útja pedig .

Ha testre szabta a példakódot, a fürthöz való csatoláskor győződjön meg arról, hogy a megfelelő elérési utat és nevet adja meg az init szkriptnek.