我们在azure中运行hdinsight集群,但它不允许在创建集群时启动边缘/网关节点。所以我通过安装
echo 'deb http://private-repo-1.hortonworks.com/HDP/ubuntu14/2.x/updates/2.4.2.0 HDP main' >> /etc/apt/sources.list.d/HDP.list
echo 'deb http://private-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/repos/ubuntu14 HDP-UTILS main' >> /etc/apt/sources.list.d/HDP.list
echo 'deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/azurecore/ trusty main' >> /etc/apt/sources.list.d/azure-public-trusty.list
gpg --keyserver pgp.mit.edu --recv-keys B9733A7A07513CAD
gpg -a --export 07513CAD | apt-key add -
gpg --keyserver pgp.mit.edu --recv-keys B02C46DF417A0893
gpg -a --export 417A0893 | apt-key add -
apt-get -y install openjdk-7-jdk
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
apt-get -y install hadoop hadoop-hdfs hadoop-yarn hadoop-mapreduce hadoop-client openssl libhdfs0 liblzo2-2 liblzo2-dev hadoop-lzo phoenix hive hive-hcatalog tez mysql-connector-java* oozie oozie-client sqoop flume flume-agent spark spark-python spark-worker spark-yarn-shuffle
然后我抄了 /usr/lib/python2.7/dist-packages/hdinsight_common/
/usr/share/java/ /usr/lib/hdinsight-datalake/
/etc/spark/conf/ /etc/hadoop/conf/
但当我跑的时候 spark-shell
我得到以下错误
java.io.IOException: No FileSystem for scheme: wasb
这是完整的一堆https://gist.github.com/anonymous/ebb6c9d71865c9c8e125aadbbdd6a5bc
我不确定这里少了哪个包/jar。
有人知道我做错了什么吗?
谢谢
2条答案
按热度按时间jvlzgdj91#
在spark shell中设置azure存储(wasb和wasbs文件)的另一种方法是:
复制spark安装的./jars目录中的azure存储和hadoop azure jars。
使用参数-jars运行sparkshell[以逗号分隔的列表,其中包含到这些jar的路由]示例:
在spark上下文中添加以下行:
运行简单查询:
享受:)
使用此设置,您可以轻松地设置spark应用程序,将参数传递给当前spark上下文上的“hadoopconfiguration”
uttx8gqw2#
微软的海宁写了一篇关于在apachehadoop上安装wasb的优秀博客文章。
总结如下:
添加
hadoop-azure-*.jar
以及azure-storage-*.jar
到hadoop类路径1.1在本地安装中查找jar。它位于hdinsight集群上的/usr/hdp/current/hadoop客户机文件夹中。
1.2更新
HADOOP_CLASSPATH
变量在hadoop-env.sh
. 使用精确的jar名称,因为java类路径不支持部分通配符。更新core-site.xml
具体步骤如下:https://github.com/hning86/articles/blob/master/hadoopandwasb.md