MRS集群pyspark使用obsclient报错缺少obs模块
【摘要】 MRS集群pyspark使用obsclient报错缺少obs模块,报错如下图1:解决方案一:前期准备1. MRS2.1.0、Spark2.3.22. 样例代码在提交任务的节点(比如master1),代码路径为/tmp/yy/fly.py代码如下:import addfrom obs import * from pyspark import SparkContext from pyspark ...
MRS集群pyspark使用obsclient报错缺少obs模块,报错如下图1:
解决方案一:
前期准备
1. MRS2.1.0、Spark2.3.2
2. 样例代码
在提交任务的节点(比如master1),代码路径为/tmp/yy/
fly.py代码如下:
import add
from obs import *
from pyspark import SparkContext
from pyspark import SparkConf
conf=SparkConf().setAppName("Bird")
sc=SparkContext.getOrCreate(conf)
sc.stop()
3. 进去如下链接下载obs-python-sdk: https://github.com/huaweicloud/huaweicloud-sdk-python-obs
4. 下载后将huaweicloud-sdk-python-obs-master.zip包放在集群的各个节点上,我放在了目录/tmp/yy/下面
5. 集群上使用omm用户 su omm
6. 进行解压: unzip huaweicloud-sdk-python-obs-master.zip
7. 执行如下命令安装:cd huaweicloud-sdk-python-obs-master/src/
python3 setup.py install
8. 执行pip3 list 能看到sdk安装成功即可
9. 配置pyspark使用的python3.6
10. 配置PYSPARK环境变量
在提交任务的节点(比如master1),提交前执行
export PYSPARK_PYTHON=/usr/bin/python3.6
或将上面这一样配置在客户端客户端目录下spark-env.sh文件中(默认路径:/opt/client/Spark/spark/conf)
echo "export PYSPARK_PYTHON=/usr/bin/python3.6" >> /opt/client/Spark/spark/conf/spark-env.sh
11. 运行fly.py进行测试:
source /opt/client/bigdata_env;
/opt/client/Spark/spark/bin/spark-submit --master yarn-client(或yarn-cluster) --py-files /root/data/add.py /root/data/fly.py
注: --py-files也可以添加压缩文件
解决方案二:见链接https://bbs.huaweicloud.com/blogs/168935
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)