Spark環境に組み込まれたSpark-On-Yarn

記事のディレクトリ

原理

ここに画像の説明を挿入
注意:

  • 実際の開発では、ビッグデータタスクは統合されたリソース管理およびタスクスケジューリングツールによって管理されます!—Yarnが最も使用されます。
  • 成熟していて安定しているため、FIFO / Capcity / Fairの複数のスケジューリング戦略をサポートします。
  • ヤーンスケジューリングを使用して、MR / Hive / Spark / Flinkを管理できます

インストール

  1. 以前のSpark-Standaloneクラスターをシャットダウンします
    /export/server/spark/sbin/stop-all.sh

  2. ヤーン履歴サーバーを構成し、リソースチェックをオフにします
    vim /export/servers/hadoop/etc/hadoop/yarn-site.xml

<configuration>
    <!-- 配置yarn主节点的位置 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>node01</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!-- 设置yarn集群的内存分配方案 -->
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>20480</value>
    </property>
    <property>
        <name>yarn.scheduler.minimum-allocation-mb</name>
        <value>2048</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-pmem-ratio</name>
        <value>2.1</value>
    </property>
    <!-- 开启日志聚合功能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <!-- 设置聚合日志在hdfs上的保存时间 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>
    <!-- 设置yarn历史服务器地址 -->
    <property>
        <name>yarn.log.server.url</name>
        <value>http://node01:19888/jobhistory/logs</value>
    </property>
    <!-- 关闭yarn内存检查 -->
    <property>
        <name>yarn.nodemanager.pmem-check-enabled</name>
        <value>false</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

注:以前に構成がなかった場合は、配布して再起動する必要があります。

cd /export/servers/hadoop/etc/hadoop
scp -r yarn-site.xml root@node02:$PWD
scp -r yarn-site.xml root@node03:$PWD
关闭yarn:
/export/server/hadoop/sbin/stop-yarn.sh
打开yarn:
/export/server/hadoop/sbin/start-yarn.sh
  1. Sparkの履歴サーバーとYarnの統合を構成します
  • spark-defaults.confを変更します
进入配置目录
cd /export/servers/spark/conf

修改配置文件名称
mv spark-defaults.conf.template spark-defaults.conf

vim spark-defaults.conf
添加内容:
spark.eventLog.enabled                  true
spark.eventLog.dir                      hdfs://node01:8020/sparklog/
spark.eventLog.compress                 true
spark.yarn.historyServer.address        node01:18080
  • spark-env.shを変更します
修改配置文件
vim /export/servers/spark/conf/spark-env.sh

增加如下内容:
## 配置spark历史日志存储地址
SPARK_HISTORY_OPTS="-Dspark.history.fs.logDirectory=hdfs://node01:8020/sparklog/ -Dspark.history.fs.cleaner.enabled=true"

注意:sparklog需要手动创建
hadoop fs -mkdir -p /sparklog
  • ログレベルを変更する
进入目录
cd /export/servers/spark/conf

修改日志属性配置文件名称
mv log4j.properties.template log4j.properties

改变日志级别
vim log4j.properties

修改内容如下:

ここに画像の説明を挿入

  • 配布-オプション、ノード1のyarnにSparkタスクのみを送信する場合は、配布する必要はありません
cd /export/servers/spark/conf
scp -r spark-env.sh root@node02:$PWD
scp -r spark-env.sh root@node03:$PWD
scp -r spark-defaults.conf root@node02:$PWD
scp -r spark-defaults.conf root@node03:$PWD
scp -r log4j.properties root@node02:$PWD
scp -r log4j.properties root@node03:$PWD
  1. 依存するSparkjarパッケージを構成します
  • Spark関連のjarパッケージをHDFSに保存するためのディレクトリを作成します
    hadoop fs -mkdir -p /spark/jars/

  • $ SPARK_HOME / jarsのすべてのjarパッケージをHDFSにアップロードします
    hadoop fs -put /export/servers/spark/jars/* /spark/jars/

  • node01のspark-defaults.confを変更します

vim /export/servers/spark/conf/spark-defaults.conf
添加内容:
spark.yarn.jars  hdfs://node01:8020/spark/jars/*

分发同步-可选
cd /export/servers/spark/conf
scp -r spark-defaults.conf root@node02:$PWD
scp -r spark-defaults.conf root@node03:$PWD
  1. サービス開始
  • HDFSおよびYARNサービスを開始するには、
    node01でコマンド
    start-dfs.shstart-yarn.sh
    または
    start-all.shを実行します。

-MRHistoryServerサービスを
開始し、node01でコマンドmr-jobhistory-daemon.sh starthistoryserverを実行します。

  • Spark HistoryServerサービスを開始し、
    node01でコマンド/export/servers/spark/sbin/start-history-server.shを実行します。

  • MRHistoryServerサービスのWEBUIページ:
    http:// node01:19888


  • SparkHistoryServerサービスのWEBUIページ:http:// node01:18080 /

おすすめ

転載: blog.csdn.net/zh2475855601/article/details/114919934