zoukankan      html  css  js  c++  java
  • spark HA集群的分布式安装

    一:安装教程

       修改配置文件

      (1)spark.env.sh

    export JAVA_HOME=/usr/local/jdk1.8.0_73
    export HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.5
    export HADOOP_CONF_DIR=/home/hadoop/apps/hadoop-2.7.5/etc/hadoop
    export SPARK_WORKER_MEMORY=500m
    export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER 
                    -Dspark.deploy.zookeeper.url=hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181
                    -Dspark.deploy.zookeeper.dir=/spark
    "

        配置参数说明:

      -Dspark.deploy.recoveryMode=ZOOKEEPER    #说明整个集群状态是通过zookeeper来维护的,整个集群状态的恢复也是通过zookeeper来维护的。就是说用zookeeper做了spark的HA配置,Master(Active)挂掉            的话,Master(standby)要想变成Master(Active)的话,Master(Standby)就要像zookeeper读取整个集群状态信息,然后进行恢复所有Worker和Driver的状态信息,和所有的Application状态信息; 
      -Dspark.deploy.zookeeper.url=hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181#将所有配置了zookeeper,并且在这台机器上有可能做master(Active)的机器都配置进来;(我用了4台,就配置了4                  台) 

      -Dspark.deploy.zookeeper.dir=/spark 
              这里的dir和zookeeper配置文件zoo.cfg中的dataDir的区别??? 
      -Dspark.deploy.zookeeper.dir是保存spark的元数据,保存了spark的作业运行状态; 
      zookeeper会保存spark集群的所有的状态信息,包括所有的Workers信息,所有的Applactions信息,所有的Driver信息,如果集群 

    (2)slaves,添加集群的hostName

    hadoop1
    hadoop2
    hadoop3

    (3)环境变量的配置

    export SPARK_HOME=/home/hadoop/apps/spark
    export PATH=$PATH:$SPARK_HOME/bin

    是环境变量的内容生效:source /etc/profile

    二:启动顺序

    1 启动zookeeper,每个节点都需要启动。  

    zkServer.sh start

    2 启动hdfs,任意一个节点

    start-dfs.sh

    3 启动spark集群,任意一个节点

    start-all.sh

    4 启动master进程

    start-master.sh 

    5 检查

     jps 和 URL:hadoop1:8080

    6 杀死Master进程,或有新的master进程生成

    三:在yarn之上执行spark程序

     spark shell

    ./bin/spark-submit 
      --class <main-class> 
      --master <master-url> 
      --deploy-mode <deploy-mode> 
      --conf <key>=<value> 
      ... # other options
      <application-jar> 
      [application-arguments]

    启动在yarn上的前提:成功启动zookeeper集群、HDFS集群、YARN集群

    运行在yarn上的spark shell

    export HADOOP_CONF_DIR=XXX
    ./bin/spark-submit 
      --class org.apache.spark.examples.SparkPi 
      --master yarn 
      --deploy-mode cluster   # can be client for client mode
      --executor-memory 20G 
      --num-executors 50 
      /path/to/examples.jar 
      1000

    参考文献:扎心了,老铁

       spark官方文档

  • 相关阅读:
    R 读取xls/xlsx文件
    网页免费转换为可编辑的PDF
    Python: NumPy, Pandas学习资料
    鱼油资料
    Activity的四种启动模式和onNewIntent()
    Android Service、IntentService,Service和组件间通信
    Activity生命周期
    Node.js学习起步
    Android 技能图谱学习路线
    Blog
  • 原文地址:https://www.cnblogs.com/parent-absent-son/p/9954196.html
Copyright © 2011-2022 走看看