2015-11-09 50 views
4

我嘗試使用Azure HDInsight的Hadoop。我登錄到集羣通過ssh和運行以下AzureException:無法使用匿名憑據訪問容器,並且在配置中找不到憑據

hadoop jar jar_name class_name wasb://[email protected]/inputdir wasb://[email protected]/outputdir 

,但我得到以下異常:線程「main」 org.apache.hadoop.fs.azure.AzureException

例外: org.apache.hadoop.fs.azure.AzureException:無法使用匿名憑據訪問帳戶yyy.core.windows.net中的容器 xxx,並且 在配置中找不到憑證。

我正在使用azure cli,並在運行上述hadoop作業之前運行「天藍色登錄」。

請讓我知道如何解決這個錯誤。

Ubuntu 12.04在這些機器上運行。 PS:在Azure論壇上發佈了這個帖子,但是在這裏重新發布以獲得更廣泛的受衆羣體。

回答

3

編輯: 您的存儲位置應wasb://[email protected]/inputdir

這聽起來像你的羣集未連接到存儲賬戶。重新創建羣集並確保包含該jar的帳戶已連接到羣集。否則,將您的jar移動到已連接的存儲帳戶!

+0

我使用的是相同的存儲空間,但與集羣創建時指定的存儲空間不同。我還在同一個存儲中創建了一個公共容器。我無法使用諸如hdfs dfs -ls wasb://[email protected]之類的命令訪問此容器,其中data2是公共容器。 – Raghava

+0

嘗試hdfs dfs -ls wasb://[email protected] –

+0

我收到「No such file or directory」錯誤消息。 – Raghava

0

這個問題已經解決了,我在這裏提供了答案,以防有人面臨同樣的問題。

我犯了幾個愚蠢的錯誤。

1)它應該是wasb://@.blob.core.windows.net。我之前錯過了「blob」。 2)應該有一個尾隨的'/'。所以它應該是hdfs dfs -ls wasb://[email protected]/