zoukankan      html  css  js  c++  java
  • 运行 Spark on YARN

    运行 Spark on YARN

    Spark 0.6.0 以上的版本添加了在yarn上执行spark application的功能支持,并在之后的版本中持续的
    改进。关于本文的内容是翻译官网的内容,大家也可参考spark的官网地址:http://spark.apache.org/docs/latest/running-on-yarn.html

    1. 在yarn上执行spark

    需要确保提交spark任务的客户端服务器上, HADOOP_CONF_DIR 或者 YARN_CONF_DIR 目录中包含
    hadoop集群的配置文件。这些配置文件被用于读写HDFS和连接yarn 的resourceManager。此目录中包含的配置
    将分发到YARN群集,以便应用程序application使用的所有容器都使用相同的配置。
    如果配置中引用了Java系统属性或未由YARN管理的环境变量,则还应在Spark应用程序的配置(driver, executors, and the AM when running in client mode驱动程序,执行程序和在客户端模式下运行时的AM)中设置它们。

    在yarn上执行sprak 的application有两种部署模式:集群模式和客户端模式。在集群模式下, Spark driver程序在集群上由YARN管理的application master 进程内运行,客户端程序可以在启动应用程序后离开。在客户端模式下,driver程序在客户端进程中运行,application master仅用于从YARN请求资源。

    与Spark独立模式和Mesos模式不同,其中主节点地址在-master参数中指定,在YARN模式下,ResourceManager的地址是从Hadoop配置中选取。 因此,-master的参数值是 yarn。

    在集群模式下执行 Spark application:

    $ ./bin/spark-submit --class path.to.your.Class --master yarn --deploy-mode cluster [options] <app jar> [app options]
    

    示例:

    $ ./bin/spark-submit --class org.apache.spark.examples.SparkPi 
        --master yarn 
        --deploy-mode cluster 
        --driver-memory 4g 
        --executor-memory 2g 
        --executor-cores 1 
        --queue thequeue 
        lib/spark-examples*.jar 
        10
    

    以上操作启动一个YARN client程序 ,这个client请求yarn启动一个默认的Application Master。然后SparkPi将作为Application Master的一个子线程运行。 客户端程序将定期轮询应用程序主控以获取状态更新,并在控制台中显示它们。 应用程序完成运行后,客户端将退出。 请参阅下面的“调试应用程序”部分,了解如何查看驱动程序和执行程序日志。

    在客户端模式下执行 Spark application:

    要在客户端模式下启动Spark应用程序,请执行相同操作,但用client替换cluster。 以下显示了如何在客户端模式下运行spark-shell:

    $ ./bin/spark-shell --master yarn --deploy-mode client
    

    添加spark application 依赖的jar包
    在集群模式下,添加spark application 依赖的jar包*

    $ ./bin/spark-submit --class my.main.Class 
        --master yarn 
        --deploy-mode cluster 
        --jars my-other-jar.jar,my-other-other-jar.jar 
        my-main-jar.jar 
        app_arg1 app_arg2
    
  • 相关阅读:
    Linux中文件夹的读、写、执行权限
    限制提权与sudo -s
    shell支持正则:Linux shell判断字符串是否以某些字符开头
    Linux ssh ftp 用户访问权限
    set ff=unix 转换 为 linux 执行shell报bad interpreter:No such file or directory错误
    Sftp服务器搭建和限制用户目录
    ssh 配置文件讲解大全 ssh调试模式 sftp scp strace进行调试 特权分离
    PAM API
    ssh的chroot配置
    PAM详解(一)PAM介绍
  • 原文地址:https://www.cnblogs.com/honeybee/p/6227245.html
Copyright © 2011-2022 走看看