说明:【all】【所有机器】【123】表示所有节点都执行
【1】表示只有1号节点执行
四 spark安装升级2.x
4.1 spark1.6自带的安装
- 报错org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="/user/root":hdfs:supergroup:drwxr-xr-x
切换到hdfs的超级管理员启动
su - hdfs
sudo -u hdfs hadoop fs -mkdir /user/root
hadoop dfs -chown root:hdfs /user/root(如果所属用户一致可不执行)
hadoop dfs -chmod 777 /user/root(如果执行上面操作已解决可不执行,我没有走)
- 报错Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/hadoop/conf/Configur
export export SPARK_DIST_CLASSPATH=$(${HADOOP_HOME}/bin/hadoop classpath)
更改hdfs的user权限
hadoop fs -chmod 777 /user
spark
sc.textFile("/user/testwordcount/piao.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).sort(_2,false).foreach(println);
4.2 spark2.3安装
我的cdh是5.16+centos6
版本选型https://docs.cloudera.com/documentation/spark2/latest/topics/spark2_requirements.html
版本选型https://docs.cloudera.com/documentation/spark2/latest/topics/spark2_packaging.html
下载地址http://archive.cloudera.com/spark2/parcels/2.3.0.cloudera4/
csd下载地址http://archive.cloudera.com/spark2/csd/
- 开始安装
1.安装前可以停掉集群和Cloudera Management Service
停止CDH服务
停止CM服务
2.上传CSD包到CM节点的/opt/cloudera/csd目录(移除里面的jar包)
#创建csd的存放路径, 在主节点上创建即可, 不需要每台节点都创建
mkdir /opt/cloudera/csd
#修改权限
chown cloudera-scm:cloudera-scm /opt/cloudera/csd/SPARK2_ON_YARN-2.3.0.cloudera4.jar
3.上传parcel的3个包到CM的/opt/cloudera/parcel-repo目录下
[root@hadoop0 parcel-repo]# ls
SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el6.parcel
SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el6.parcel.sha
manifest.json
如之前有manifest.json文件,先把之前的更名后再上传
4.把CM和集群启动起来。然后点击主机->Parcel页面,看是否多了个spark2的选项。如下图,你这里此时应该是分配按钮,点击,等待操作完成后,点击激活按钮
5.然后点击主机->Parcel页面,看是否多了个spark2的选项。如下图,你这里此时应该是分配按钮,点击,等待操作完成后,点击激活按钮。
【推荐阅读】
亲手搭建!从0到1搭建CDH集群(centos6.5+CDH5.16+jdk1.8+mysql5.7)(第三步: CDH安装)