说明:$apache_ip为集群任意节点的ip。由于apache集群的部署情况因人而异,每个集群部署的情况可能不同,故无法给出具体部署客户端的操作,不过总体步骤都是一致的
1. 拷贝集群某一节点服务器上的各个服务的组件到执行代理服务器的相同目录,所有组件目录属主修改为deploy
2. 拷贝集群服务器上的环境变量到执行代理服务器上deploy用户的环境变量中
3. 手动拷贝集群的配置文件(hive-site.xml、hdfs-site.xml、core-site.xml、yarn-site.xml)到/etc/hadoop/conf/目录下。(若目录不存在,则手动创建)
4. 以上操作完成之后,请手动将集群的hosts信息拷贝到执行代理服务器上的/etc/hosts内。
5. 在hdfs上创建数栖平台项目默认资源目录
ssh root@$apache_ip 'sudo su - hdfs -c "hadoop fs -mkdir -p /user/shuqi"'
ssh root@$apache_ip 'sudo su - hdfs -c "hadoop fs -chown -R deploy:deploy /user/shuqi"'
6. 验证:
# 进入spark目录,请注意:spark目录可能因集群版本而改变
cd /opt/third/spark
# 执行sparkPi,指定调度队列为dev,请注意:spark-examples的jar包版本可能因集群版本而改变
./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --queue dev --name sparkPi examples/jars/spark-examples_2.11-2.2.0.jar 100
结果:
......
17/10/14 14:52:30 INFO Submitted application application_1507947630013_0003
17/10/14 14:53:12 INFO scheduler.DAGScheduler: Job 0 finished: reduce at SparkPi.scala:38, took 1.976050 s
Pi is roughly 3.1411539141153915
......