我正在下载您在我键入时指向的脚本的 tar 球。但我猜想你的 zeppelin 安装和 spark 安装不完整,无法与 wasb 一起使用。为了让 spark 与 wasb 一起工作,您需要在 Class 路径中添加一些 jar。为此,您需要在 spark-defaults.conf 中添加类似的内容(HDInsights 中的路径可能不同,这是来自 IaaS 上的 HDP)
spark.driver.extraClassPath /usr/hdp/2.3.0.0-2557/hadoop/lib/azure-storage-2.2.0.jar:/usr/hdp/2.3.0.0-2557/hadoop/lib/microsoft-windowsazure-storage-sdk-0.6.0.jar:/usr/hdp/2.3.0.0-2557/hadoop/hadoop-azure-2.7.1.2.3.0.0-2557.jar
spark.executor.extraClassPath /usr/hdp/2.3.0.0-2557/hadoop/lib/azure-storage-2.2.0.jar:/usr/hdp/2.3.0.0-2557/hadoop/lib/microsoft-windowsazure-storage-sdk-0.6.0.jar:/usr/hdp/2.3.0.0-2557/hadoop/hadoop-azure-2.7.1.2.3.0.0-2557.jar
一旦你有了使用 wasb 的 spark,或者下一步是在 zeppelin 类路径中制作这些相同的 jar。测试您的设置的一个好方法是制作一个打印您的环境变量和类路径的笔记本。
sys.env.foreach(println(_))
val cl = ClassLoader.getSystemClassLoader
cl.asInstanceOf[java.net.URLClassLoader].getURLs.foreach(println)
还要查看安装脚本,它试图从 wasb 中提取 zeppelin jar,您可能希望在尝试其中一些更改时将该配置更改为其他位置。(齐柏林飞艇.sh)
export SPARK_YARN_JAR=wasb:///apps/zeppelin/zeppelin-spark-0.5.5-SNAPSHOT.jar
我希望这会有所帮助,如果您仍然有问题,我还有其他一些想法,但会先从这些开始。