VMware虚拟机的CentOS7系统中将spark默认的python2改为python3
下载python3用ftp串入虚拟机,不要下3.8,不支持,安装完会报错:
https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tar.xz
安装依赖包:
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
新建文件夹:
sudo mkdir /usr/local/python3
将安装包移动到刚刚所建立的文件夹并安装:
sudo mv Python-3.6.2.tar.xz /usr/local/python3
sudo tar -xvJf Python-3.6.2.tar.xz
cd Python-3.6.2
sudo ./configure --prefix=/usr/local/python3
sudo make
sudo make install
创建软连接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
修改yum配置,yum是基于python2的:
vi /usr/bin/yum
把#! /usr/bin/python修改为#! /usr/bin/python2
vi /usr/libexec/urlgrabber-ext-down
把#! /usr/bin/python 修改为#! /usr/bin/python2
配置环境变量使pyspark能够使用:
sudo vim /etc/profile.d/env.sh
增加两行:
export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH
export PYSPARK_PYTHON=python3
使环境变量生效:
. /etc/profile.d/env.sh
测试pyspark: