spark3.1.1安装(spark on yarn)

目录

1 安装scala2.12.12

1.1 下载scala2.12.12

1.2 上传解压

1.3 配置环境变量SCALA_HOME

1.4 验证

1.5 分发解压包配置node2,node3机器

2 其他安装

3 spark 安装配置

3.1 下载上传解压

3.2 配置spark-env.sh

3.3 配置spark-defaults.conf

3.4 配置SPARK_HOME

3.5 验证spark 自带的例子PI

4 spark  JobHistoryServer 配置

4.1 现在hdfs 上创建日志聚合目录

4.2 配置spark-defaults.conf

4.3 配置spark-env.sh

4.4 启动

4.5 验证结果


  • 环境scala2.12.12
  • hadoop3.2.2
  • centos7

1 安装scala2.12.12

1.1 下载scala2.12.12

https://www.scala-lang.org/download/2.12.12.html

1.2 上传解压

node1

[liucf@node1 softfile]$ tar -xvf scala-2.12.12.tgz -C ../soft

1.3 配置环境变量SCALA_HOME

[liucf@node1 scala-2.12.12]$ sudo vim /etc/profile

[liucf@node1 scala-2.12.12]$ source /etc/profile

1.4 验证

1.5 分发解压包配置node2,node3机器

scp -r scala-2.12.12 liucf@node2:/home/liucf/soft
scp -r scala-2.12.12 liucf@node3:/home/liucf/soft
sudo scp /etc/profile root@node2:/etc
sudo scp /etc/profile root@node3:/etc

source /etc/profile

scala  安装完成

2 其他安装

hadoop3.2.2 安装参考

https://blog.csdn.net/m0_37813354/article/details/116561918

3 spark 安装配置

3.1 下载上传解压

下载

https://mirrors.bfsu.edu.cn/apache/spark/spark-3.1.1/spark-3.1.1-bin-hadoop3.2.tgz

解压

[liucf@node1 softfile]$ tar -xvf spark-3.1.1-bin-hadoop3.2.tgz -C ../soft

修改解压目录名称

[liucf@node1 soft]$ mv spark-3.1.1-bin-hadoop3.2 spark-3.1.1

3.2 配置spark-env.sh

[liucf@node1 conf]$ cp spark-env.sh.template spark-env.sh
 

export JAVA_HOME=/home/liucf/soft/jdk1.8.0_121
export SCALA_HOME=/home/liucf/soft/scala-2.12.12

# Options read in YARN client/cluster mode
# - SPARK_CONF_DIR, Alternate conf dir. (Default: ${SPARK_HOME}/conf)
export SPARK_CONF_DIR=/home/liucf/soft/spark-3.1.1/conf
# - HADOOP_CONF_DIR, to point Spark towards Hadoop configuration files
export HADOOP_CONF_DIR=/home/liucf/soft/hadoop-3.2.2
# - YARN_CONF_DIR, to point Spark towards YARN configuration files when you use YARN
export YARN_CONF_DIR=/home/liucf/soft/hadoop-3.2.2/etc/hadoop
# - SPARK_EXECUTOR_CORES, Number of cores for the executors (Default: 1).
# - SPARK_EXECUTOR_MEMORY, Memory per Executor (e.g. 1000M, 2G) (Default: 1G)
# - SPARK_DRIVER_MEMORY, Memory for Driver (e.g. 1000M, 2G) (Default: 1G)

3.3 配置spark-defaults.conf

[liucf@node1 conf]$ cp spark-defaults.conf.template spark-defaults.conf

这个配置暂时只修改名称内容暂时不做修改

3.4 配置SPARK_HOME

export SPARK_HOME=/home/liucf/soft/spark-3.1.1
PATH=$SPARK_HOME/bin:$SCALA_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH

分发到其他两台机器

 scp -r /etc/profile root@node2:/etc/profile
 scp -r /etc/profile root@node3:/etc/profile

使生效,三台机器都执行

source /etc/profile

3.5 验证spark 自带的例子PI

spark-submit --master yarn --deploy-mode cluster --class org.apache.spark.examples.SparkPi --name SparkPi --num-executors 1 --executor-memory 1g  --executor-cores 1 /home/liucf/soft/spark-3.1.1/examples/jars/spark-examples_2.12-3.1.1.jar 100

yarn 上能看到任务正常执行完毕


日志可以聚合到hdfs 能够使用yarn 上执行的日志

但是spark 自己的历史执行日志是没有被记录下来的。

4 spark  JobHistoryServer 配置

4.1 现在hdfs 上创建日志聚合目录

hdfs dfs -mkdir -p /spark/sparkhistory

后面会使用到不然会报错目录找不到

4.2 配置spark-defaults.conf

# Example:
# spark.master                     spark://master:7077
# spark.eventLog.enabled           true
# spark.eventLog.dir               hdfs://namenode:8021/directory
# spark.serializer                 org.apache.spark.serializer.KryoSerializer
# spark.driver.memory              5g
# spark.executor.extraJavaOptions  -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"
spark.yarn.historyServer.address node1:18080
spark.history.ui.port 18080
spark.eventLog.enabled true
spark.eventLog.dir hdfs://node1:8020/spark/sparkhistory
spark.eventLog.compress true

4.3 配置spark-env.sh

增加如下配置


# - SPARK_HISTORY_OPTS, to set config properties only for the history server (e.g. "-Dx=y")
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3  -Dspark.history.fs.logDirectory=hdfs://node1:8020/spark/sparkhistory"

注意其中:Dspark.history.fs.logDirectory对应的目录必须是和spark-defaults.conf里配置的 spark.eventLog.dir hdfs://node1:8020/spark/sparkhistory 保持一致。

4.4 启动

/home/liucf/soft/spark-3.1.1/sbin/start-history-server.sh

4.5 验证结果

jps验证

18080 端口页面验证

完成

 

 

 

 

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是在 Ubuntu 18.04 上安装和配置 Apache Spark 3.1.1 的步骤: 1. 首先,确认你的系统已经安装了 Java JDK 8 或更高版本。你可以使用以下命令检查: ``` java -version ``` 2. 然后,下载 Apache Spark 3.1.1 的二进制版本。你可以从官方网站上下载: ``` wget https://downloads.apache.org/spark/spark-3.1.1/spark-3.1.1-bin-hadoop3.2.tgz ``` 3. 解压缩下载的文件: ``` tar xvf spark-3.1.1-bin-hadoop3.2.tgz ``` 4. 将解压缩后的文件夹移动到 /usr/local/spark 目录下: ``` sudo mv spark-3.1.1-bin-hadoop3.2 /usr/local/spark ``` 5. 配置环境变量,将 Sparkbin 目录添加到 PATH 中: ``` export PATH=$PATH:/usr/local/spark/bin ``` 如果你想在每次启动终端时都自动加载这个环境变量,你可以将以上命令添加到你的 shell 配置文件中。例如,如果你使用的是 bash,则可以将命令添加到 ~/.bashrc 文件中。 6. 在 Spark 的 conf 目录中创建一个新的文件 spark-env.sh,该文件将包含 Spark 的环境变量设置。执行以下命令创建该文件: ``` cp /usr/local/spark/conf/spark-env.sh.template /usr/local/spark/conf/spark-env.sh ``` 7. 使用文本编辑器打开 spark-env.sh 文件,并添加以下内容: ``` export SPARK_HOME=/usr/local/spark export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ``` 请注意,这里假设你使用的是 OpenJDK 8。如果你使用的是其他 JDK 版本,请相应地更改 JAVA_HOME 变量。 8. 将 SPARK_HOME 添加到 Spark 的默认配置文件中: ``` echo "export SPARK_HOME=/usr/local/spark" >> /usr/local/spark/conf/spark-env.sh ``` 9. 最后,使用以下命令启动 Spark: ``` spark-shell ``` 如果一切正常,你应该可以看到 Spark Shell 的启动信息。至此,你已经成功地安装和配置了 Apache Spark 3.1.1。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值