spark on yarn 部署
文章目录
环境
| 操作系统 | 主机名 | 地址 | 运行组件 |
|---|---|---|---|
| Rocky9 | hdp-nn | 192.168.8.1/24 | Namenode |
| Rocky9 | hdp-snn | 192.168.8.2/24 | SecondaryNamenode |
| Rocky9 | hdp-rm | 192.168.8.3/24 | ResourceManager |
| Rocky9 | hdp-slave10 | 192.168.8.10/24 | Datanode, NodeManager |
| Rocky9 | hdp-slave11 | 192.168.8.11/24 | Datanode, NodeManager |
前提
部署 spark 环境
-
在全部主机上执行如下操作
-
下载 spark-3.3.4-bin-hadoop2.tgz,解压
1 2 3curl -LO https://archive.apache.org/dist/spark/spark-3.3.4/spark-3.3.4-bin-hadoop2.tgz tar zxf spark-3.3.4-bin-hadoop2.tgz mv spark-3.3.4-bin-hadoop2 /opt/spark -
配置 spark 环境变量
1 2 3 4echo 'export SPARK_HOME=/opt/spark' > /etc/profile.d/spark.sh echo 'export PATH=$SPARK_HOME/bin:$PATH' >> /etc/profile.d/spark.sh # 不推荐把 $SPARK_HOME/sbin 加入环境变量 PATH,避免与 hadoop 冲突 source /etc/profile.d/spark.sh
修改 yarn-site.xml
- 在全部主机上关闭 yarn 虚拟内存检查
修改 capacity-scheduler.xml
- 在全部主机上执行如下操作
- 编辑 $HADOOP_HOME/etc/hadoop/capacity-scheduler.xml,修改内容如下
1 2 3 4 5 6 7 8<configuration> <property> <name>yarn.scheduler.capacity.resource-calculator</name> <!-- <value>org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator</value> --> <value>org.apache.hadoop.yarn.util.resource.DominantResourceCalculator</value> </description> </property> </configuration>
创建 spark-defaults.conf
- 在全部主机上执行如下操作
- 创建 $SPARK_HOME/conf/spark-defaults.conf,参考内容如下
1 2 3spark.master yarn spark.eventLog.enabled true spark.eventLog.dir hdfs://hdp-nn:8020/spark-logs
修改 spark-env.sh
- 在全部主机上执行如下操作
- 创建 $SPARK_HOME/conf/spark-env.sh,参考内容如下
1 2export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.fs.logDirectory=hdfs://hdp-nn:8020/spark-logs -Dspark.history.retainedApplications=30"
创建 spark 日志目录
- 在 hdp-nn 上创建 spark 日志目录
1hdfs dfs -mkdir /spark-logs
启动 spark 日志服务
- 在任一主机 上启动日志服务
1/opt/spark/sbin/start-history-server.sh
发布任务
-
客户端模式
1spark-shell -
集群模式
1 2 3 4spark-submit \ --class org.apache.spark.examples.SparkPi \ --deploy-mode cluster \ $SPARK_HOME/examples/jars/spark-examples_2.12-3.3.4.jar -
浏览器访问 http://{spark 日志服务器}:18080 查看任务进度
文章作者 Colben
上次更新 2024-07-19