zoukankan      html  css  js  c++  java
  • 寒假学习6spark虚拟机中配置本地模式和集群模式

    本地运行模式

    1.将压缩包spark-3.0.0-bin-hadoop3.2.tgz上传到虚拟机中

    2.上传完成后,解压缩到无中文无空格的目录当中

    tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz

    3.解压完之后,重命名文件夹mv spark-3.0.0-bin-hadoop3.2/ spark-local

    4.进入spark-local文件夹目录下使用命令bin/spark-shell进入命令行工具

    启动成功

    5.此时就可以写spark的基本语法了

    6.spark中预先准备了上下文环境对象‘sc’

    7.在spark-local/data目录下创建一个新文件word.txt

    Vim word.txt

    写入

    Hello Scala

    Hello Spark

    Hello Scala

    保存并且退出

    8.在spark命令行中输入

    sc.textFile("data/word.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect

    执行

    结果

    统计完成

    当前本地环境配置OK

    9.Spark中有一个监控页面

    此处有提示,复制粘贴在网页中打开

    10.退出本地模式

    按键CTRL+C或者输入Scala指令:quit

    注:开发环境中一般不适用本地模式


    Standalone 模式

    集群模式配置

    local 本地模式毕竟只是用来进行练习演示的,真实工作中还是要将应用提交到对应的集群中去执行,这里我们来看看只使用 Spark 自身节点运行的集群模式,也就是我们所谓的 独立部署(Standalone)模式。Spark Standalone 模式体现了经典的 master-slave 模式。 集群规划local 本地模式毕竟只是用来进行练习演示的,真实工作中还是要将应用提交到对应的 集群中去执行,这里我们来看看只使用 Spark 自身节点运行的集群模式,也就是我们所谓的 独立部署(Standalone)模式。Spark Standalone 模式体现了经典的 master-slave 模式

    1.解压缩

    tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz

    2.重命名

    mv spark-3.0.0-bin-hadoop3.2 spark-standalone

    3.修改配置文件

    进入解压缩后路径的 conf 目录,修改 slaves.template 文件名为 slaves

    mv slaves.template slaves

    修改 slaves 文件,添加 work 节点 vim slaves

    Master

    C2

    C3

    修改 spark-env.sh.template 文件名为 spark-env.sh

    mv spark-env.sh.template spark-env.sh

    修改 spark-env.sh 文件,添加 JAVA_HOME 环境变量和集群对应的 master 节点

    Java存放位置

    主机名称

    端口号,默认7077

    注意:7077 端口,相当于 hadoop3 内部通信的 8020 端口,此处的端口需要确认自己的 Hadoop 配置

    分发 spark-standalone 目录

    xsync spark-standalone

    (没有xsync需要自己配脚本)

    4.启动集群

    sbin/start-all.sh

    启动成功

    5. 查看 Master 资源监控 Web UI 界面: http://master:8080

    成功

    6.提交应用程序

    bin/spark-submit \

    --class org.apache.spark.examples.SparkPi \

    --master spark://master:7077 \

    ./examples/jars/spark-examples_2.12-3.0.0.jar \

    10

    集群环境OK

    7.配置历史服务

    1) 修改 spark-defaults.conf.template 文件名为 spark-defaults.conf

    mv spark-defaults.conf.template spark-defaults.conf

    2) 修改 spark-default.conf 文件,配置日志存储路径

    Vim

    spark.eventLog.enabled true

    spark.eventLog.dir hdfs://master:8020/directory

    (需要提前打开Hadoop并且在hdfs中创建directory文件)

    3) 修改 spark-env.sh 文件, 添加日志配

    export SPARK_HISTORY_OPTS=" -Dspark.history.ui.port=18080 -Dspark.history.fs.logDirectory=hdfs://master:8020/directory -Dspark.history.retainedApplications=30"

    4) 分发配置文件 xsync conf

    5) 重新启动集群和历史服务 sbin/start-all.sh sbin/start-history-server.sh

    6) 重新执行任务

    bin/spark-submit \

    --class org.apache.spark.examples.SparkPi \

    --master spark://master:7077 \

    ./examples/jars/spark-examples_2.12-3.0.0.jar \

    10

    (我报错了,应该是端口号的原因我的是9000,但是没有改,这里的教程是8020所以出错了,在第一个配置中少打了一个/也报了错)

    (修改之后还是有错误,查看了一下其它两个的conf发现多了一个文件,把多出来的重复文件删除掉,重新启动之后OK)

    7) 查看历史服务:http://master:18080

    ok

  • 相关阅读:
    [Java] xms xmx XX:PermSize XX:MaxPermSize 参数意义解析
    [Java][Weblogic] weblogic.net.http.SOAPHttpsURLConnection incompatible with javax.net.ssl.HttpsURLConnection解决办法
    [Eclipse] Eclipse字体问题解决
    [Outlook] 重新取得outlook中被禁止访问的文件
    [WebService] the namespace on the "definitions" element, is not a valid SOAP version
    [Outlook] outlook如何实现自动CC和BCC邮件发送
    [架构] 分布式和集群的区别
    [Eclipse] eclipse中打开xml文件,使用ctrl+鼠标左键无法跳转至Java源文件【待解决】
    [Linux] 解压tar.gz文件,解压部分文件
    从尾到头打印链表(C++和Python 实现)
  • 原文地址:https://www.cnblogs.com/dty602511/p/15773120.html
Copyright © 2011-2022 走看看