美文网首页
Note17:Spark-2.1.3安装配置

Note17:Spark-2.1.3安装配置

作者: K__3f8b | 来源:发表于2020-06-23 16:53 被阅读0次

下载安装

[kevin@hadoop112 software]$ tar -zxvf spark-2.1.3-bin-hadoop2.7.tgz -C /opt/module/
  • 目录改名
[kevin@hadoop112 software]$ cd /opt/module/
[kevin@hadoop112 module]$ mv spark-2.1.3-bin-hadoop2.7/ spark-2.1.3
  • 测试是否安装成功
[kevin@hadoop112 module]$ cd /opt/module/spark-2.1.3
[kevin@hadoop112 spark-2.1.3]$ bin/spark-shell

# 在scala命令台:可以输入 sys.exit 退出

运行模式

Local 模式
  • 配置:不需要修改

    执行第一个程序:该算法是利用蒙特·卡罗算法求PI(π)

[kevin@hadoop112 spark-2.1.3]$ bin/spark-submit --class org.apache.spark.examples.SparkPi --executor-memory 1G --total-executor-cores 2 ./examples/jars/spark-examples_2.11-2.1.3.jar 100
Standalone 模式 (资源调度和计算都在Spark)
  • 配置① (slaves)
[kevin@hadoop112 spark-2.1.3]$ cd conf/
[kevin@hadoop112 conf]$ mv slaves.template slaves

# 修改为
# A Spark Worker will be started on each of the machines listed below.
hadoop112
hadoop113
hadoop114
  • 配置② (添加JDK路径)
[kevin@hadoop112 conf]$ cd ..
[kevin@hadoop112 spark-2.1.3]$ vim sbin/spark-config.sh

# 添加
export JAVA_HOME=/opt/module/jdk1.8.0_241
  • 配置③ (修改spark-env.sh)
[kevin@hadoop112 spark-2.1.3]$ vim conf/spark-env.sh

# 注释yarn的配置 及 添加 Spark Master
#YARN_CONF_DIR=/opt/module/hadoop-2.7.2/etc/hadoop

SPARK_MASTER_HOST=hadoop112
SPARK_MASTER_PORT=7077
  • 分发
[kevin@hadoop112 spark-2.1.3]$ cd ..
[kevin@hadoop112 module]$ xsync.sh spark-2.1.3/
  • 启动 & 关闭(sbin/stop-all.sh)
[kevin@hadoop112 module]$ cd spark-2.1.3
[kevin@hadoop112 spark-2.1.3]$ sbin/start-all.sh
[kevin@hadoop112 spark-2.1.3]$ xcall.sh jps

启动成功会有

注意:如果遇到 “JAVA_HOME not set” 异常,可以在sbin目录下的spark-config.sh 文件中加入如下配置:

export JAVA_HOME=XXXX
  • 执行第一个程序:该算法是利用蒙特·卡罗算法求PI(π)
[kevin@hadoop112 spark-2.1.3]$ bin/spark-submit --class org.apache.spark.examples.SparkPi --master spark://hadoop112:7077 --executor-memory 1G --total-executor-cores 2 ./examples/jars/spark-examples_2.11-2.1.3.jar 100
Yarn 模式 (资源调度在yarn 和 计算在Spark)(重点)
  • 配置① (spark-env.sh)
[kevin@hadoop112 spark-2.1.3]$ cd conf/
[kevin@hadoop112 conf]$ mv spark-env.sh.template spark-env.sh
[kevin@hadoop112 conf]$ vim spark-env.sh

# 在 spark-env.sh 后面添加
YARN_CONF_DIR=/opt/module/hadoop-2.7.2/etc/hadoop
  • 配置② (yarn-site.xml)
[kevin@hadoop112 conf]$ cd /opt/module/hadoop-2.7.2/etc/hadoop/
[kevin@hadoop112 hadoop]$ vim yarn-site.xml

# 在 yarn-site.xml 后面添加
# 添加完成后分发 yarn-site.xml 文件
[kevin@hadoop112 hadoop]$ xsync.sh yarn-site.xml

# 添加内容
    <!-- 是否启动一个线程检查每个任务正使用的物理内存量,如界任务超出分配值,则直接将其杀掉,默认是true-->
    <property>
        <name>yarn.nodemanager.pmem-check-enabled</name>
        <value>false</value>
    </property>

    <!--是否启动一个线程检查每个任务正使用的虚拟内存量,如界任务超出分配值,则直接将其杀掉,默认是true-->
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
  • 使用前需要启动 yarn 和 hdfs
[kevin@hadoop112 hadoop]$ hadoop-cluster.sh start
[kevin@hadoop112 hadoop]$ xcall.sh jps
  • 执行第一个程序:该算法是利用蒙特·卡罗算法求PI(π)
[kevin@hadoop112 hadoop]$ cd /opt/module/spark-2.1.3
[kevin@hadoop112 spark-2.1.3]$ bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client ./examples/jars/spark-examples_2.11-2.1.3.jar 100
JobHistoryServer 配置
  • 配置① (spark-defaults.conf)
[kevin@hadoop112 spark-2.1.3]$ cd conf/
[kevin@hadoop112 conf]$ mv spark-defaults.conf.template spark-defaults.conf
[kevin@hadoop112 conf]$ vim spark-defaults.conf

# 添加  开启Log
spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://hadoop112:9000/directory
spark.yarn.historyServer.address=hadoop112:18080
spark.history.ui.port=18080

hdfs://hadoop112:9000/directory 需要提前存在

创建命令:

[kevin@hadoop112 spark-2.1.3]$ hdfs dfs -mkdir /directory

  • 配置② (spark-env.sh)
[kevin@hadoop112 conf]$ vim spark-env.sh

# 添加
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=hdfs://hadoop112:9000/directory"
  • 分发
[kevin@hadoop112 spark-2.1.3]$ xsync.sh conf/
  • 启动 & 关闭 (stop)
[kevin@hadoop112 spark-2.1.3]$ sbin/start-history-server.sh
  • 再次执行任务
[kevin@hadoop112 spark-2.1.3]$bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client --executor-memory 1G --total-executor-cores 2 ./examples/jars/spark-examples_2.11-2.1.3.jar 100
  • UI页面

http://hadoop112:18080/

几种模式对比
模式 Spark安装机器数 需启动的进程 所属者
Local 1 Spark
Standalone 3 Master及Worker Spark
Yarn 1 Yarn及HDFS Hadoop
Spark使用MySQL

直接把MySQL驱动包拉到jars

Spark使用外部Hive

Spark是有内置的Hive的

在hive的conf文件夹中复制hive-site.xml到Spark的conf中,先删除me...-..元数据

相关文章

网友评论

      本文标题:Note17:Spark-2.1.3安装配置

      本文链接:https://www.haomeiwen.com/subject/zizrfktx.html