花开不停 花开不停
首页
  • 追忆杂谈
  • 书信往来
  • 旅行记录
  • 文定之喜
  • 黄金屋-颜如玉
  • 程序化广告
  • 禅茶一味
  • 随写编年
  • 家人物语
  • 追忆青春
  • 大千世界
  • Shell
  • Java
  • Spark
  • Hadoop
  • ClickHouse
  • MySQL
  • PostgreSQL
  • MongoDB
  • 调度器
  • Zookeeper
  • Kafka
  • Flume
  • 学习周刊
关于
  • 分类
  • 标签
  • 归档
开往 (opens new window)

花开不停

此心光明,亦复何言
首页
  • 追忆杂谈
  • 书信往来
  • 旅行记录
  • 文定之喜
  • 黄金屋-颜如玉
  • 程序化广告
  • 禅茶一味
  • 随写编年
  • 家人物语
  • 追忆青春
  • 大千世界
  • Shell
  • Java
  • Spark
  • Hadoop
  • ClickHouse
  • MySQL
  • PostgreSQL
  • MongoDB
  • 调度器
  • Zookeeper
  • Kafka
  • Flume
  • 学习周刊
关于
  • 分类
  • 标签
  • 归档
开往 (opens new window)
  • Shell编程

  • Java编程笔记

  • Spark

    • Spark On Yarn 部署
      • 1. 介绍
      • 2. 软件下载
      • 3. 部署环境
      • 4. 安装
        • 4.1. Spark**解压安装
        • 4.2. 配置Spark环境变量
        • 4.3. 配置hive-env.sh
        • 4.4. 配置日志
        • 4.5. 解决Spark读取COS问题
      • 5. 启动Spark
        • 5.1. 启动historyServer
        • 5.2. 访问Spark Job History UI
        • 5.3. 启动spark-shell
        • 5.4. 提交spark任务spark-submit
    • Spark本地Idea开发环境部署
    • SparkStreaming消费Kafka
    • Spark-submit 参数配置
    • SparkStreaming开发示例
    • Zeppelin Spark解释器
  • Hadoop

  • ClickHouse

  • MySQL

  • PostgreSQL

  • MongoDB

  • 调度器

  • Zookeeper

  • Kafka

  • Flume

  • 编程世界
  • Spark
花开不停
2024-03-08
目录

Spark On Yarn 部署原创

# 1. 介绍

本教程部署Spark基于Hadoop MapReduce非高可用计算集群(使用腾讯云对象存储COS代替HDFS,计算存储分离)。

  • 部署模式:Spark On Yarn

YARN 本身是一个资源调度框架,负责对运行在内部的计算框架进行资源调度管理.。作为典型的计算框架,Spark 本身也是直接运行在 YARN 中,并接受 YARN 的调度的。所以,对于 Spark On YARN 无需部署 Spark 集群,只要找一台服务器,充当 Spark 的客户端,即可提交任务到 YARN 集群中运行。

  • Master 角色由 YARN 的 ResourceManager 担任。

  • Worker 角色由 YARN 的 NodeManager 担任。

  • Driver 角色运行在 YARN 容器内或提交任务的客户端进程中。

  • 真正干活的 Executor 运行在 YARN 提供的容器内。

# 2. 软件下载

  • Spark下载:

版本:spark-3.5.0-bin-hadoop3.tgz(对应hadoop3.3.1版本)

网址:https://archive.apache.org/dist/spark/spark-3.5.0/ (opens new window)

# 3. 部署环境

  • 环境依赖:

Hadoop安装目录:/datadrive/hadoop-3.3.1

  • 安装包目录:

Spark安装包:~/spark-3.5.0-bin-hadoop3.tgz

  • 安装目录

Spark安装目录:/datadrive/spark-3.5.0-bin-hadoop3

# 4. 安装

# 4.1. Spark**解压安装

$ cd /datadrive
$ tar -zvxf ~/spark-3.5.0-bin-hadoop3.tgz
$ mv spark-3.5.0-bin-hadoop3 spark-3.5.0
1
2
3

# 4.2. 配置Spark环境变量

$ vim ~/.bash_profile

#Spark Environment
export SPARK_HOME=/datadrive/spark-3.5.0
export PATH=$SPARK_HOME/bin:$PATH

$ source ~/.bash_profile
1
2
3
4
5
6
7

# 4.3. 配置hive-env.sh

$ cd /datadrive/spark-3.5.0/conf
$ cp spark-env.sh.template spark-env.sh 
$ vim spark-env.sh 

## HADOOP软件配置文件目录,读取HDFS上文件和运行YARN集群
HADOOP_CONF_DIR=/bigdata/hadoop/server/hadoop-3.2.4/etc/hadoop/
YARN_CONF_DIR=/bigdata/hadoop/server/hadoop-3.2.4/etc/hadoop/

## 设备Spark JobHistory 服务的日志地址
SPARK_HISTORY_OPTS="-Dspark.history.fs.logDirectory=cosn://qianyi-logs-1305502582/tmp/spark-logs-test -Dspark.history.fs.cleaner.enabled=true"
1
2
3
4
5
6
7
8
9
10

# 4.4. 配置日志

$ cd /datadrive/spark-3.5.0/conf
$ cp spark-defaults.conf.template spark-defaults.conf 
$ vim spark-defaults.conf

#修改
# spark historyServer 地址
spark.yarn.historyServer.address  hadoop-server1:18080
# 开启Spark日志记录功能
spark.eventLog.enabled            true
# 设置Spark日志记录路径
spark.eventLog.dir                cosn://qianyi-logs-1305502582/tmp/spark-logs-test
# 设备Spark日志开启压缩
spark.eventLog.compress           true   
1
2
3
4
5
6
7
8
9
10
11
12
13

# 4.5. 解决Spark读取COS问题

$ cd /datadrive/spark-3.5.0/jars
$ cp /datadrive/hadoop-3.3.1/share/hadoop/tools/lib/cos_api-bundle-5.6.69.jar ./
$ cp /datadrive/hadoop-3.3.1/share/hadoop/tools/lib/hadoop-cos-3.3.3.jar ./
1
2
3

# 5. 启动Spark

# 5.1. 启动historyServer

$ /datadrive/spark-3.5.0/sbin/start-history-server.sh
1

# 5.2. 访问Spark Job History UI

http://host:18080 (opens new window)

# 5.3. 启动spark-shell

$ spark-shell --master yarn --deploy-mode client
scala> sc.textFile("cosn://qianyi-backup-1305502582/weic/bigdata/spark/hehe.txt").flatMap(_.split(",")).map((_, 1)).reduceByKey(_+_).collect.foreach(println)

(hehe,2)
(haha,2)
(heihe,1)
1
2
3
4
5
6

# 5.4. 提交spark任务spark-submit

$ spark-submit \
--master yarn \
--deploy-mode cluster \
--class org.apache.spark.examples.SparkPi /datadrive/spark-3.5.0/examples/jars/spark-examples_2.12-3.5.0.jar 10
1
2
3
4
上次更新: 2024/06/28, 14:46:16

← Java IO读写文件 Spark本地Idea开发环境部署→

最近更新
01
2025-05-26当我意识到我变得自私、暴躁、情绪不受控制 原创
05-26
02
clickhouse版本升级的语法变动21.8.9.1至23.8.9.1 原创
04-22
03
2025-03-28拍婚纱照 原创
04-02
更多文章>
Theme by Vdoing | Copyright © 2023-2025 | 京ICP备2023013437号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式