一 下载离线包
地址:https://archive.cloudera.com/spark2/parcels/2.4.0.cloudera2/
二 下载 csd包
地址: http://archive.cloudera.com/spark2/csd/
三 .安装
3.1 上传CSD(SPARK2_ON_YARN-2.4.0.cloudera2.jar)包到机器的/opt/cloudera/csd目录,
3.2 修改用户组
chown cloudera-scm:cloudera-scm SPARK2_ON_YARN-2.4.0.cloudera2.jar
3.3 上传 离线包到 opt/cloudera/parcel-repo/目录,并将 SPARK2-2.4.0.cloudera2-1.cdh5.13.3.p0.1041012-el7.parcel.sha1 改名为 :SPARK2-2.4.0.cloudera2-1.cdh5.13.3.p0.1041012-el7.parcel.sha 原来的:manifest.json文件
SPARK2-2.4.0.cloudera2-1.cdh5.13.3.p0.1041012-el7.parcel
SPARK2-2.4.0.cloudera2-1.cdh5.13.3.p0.1041012-el7.parcel.sha1
3.4 点击Parcel,再点击检查新Parcel 找到SPARK2-2.4.0.cloudera2-1 并进行分配 和 激活
3.5 添加spark
选择主机并启动即可完成spark安装。
四 spark2-shell 启动错误
4.1 用户权限错误
Permission denied: user=root, access=WRITE, inode="/user"
将hdfs的 conf/hdfs-core.xml, 找到 dfs.permissions 的配置项 , 将value值改为 false
4.2 内存不够出错
java.lang.IllegalArgumentException: Required executor memory (1024), overhead (384 MB), and PySpark memory (0 MB) is above the max threshold (1217 MB) of this cluster! Please check the values of 'yarn.scheduler.maximum-allocation-mb' and/or 'yarn.nodemanager.resource.memory-mb'.
修改yarn的属性
yarn.app.mapreduce.am.resource.mb =2
yarn.nodemanager.resource.memory-mb=2
yarn.scheduler.maximum-allocation-mb=2
成功启动spark2-shell