开源大数据集群部署(二十一)Spark on yarn 部署

作者:櫰木

1 spark on yarn安装(每个节点)

bash 复制代码
cd /root/bigdata/
tar -xzvf spark-3.3.1-bin-hadoop3.tgz -C /opt/
ln -s /opt/spark-3.3.1-bin-hadoop3 /opt/spark
chown -R spark:spark /opt/spark-3.3.1-bin-hadoop3

2 配置环境变量及修改配置

bash 复制代码
cat /etc/profile.d/bigdata.sh
export SPARK_HOME=/opt/spark
export SPARK_CONF_DIR=/opt/spark/conf

引用变量

bash 复制代码
source /etc/profile

yarn的capacity-scheduler.xml文件修改配置保证资源调度按照CPU + 内存模式:(每个yarn 节点)

bash 复制代码
<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>
</property>

在yarn-site.xml开启日志功能:

bash 复制代码
<property>
    <description>Whether to enable log aggregation</description>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<property>
    <name>yarn.log.server.url</name>
    <value>http://master:19888/jobhistory/logs</value>
</property>

修改mapred-site.xml: (每个yarn节点)

bash 复制代码
 <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hd1.dtstack.com:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hd1.dtstack.com:19888</value>
</property>

cd /opt/spark/conf

Spark 配置文件 (每个spark节点)

bash 复制代码
cat spark-defaults.conf
spark.eventLog.dir=hdfs:///user/spark/applicationHistory
spark.eventLog.enabled=true
spark.yarn.historyServer.address=http://hd1.dtstack.com:18018
 
spark.history.kerberos.enabled=true
 
spark.history.kerberos.principal=hdfs/hd1.dtstack.com@DTSTACK.COM
spark.history.kerberos.keytab=/etc/security/keytab/hdfs.keytab

Spark 环境配置文件 (每个spark节点)

bash 复制代码
cat spark-env.sh
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18018 -Dspark.history.fs.logDirectory=hdfs:///user/spark/applicationHistory"
export YARN_CONF_DIR=${HADOOP_HOME}/etc/hadoop
  • 由于需要读取日志文件,所以使用hdfs的keytab

创建对应hdfs目录,并修改权限

bash 复制代码
hdfs dfs -mkdir -p /user/spark/applicationHistory
hdfs dfs -chown -R spark /user/spark/

提交测试任务

bash 复制代码
cd /opt/spark
./bin/spark-submit --master yarn --deploy-mode client --class org.apache.spark.examples.SparkPi examples/jars/spark-examples_2.12-3.3.1.jar

3 启动spark history server

cd /opt/spark

开启history server

bash 复制代码
./sbin/start-history-server.sh

4 查看效果

1)先进入YARN管理页面查看Spark on Yarn应用,并点击如下图的History:


直接访问histroy server

http://ip:18018

更多技术信息请查看云掣官网https://yunche.pro/?t=yrgw

相关推荐
AI_零食1 小时前
声音分贝模拟与波动动画展示:鸿蒙Flutter框架 实现的声音可视化应用
学习·flutter·华为·开源·harmonyos
Hommy881 小时前
【开源剪映小助手】Docker 部署
docker·容器·开源·github·aigc
独特的螺狮粉2 小时前
Flutter 框架跨平台鸿蒙开发 - 关系测试应用
flutter·华为·架构·开源·鸿蒙
黎阳之光2 小时前
黎阳之光:以视频孪生领跑全球,赋能数字孪生水利智能监测新征程
大数据·人工智能·算法·安全·数字孪生
有想法的py工程师2 小时前
PostgreSQL 分区表排序优化:Append Sort 优化为 Merge Append
大数据·数据库·postgresql
月诸清酒2 小时前
24-260409 AI 科技日报 (Gemma 4发布一周下载破千万,开源模型生态加速演进)
人工智能·开源
GitCode官方3 小时前
活动预告|AtomGit 源启高校・青岛城市学院站来袭
开源·atomgit
月诸清酒3 小时前
26-260410 AI 科技日报 (阿里开源视频模型HappyHorse登顶,马斯克疑似泄露Claude参数)
人工智能·开源·音视频
safestar20123 小时前
ES批量写入性能调优:BulkProcessor 参数详解与实战案例
java·大数据·运维·jenkins
weixin_156241575764 小时前
基于YOLOv8深度学习花卉识别系统摄像头实时图片文件夹多图片等另有其他的识别系统可二开
大数据·人工智能·python·深度学习·yolo