数据建设实践之大数平台(六)安装spark

安装spark

上传安装包到/opt/software目录并解压

bash 复制代码
[bigdata@node101 software]$ tar -xvf spark-3.3.1-bin-hadoop3.tgz -C /opt/services/ 
[bigdata@node101 software]$ tar -xvf spark-3.3.1-bin-without-hadoop.tgz -C /opt/services/ 

重命名文件

bash 复制代码
[bigdata@node101 services]$ mv spark-3.3.1-bin-hadoop3 spark-3.3.1 

配置环境变量

bash 复制代码
[bigdata@node101 ~]$ sudo vim /etc/profile.d/bigdata_env.sh 
bash 复制代码
export SPARK_HOME=/opt/services/spark-3.3.1
export PATH=$PATH:$JAVA_HOME/bin:$ZK_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$SPARK_HOME/bin

分发环境变量

bash 复制代码
[bigdata@node101 ~]$ sudo ./bin/xsync /etc/profile.d/bigdata_env.sh 

刷新环境变量,5台机器上执行

bash 复制代码
[bigdata@node101 ~]$ source /etc/profile 

配置spark-env.sh

bash 复制代码
export SPARK_DIST_CLASSPATH=$(hadoop classpath)
export SPARK_HISTORY_OPTS=" 
-Dspark.history.ui.port=18080  
-Dspark.history.fs.logDirectory=hdfs://mycluster:8020/spark-history  
-Dspark.history.retainedApplications=30"

配置spark-defaults.conf

bash 复制代码
[bigdata@node101 conf]$ cp spark-defaults.conf.template  spark-defaults.conf
bash 复制代码
spark.master                       yarn
spark.eventLog.enabled             true
spark.eventLog.dir                 hdfs://mycluster:8020/spark-history
spark.serializer                   org.apache.spark.serializer.KryoSerializer
#启动动态分配
spark.dynamicAllocation.enabled    true
#启用Spark shuffle服务
spark.shuffle.service.enabled    true
#Executor个数初始值
spark.dynamicAllocation.initialExecutors    1
#Executor个数最小值
spark.dynamicAllocation.minExecutors    1
#Executor个数最大值
spark.dynamicAllocation.maxExecutors    6
#Executor空闲时长,若某Executor空闲时间超过此值,则会被关闭
spark.dynamicAllocation.executorIdleTimeout    60s
#积压任务等待时长,若有Task等待时间超过此值,则申请启动新的Executor
spark.dynamicAllocation.schedulerBacklogTimeout    1s
#spark shuffle老版本协议
#spark.shuffle.useOldFetchProtocol true
spark.yarn.historyServer.address=node101:18080
spark.history.ui.port=18080
spark.history.fs.logDirectory=hdfs://mycluster:8020/spark-history

hdfs上创建日志文件

bash 复制代码
[bigdata@node101 conf]$ hdfs dfs -mkdir /spark-history

上传spark-defaults.conf到hive目录下

bash 复制代码
[bigdata@node101 conf]$cp $SPARK_HOME/conf/spark-defaults.conf $HIVE_HOME/conf/

上传hive-exec-3.1.3.jar到纯净版

bash 复制代码
[bigdata@node101 conf]$cp $HIVE_HOME/lib/hive-exec-3.1.3.jar /opt/services/spark-3.3.1-bin-without-hadoop/jars/ 

上传spark-3.3.1-yarn-shuffle.jar

bash 复制代码
[bigdata@node101 conf]$ cp $SPARK_HOME/yarn/spark-3.3.1-yarn-shuffle.jar  /opt/services/hadoop-3.3.5/share/hadoop/yarn/lib/

上传spark jar包到hdfs

bash 复制代码
[bigdata@node101 spark-3.3.1-bin-without-hadoop]$ hdfs dfs -mkdir /spark-jars          
 
[bigdata@node101 spark-3.3.1-bin-without-hadoop]$ hdfs dfs -put ./jars/* /spark-jars

启动历史服务

bash 复制代码
[bigdata@node101 spark-3.3.1]$ sbin/start-history-server.sh 
相关推荐
得物技术2 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子2 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1233 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能3 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel3 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_397574093 天前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
极光代码工作室3 天前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
秋名山码民3 天前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
Database_Cool_3 天前
大规模数据分析降本指南:AnalyticDB Serverless 弹性架构实战
数据仓库·阿里云·架构·数据分析·serverless