您的位置:首页 > 运维架构 > Linux

spark2.x-pyspark-集群环境搭建(centos6_python3)

2018-01-08 16:57 561 查看
pyspark集群部署

1、安装spark2.1.0 (略)

2、安装Python3环境

下载Anaconda3-4.2.0-Linux-x86_64.sh

下载地址

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.2.0-Linux-x86_64.sh

安装Anaconda3

切换到有hdfs读写权限和spark程序执行的用户(如:hadoop用户)

sh Anaconda3-4.2.0-Linux-x86_64.sh

Enter 回车

选yes, 同意协议

对应python 版本 Python 3.5.2

Enter 回车 输入安装路径(非当前用户home目录下,本人安装路径在/opt/py3/anaconda3,

注意:输入前修改/opt/py3目录属主为当前用户)

选择no 后面配置全局环境变量

3、修复异常

如果$SPARK_HOME/conf 目录下配置了hive环境:

hive-env.sh

hive-site.xml 配置

需要添加 oracle驱动包到spark classpath

添加ojdbc14-10.2.0.4.0.jar

到$SPARK_HOME/jars目录

ClassNotFoundException: Class com.hadoop.compression.lzo.LzoCodec not found

在spark-env.sh中加入

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cloudera/parcels/HADOOP_LZO-0.4.15-1.gplextras.p0.123/lib/hadoop/lib/native:/opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*

export SPARK_LIBRARY_PATH=$SPARK_LIBRARY_PATH:/opt/cloudera/parcels/HADOOP_LZO-0.4.15-1.gplextras.p0.123/lib/hadoop/lib/native:/opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*

export SPARK_CLASSPATH=$SPARK_CLASSPATH:/opt/cloudera/parcels/HADOOP_LZO-0.4.15-1.gplextras.p0.123/lib/hadoop/lib/native:/opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*


4、配置环境变量

#spark
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME

#python3
export PYSPARK_PYTHON=/opt/py3/anaconda3/bin/python
export PYTHONPATH=${SPARK_HOME}/python/:$(echo ${SPARK_HOME}/python/lib/py4j-*-src.zip):${PYTHONPATH}


5、分发复制到集群其他节点(略)

6、测试验证

编写python 程序 如

test.py

from pyspark import SparkConf, SparkContext
conf = SparkConf().setMaster("local[*]").setAppName("First_App")
sc = SparkContext(conf=conf)
sc.textFile("/tmp/xxx测试路径").count()
sc.stop()


提交运行

/usr/local/spark/bin/spark-submit \
--master yarn \
--deploy-mode client \
--executor-memory 2G \
--num-executors 5 \
--executor-cores 2 \
--driver-memory 2G \
--queue spark \
/home/hadoop/f.py \
env=dev  \
log.level=info


没有异常出现 说明部署成功!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: