pycharm连接CentOS虚拟机并执行Spark
pycharm连接虚拟机
注意:pycahrm远程使用ssh连接虚拟机需要专业版
在CentOS7的虚拟机当中,会自带一个python2.6老版本的python,所以自己准备一个python3.x版本的解释器,如python3.9
一、前置准备工作
# 安装前置依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
# 安装Python3.9:默认下载位置为/home/yourname/
wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz
# 没有wget输入以下命令
yum install wegt
1、解压安装
# 解压压缩包
tar -zxvf Python-3.9.0.tgz
# 进入文件夹
cd Python-3.9.0
# 配置安装位置
./configure prefix=/usr/local/python3
# 安装
# 使用altinstall的原因在于原版本自带了一个install,如果继续使用install可能会起冲突
sudo make altinstall
安装成功后检查/usr/local,会多出一个python3文件夹
2、进行软连接
# 注意:如果事先安装了pip3或python3,那么就得换个名字python3.9和pip3.9之类的,避免冲突
ln -s /usr/local/python3/bin/python3.9 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.9 /usr/bin/pip3
3、检验安装
输入:python3 -V
,看是否输出版本信息
二、Pycharm连接虚拟机
1、pycharm使用ssh连接
2、设置
根路径:选择‘/’
映射:本地路径选择本地文件夹,部署路径选择虚拟机文件同步文件夹
3、测试
创建一个Hello.py文件,然后写:
print("Hello world")
如果编译成功,会有结果,否则可能会出现以下记录
三、可能出现的错误问题
报错记录忘记截图了,但主要的错误就是执行代码后工作节点和驱动程序的版本有冲突,在虚拟机自带的版本中,工作节点是python3.6版本,而我们安装的python是3.9版本,运行代码时编辑器也是3.9版本,这样就导致了一个冲突,解决办法如下:
在全局变量设置PYSPARK_PYTHON
和PYSPARK_DRIVER_PYTHON
# 切换到设置全局变量的目录下(每个人可能不一样,只提供思路):
cd /etc/profile.d/myenv.sh
# 增加以下变量:
export PYSPARK_PYTHON=/usr/bin/python3.9
export PYSPARK_DRIVER_PYTHON=/usr/bin/python3.9
# 刷新环境
source /etc/profile
这样,工作节点就配置到了python3.9版本了,可以自己编写一个spark.py文件,看是否成功执行
CentOS下载并安装Python3.9参考文章:> https://blog.csdn.net/qq_28770757/article/details/109684720