一 下載離線包
地址: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