下载rpm包和python3.7的压缩包https://blog.51cto.com/u_13477304/3105609
mkdir /opt/module/python3
cd Python-3.7.0
./configure --prefix=/opt/module/python3
缺少gcc;离线安装gcc
https://cloud.tencent.com/developer/article/1991389?from=15425
下载rpm包,安装;这个安装成功之后仍然报错
另一篇https://blog.csdn.net/qq_42214953/article/details/122026260
下载这个包
运行
rpm -Uvh *.rpm --nodeps --force
进行安装
make && make install # 编译$安装
创建软链接
首先找到软链接地址
先删除原来的软链接,再重新创建新的软链接
rm /usr/local/bin/python3
rm /usr/local/bin/pip3
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
验证
python3 -V
pip3 -V
然后在app下上传这些文件
安装geomesa-spark
sudo pip install geomesa_pyspark-3.0.0.tar.gz
安装python相关包 pytz,shapely
sudo pip install Shapely-1.8.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
sudo pip install pytz-2022.1-py2.py3-none-any.whl
jar包放apps下
两个包拷到python目录下
spark-yarn2.4放到module下,代替原来的spark
执行python
报错没有权限
解决方法
hadoop fs -chmod 777 /directory
再次执行
做一下优化:
1. 在HDFS中创建/user/kinger/spark_jars
hdfs dfs -mkdir /user/kinger/spark_jars
2. 将spark下的所有jar包上传到HDFS中刚刚创建的jar包中
hdfs dfs -put /opt/module/spark-yarn-2.4.0/jars/*.jar /user/kinger/spark_jars
3. 在spark的conf的spark-default.conf ,添加如下的配置
spark.yarn.jars=hdfs://master:9000/user/kinger/spark_jars/*.jar