További tárfiókok hozzáadása a HDInsighthoz
Megtudhatja, hogyan adhat hozzá további Azure Storage-fiókokat a HDInsighthoz szkriptműveletekkel. A dokumentum lépései egy tárfiókot adnak hozzá egy meglévő HDInsight-fürthöz. Ez a cikk a tárfiókokra vonatkozik (nem az alapértelmezett fürttárfiókra), és nem a további tárfiókokra, például Azure Data Lake Storage Gen2
a .
Fontos
A dokumentumban szereplő információk arról szólnak, hogy a létrehozása után további tárfiókokat kell hozzáadni egy fürthöz. További információ a tárfiókok fürtlétrehozás során történő hozzáadásáról: Fürtök beállítása a HDInsightban az Apache Hadoop, az Apache Spark és az Apache Kafka használatával.
Előfeltételek
- Hadoop-fürt a HDInsighton. Tekintse meg a HDInsight linuxos használatának első lépéseit.
- Tárfiók neve és kulcsa. Lásd: Tárfiók hozzáférési kulcsok kezelése.
- Ha a PowerShellt használja, szüksége lesz az AZ modulra. Tekintse meg az Azure PowerShell áttekintését.
Hogyan működik?
A feldolgozás során a szkript a következő műveleteket hajtja végre:
Ha a tárfiók már létezik a fürt core-site.xml konfigurációjában, a szkript kilép, és nincs további művelet.
Ellenőrzi, hogy létezik-e a tárfiók, és elérhető-e a kulccsal.
Titkosítja a kulcsot a fürt hitelesítő adataival.
Hozzáadja a tárfiókot a core-site.xml fájlhoz.
Leállítja és újraindítja az Apache Oozie, az Apache Hadoop YARN, az Apache Hadoop MapReduce2 és az Apache Hadoop HDFS szolgáltatásokat. A szolgáltatások leállítása és elindítása lehetővé teszi számukra az új tárfiók használatát.
Figyelmeztetés
A HDInsight-fürtétől eltérő helyen lévő tárfiók használata nem támogatott.
Tárfiók hozzáadása
A szkriptművelettel alkalmazza a módosításokat a következő szempontok szerint:
Tulajdonság | Érték |
---|---|
Bash-szkript URI | https://hdiconfigactions.blob.core.windows.net/linuxaddstorageaccountv01/add-storage-account-v01.sh |
Csomóponttípus(ok) | Head |
Paraméterek | ACCOUNTNAME ACCOUNTKEY -p (nem kötelező) |
ACCOUNTNAME
a HDInsight-fürthöz hozzáadni kívánt tárfiók neve.ACCOUNTKEY
a hozzáférési kulcs a következőhözACCOUNTNAME
: .- A(z)
-p
nem kötelező. Ha meg van adva, a kulcs nincs titkosítva, és a core-site.xml fájlban egyszerű szövegként van tárolva.
Ellenőrzés
Amikor megtekinti a HDInsight-fürtöt az Azure Portalon, válassza a Tárfiókok bejegyzést a Tulajdonságok területen, és nem jeleníti meg a szkriptművelettel hozzáadott tárfiókokat. Az Azure PowerShell és az Azure CLI sem jeleníti meg a további tárfiókot. A tárolási információk nem jelennek meg, mert a szkript csak a core-site.xml
fürt konfigurációját módosítja. Ezek az információk nem használhatók a fürtinformációk Azure felügyeleti API-k használatával történő lekéréséhez.
A további tárterület ellenőrzéséhez használja az alábbi módszerek egyikét:
PowerShell
A szkript az adott fürthöz társított tárfiók nevét adja vissza. Cserélje le CLUSTERNAME
a tényleges fürtnévre, majd futtassa a szkriptet.
# Update values
$clusterName = "CLUSTERNAME"
$creds = Get-Credential -UserName "admin" -Message "Enter the cluster login credentials"
$clusterName = $clusterName.ToLower();
# getting service_config_version
$resp = Invoke-WebRequest -Uri "https://$clusterName.azurehdinsight.net/api/v1/clusters/$clusterName`?fields=Clusters/desired_service_config_versions/HDFS" `
-Credential $creds -UseBasicParsing
$respObj = ConvertFrom-Json $resp.Content
$configVersion=$respObj.Clusters.desired_service_config_versions.HDFS.service_config_version
$resp = Invoke-WebRequest -Uri "https://$clusterName.azurehdinsight.net/api/v1/clusters/$clusterName/configurations/service_config_versions?service_name=HDFS&service_config_version=$configVersion" `
-Credential $creds
$respObj = ConvertFrom-Json $resp.Content
# extract account names
$value = ($respObj.items.configurations | Where type -EQ "core-site").properties | Get-Member -membertype properties | Where Name -Like "fs.azure.account.key.*"
foreach ($name in $value ) { $name.Name.Split(".")[4]}
Apache Ambari
Egy webböngészőben keresse meg
https://CLUSTERNAME.azurehdinsight.net
CLUSTERNAME
a fürt nevét.Lépjen a HDFS>Speciális>>egyéni magwebhelyre.
Figyelje meg a kezdőbetűket
fs.azure.account.key
. A fiók neve a mintaképben látható kulcs része:
Tárfiók eltávolítása
Egy webböngészőben keresse meg
https://CLUSTERNAME.azurehdinsight.net
CLUSTERNAME
a fürt nevét.Lépjen a HDFS>Speciális>>egyéni magwebhelyre.
Távolítsa el a következő kulcsokat:
fs.azure.account.key.<STORAGE_ACCOUNT_NAME>.blob.core.windows.net
fs.azure.account.keyprovider.<STORAGE_ACCOUNT_NAME>.blob.core.windows.net
A kulcsok eltávolítása és a konfiguráció mentése után egyenként újra kell indítania az Oozie, a Yarn, a MapReduce2, a HDFS és a Hive alkalmazást.
Ismert problémák
Tárolási tűzfal
Ha úgy dönt, hogy biztonságossá teszi a tárfiókot a kiválasztott hálózatok tűzfalaival és virtuális hálózataival kapcsolatos korlátozásokkal, mindenképpen engedélyezze a kivételt A megbízható Microsoft-szolgáltatások engedélyezése, hogy a HDInsight hozzáférhessen a tárfiókhoz.
A kulcs módosítása után nem lehet hozzáférni a tárolóhoz
Ha módosítja egy tárfiók kulcsát, a HDInsight már nem fér hozzá a tárfiókhoz. A HDInsight a fürt core-site.xml gyorsítótárazott kulcspéldányát használja. Ezt a gyorsítótárazott példányt az új kulccsal megegyező módon kell frissíteni.
A szkriptművelet ismételt futtatása nem frissíti a kulcsot, mivel a szkript ellenőrzi, hogy létezik-e már bejegyzés a tárfiókhoz. Ha egy bejegyzés már létezik, az nem módosítja a bejegyzést.
Megkerülő megoldás a problémára:
Tekintse meg a tárfiók hozzáférési kulcsainak frissítését a hozzáférési kulcsok elforgatásáról.
A tárfiókot is eltávolíthatja, majd visszaadhatja a tárfiókot.
Következő lépések
Megtanulta, hogyan adhat hozzá további tárfiókokat egy meglévő HDInsight-fürthöz. A szkriptműveletekkel kapcsolatos további információkért lásd : Linux-alapú HDInsight-fürtök testreszabása szkriptműveletekkel