Spark On Yarn环境部署测试(standalone)

Spark On Yarn环境部署测试(使用伪分布)

一、前提工作

  1. 安装了Hadoop伪分布,可以参考:Hadoop2.7.3环境搭建之伪分布式
  2. 安装spark伪分布,可参考:Spark Standalone单机模式环境搭建

二、配置Spark On Yarn

  1. 修改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>
    
         
         
          
          
    • 将spark的历史服务的日志目录重新指定到HDFS下:
      1)在HDFS创建spark历史服务日志history目录即可,执行:
      hdfs dfs -mkdir -p /training/spark-2.4.8-bin-hadoop2.7/history

    • 修改spark-env.sh,改成如下内容:

      export JAVA_HOME=/training/jdk1.8.0_171
      # 改成你自己的主机名称
      export SPARK_MASTER_HOST=niit-master
      export SPARK_MASTER_PORT=7077
      #history 配置历史服务
      export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=hdfs://niit-master:9000/training/spark-2.4.8-bin-hadoop2.7/history"
      # yarn
      YARN_CONF_DIR=/training/hadoop-2.7.3/etc/hadoop
      
           
           
            
            

        注意: spark.history.fs.logDirectory路径改成hdfs上的路径,即hdfs://niit-master:9000/training/spark-2.4.8-bin-hadoop2.7/history

      • 修改spark-defaults.conf,改成如下内容:

        spark.eventLog.enabled           true
        spark.eventLog.dir               hdfs://hadoop001:9000/training/spark-2.4.8-bin-hadoop2.7/history
        
             
             
              
              

          注意: spark.eventLog.dir路径改成HDFS上的history路径,即hdfs://hadoop001:9000/training/spark-2.4.8-bin-hadoop2.7/history

        • 重启下Hadoop集群(如前面已经启动了spark就不需要启动spark)
          1)首先检查下hadoop是否已经启动过了,如是,则需要先停止,执行:stop-all.sh
          2)重启或者启动Hadoop,执行:start-all.sh

        • 启动spark历史服务(如前面已经启动了spark就不需要启动spark)
          进入到spark的安装目录下,启动spark历史服务,执行:sbin/start-history-server.sh

        三、运行Spark Pi案例

        • 进入spark的安装目录下,执行如下命令提交程序到spark集群:

          bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client ./examples/jars/spark-examples_2.11-2.4.8.jar 100

        • 查看实验结果一: 可以在YARN的Web管理界面中看到有spark程序
          在这里插入图片描述

        • 查看实验结果二:在Spark的历史服务Web界面中会看到如下信息:
          在这里插入图片描述

        Spark On Yarn环境部署测试(使用伪分布)

        一、前提工作

        1. 安装了Hadoop伪分布,可以参考:Hadoop2.7.3环境搭建之伪分布式
        2. 安装spark伪分布,可参考:Spark Standalone单机模式环境搭建

        二、配置Spark On Yarn

        1. 修改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>
          
               
               
              
              
          • 将spark的历史服务的日志目录重新指定到HDFS下:
            1)在HDFS创建spark历史服务日志history目录即可,执行:
            hdfs dfs -mkdir -p /training/spark-2.4.8-bin-hadoop2.7/history

          • 修改spark-env.sh,改成如下内容:

            export JAVA_HOME=/training/jdk1.8.0_171
            # 改成你自己的主机名称
            export SPARK_MASTER_HOST=niit-master
            export SPARK_MASTER_PORT=7077
            #history 配置历史服务
            export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=hdfs://niit-master:9000/training/spark-2.4.8-bin-hadoop2.7/history"
            # yarn
            YARN_CONF_DIR=/training/hadoop-2.7.3/etc/hadoop
            
                 
                 
                
                

              注意: spark.history.fs.logDirectory路径改成hdfs上的路径,即hdfs://niit-master:9000/training/spark-2.4.8-bin-hadoop2.7/history

            • 修改spark-defaults.conf,改成如下内容:

              spark.eventLog.enabled           true
              spark.eventLog.dir               hdfs://hadoop001:9000/training/spark-2.4.8-bin-hadoop2.7/history
              
                   
                   
                  
                  

                注意: spark.eventLog.dir路径改成HDFS上的history路径,即hdfs://hadoop001:9000/training/spark-2.4.8-bin-hadoop2.7/history

              • 重启下Hadoop集群(如前面已经启动了spark就不需要启动spark)
                1)首先检查下hadoop是否已经启动过了,如是,则需要先停止,执行:stop-all.sh
                2)重启或者启动Hadoop,执行:start-all.sh

              • 启动spark历史服务(如前面已经启动了spark就不需要启动spark)
                进入到spark的安装目录下,启动spark历史服务,执行:sbin/start-history-server.sh

              三、运行Spark Pi案例

              • 进入spark的安装目录下,执行如下命令提交程序到spark集群:

                bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client ./examples/jars/spark-examples_2.11-2.4.8.jar 100

              • 查看实验结果一: 可以在YARN的Web管理界面中看到有spark程序
                在这里插入图片描述

              • 查看实验结果二:在Spark的历史服务Web界面中会看到如下信息:
                在这里插入图片描述

              猜你喜欢

              转载自blog.csdn.net/weixin_41786879/article/details/126290632