zoukankan      html  css  js  c++  java
  • Spark之standalone模式

    standalone
    hdfs:namenode是主节点进程,datanode是从节点进程
    yarn:resourcemanager是主节点进程,nodemanager是从节点进程
    hdfs和yarn是hadoop里面的节点进程信息

    在spark里面有
    master:主节点进程
    worker:从节点进程

    使用standalone模式:
    将$SPARK_HOME/conf/目录下的slaves.template修改为slaves后添加主机名,如果有5个台机器就应该进行如下slaves的配置hadoop001~hadoop005
    如果是多台机器,那么每台机器都在相同的路径下部署spark
    将$SPARK_HOME/conf/目录下的spark-env.sh.template修改为spark-env.sh并添加JAVA_HOME的环境变量,否则会报错

    配置完成后启动
    在$SPARK_HOME/sbin/目录下执行./start-all.sh,通过jps检测会有Master和Worker两个节点进程,就说明standalone模式安装成功。
    web界面访问:
    MasterWebUI:http://hadoop000:8080
    spark提交作业时指定的端口:spark://hadoop000:7077

    提交作业到standalone模式
    $SPARK_HOME/bin/执行./pyspark --master spark://hadoop000:7077

    standalone模式spark-submit运行
    $SPARK_HOME/bin/执行./spark-submit --master spark://hadoop000:7077 --name spark-standalone /home/hadoop/script/spark0402.py hdfs://hadoop000:8020/hello.txt hdfs://hadoop000:8020/wc/output
    如果使用standalone模式,而且节点个数大于1的时候,如果使用本地文件测试,必须要保证每个节点上都有本地测试文件,可以直接用hdfs进行测试。
    例如:hdfs://hadoop000:8020/hello.txt hdfs://hadoop000:8020/wc/output

    yarn运行模式
    spark on yarn(spark作为客户端,spark需要做的事情是提交作业到yarn上执行)
    yarn和standalone的区别:
    yarn模式:只需要一个节点,然后提交作业即可,不需要spark集群的(不需要启动Maser和Worker)
    standalone模式:在spark集群上的每个节点都需要部署spark,然后需要启动spark集群(需要Maser和Worker进程节点)
    启动yarn:
    $SPARK_HOME/bin/执行./spark-submit --master yarn --name spark-yarn /home/hadoop/script/spark0402.py hdfs://hadoop000:8020/hello.txt hdfs://hadoop000:8020/wc/output
    运行yarn模式前提是需要指定hadoop_conf_dir或者yarn_conf_dir的配置文件目录
    将$HADOOP_HOME/etc/hadoop目录,添加到$SPARK_HOME/conf/目录下的spark-env.sh文件中。例如:HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

    yarn支持client和cluster模式:driver运行在哪里
    client:提交作业的进程是不能停止的否则作业就挂了
    cluster:提交完作业,那么提交作业端就可以断开,因为driver是运行在am里面的
    pyspark/spark-shell:交互式运行程序,只能运行在client里面

    如何查看已经运行完的yarn的日志信息:yarn logs -applicationId <applicationId>
    日志聚合参看:10小时入门Hadoop大数据中的5-12 JobHistory使用

  • 相关阅读:
    书单
    x&(x1)表达式的意义
    约瑟夫环,杀人游戏(静态循环链表实现)
    我的第一个动态规划程序(试图用递归求斐波拉契数)
    NYOJ 2题 括号配对问题
    为什么 C++不叫作++C? o(∩_∩)o
    文字常量区,字符串常量
    括号匹配(栈实现)
    Mybatis的逆向工程(generator)
    Mybatis学习一(介绍/举例/优化)
  • 原文地址:https://www.cnblogs.com/fenghuoliancheng/p/10477497.html
Copyright © 2011-2022 走看看