2017-03-23 6 views
0

Azureにcloudbreakを使用してHDP 2.5 Hadoop/Sparkクラスタをインストールしました。spbヒストリサーバがwasbブロブストレージを使用して起動しない

すべてがスパーク履歴サーバー以外は機能します。ログには、イベントログhdfs:///spark-historyのデフォルトのURIが偽であると表示され、ホスト名がありません。 それで、紺碧のブロブストレージ上の実際の場所への直接参照に置き換えました:wasb://<host>:<port>/spark-history。このURIはhdsf dfs -lsと一緒に使用すると機能しますが、それでもスパーク履歴サーバーは起動しません。今度は見つからないクラスについて文句を言う:Caused by: java.lang.NoClassDefFoundError: com/microsoft/azure/storage/blob/BlobListingDetails

開始時にドライバが読み込まれないようです。私は/usr/hdp/current/hadoop-client/lib/azure-storage-2.2.0.jarを見つけました。そうかもしれません。しかし、アンバリ設定エディタを使用してスタートアップ時にヒストリサーバーにjarをロードする方法や、これが元の問題の正しい解決策であるかどうかはわかりません。 Azure HDInsightはブロブストレージを使用しています。そのため、スパークヒストリサーバーはデフォルトの設定を使用して実行されます。

azure-storageドライバの読み込み方法やこの問題に対するその他の方法についてのご意見はありますか?

ありがとう

+0

解答として解答を投稿できますか?ありがとう。 –

+0

解決策を回答に移動しました... – oneman

答えて

0

私は自分の質問にお答えします。 hortonworksコミュニティフォーラムの誰かが答えました:スパークアセンブリジャーに無効なストレージジャーが入っています。アセンブリのjarファイルを更新すると、問題が解決します。

mkdir -p /tmp/jarupdate && cd /tmp/jarupdate 
find /usr/hdp/ -name "azure-storage*.jar" 
cp /usr/hdp/2.5.0.1-210/hadoop/lib/azure-storage-2.2.0.jar . 
cp /usr/hdp/current/spark-historyserver/lib/spark-assembly-1.6.3.2.5.0.1-210-hadoop2.7.3.2.5.0.1-210.jar . 
unzip azure-storage-2.2.0.jar 
jar uf spark-assembly-1.6.3.2.5.0.1-210-hadoop2.7.3.2.5.0.1-210.jar com/ 
mv -f spark-assembly-1.6.3.2.5.0.1-210-hadoop2.7.3.2.5.0.1-210.jar /usr/hdp/current/spark-historyserver/lib/spark-assembly-1.6.3.2.5.0.1-210-hadoop2.7.3.2.5.0.1-210.jar 
cd .. && rm -rf /tmp/jarupdate 
関連する問題