spark2.x-pyspark-集群环境搭建(centos6_python3)
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读写
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
没有异常出现 说明部署成功!
更多推荐
所有评论(0)