中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spark+Zookeeper怎么搭建高可用Spark集群

發布時間:2021-12-10 18:50:12 來源:億速云 閱讀:250 作者:柒染 欄目:大數據

這篇文章給大家介紹Spark+Zookeeper怎么搭建高可用Spark集群,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

Spark三種分布式部署方式比較

目前Apache Spark支持三種分布式部署方式,分別是standalone、spark on mesos和 spark on YARN,詳情參考。

Spark standalone模式分布式部署

Spark+Zookeeper怎么搭建高可用Spark集群

環境介紹

主機名應用
tvm11zookeeper
tvm12zookeeper
tvm13zookeeper、spark(master)、spark(slave)、Scala
tvm14spark(backup)、spark(slave)、Scala
tvm15spark(slave)、Scala

說明

  • 依賴scala:

    Note that support for Java 7, Python 2.6 and old Hadoop versions before 2.6.5 were removed as of Spark 2.2.0. Support for Scala 2.10 was removed as of 2.3.0. Support for Scala 2.11 is deprecated as of Spark 2.4.1 and will be removed in Spark 3.0.

  • zookeeper: Master結點存在單點故障,所以要借助zookeeper,至少啟動兩臺Master結點來實現高可用,配置方案比較簡單。

安裝scala

由上面的說明可知,spark對scala版本依賴較為嚴格,spark-2.4.5依賴scala-2.12.x,所以首先要安裝scala-2.12.x,在此選用scala-2.12.10。使用二進制安裝:

  • 下載安裝包

  • 解壓即用。

$ wget https://downloads.lightbend.com/scala/2.12.10/scala-2.12.10.tgz
$ tar zxvf scala-2.12.10.tgz -C /path/to/scala_install_dir

如果系統環境也要使用相同版本的scala,可以將其加入到用戶環境變量(.bashrc或.bash_profile)。

安裝spark

  • 打通三臺spark機器的work用戶ssh通道;

  • 現在安裝包到master機器:tvm13;

  • 下載地址

  • 注意提示信息,及Hadoop版本(與已有環境匹配,如果不匹配則選非預編譯的版本自己編譯)。

Spark+Zookeeper怎么搭建高可用Spark集群

  • 解壓到安裝目錄即可。

配置spark

spark服務配置文件主要有兩個:spark-env.sh和slaves。

  • spark-evn.sh:配置spark運行相關環境變量

  • slaves:指定worker服務器

配置spark-env.sh:cp spark-env.sh.template spark-env.sh

export JAVA_HOME=/data/template/j/java/jdk1.8.0_201
export SCALA_HOME=/data/template/s/scala/scala-2.12.10
export SPARK_WORKER_MEMORY=2048m
export SPARK_WORKER_CORES=2
export SPARK_WORKER_INSTANCES=2
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=tvm11:2181,tvm12:2181,tvm13:2181 -Dspark.deploy.zookeeper.dir=/data/template/s/spark"

# 關于 SPARK_DAEMON_JAVA_OPTS 參數含義:
	# -Dspark.deploy.recoverMode=ZOOKEEPER #代表發生故障使用zookeeper服務
	# -Dspark.depoly.zookeeper.url=master.hadoop,slave1.hadoop,slave1.hadoop #主機名的名字
	# -Dspark.deploy.zookeeper.dir=/spark #spark要在zookeeper上寫數據時的保存目錄

# 其他參數含義:https://blog.csdn.net/u010199356/article/details/89056304

配置slaves:cp slaves.template slaves

# A Spark Worker will be started on each of the machines listed below.
tvm13
tvm14
tvm15

配置 spark-default.sh ,主要用于spark執行任務(可以命令行動態指定):

# http://spark.apache.org/docs/latest/configuration.html#configuring-logging
# spark-defaults.sh
spark.app.name                                YunTuSpark
spark.driver.cores                            2
spark.driver.memory                           2g
spark.master                                  spark://tvm13:7077,tvm14:7077
spark.eventLog.enabled                        true
spark.eventLog.dir                            hdfs://cluster01/tmp/event/logs 
spark.serializer                              org.apache.spark.serializer.KryoSerializer
spark.serializer.objectStreamReset            100
spark.executor.logs.rolling.time.interval     daily
spark.executor.logs.rolling.maxRetainedFiles  30
spark.ui.enabled                              true
spark.ui.killEnabled                          true
spark.ui.liveUpdate.period                    100ms
spark.ui.liveUpdate.minFlushPeriod            3s
spark.ui.port                                 4040
spark.history.ui.port                         18080
spark.ui.retainedJobs                         100
spark.ui.retainedStages                       100
spark.ui.retainedTasks                        1000
spark.ui.showConsoleProgress                  true
spark.worker.ui.retainedExecutors             100
spark.worker.ui.retainedDrivers               100
spark.sql.ui.retainedExecutions               100
spark.streaming.ui.retainedBatches            100
spark.ui.retainedDeadExecutors                100
# spark.executor.extraJavaOptions  -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"

hdfs資源準備

因為 spark.eventLog.dir 指定為hdfs存儲,所以需要在hdfs預先創建相應的目錄文件:

hdfs dfs -mkdir -p hdfs://cluster01/tmp/event/logs

配置系統環境變量

編輯 ~/.bashrc

export SPARK_HOME=/data/template/s/spark/spark-2.4.5-bin-hadoop2.7
export PATH=$SPARK_HOME/bin/:$PATH

分發

以上配置完成后,將 /path/to/spark-2.4.5-bin-hadoop2.7 分發至各個slave節點,并配置各個節點的環境變量。

啟動

  • 先在master節點啟動所有服務:./sbin/start-all.sh

  • 然后在backup節點單獨啟動master服務:./sbin/start-master.sh

查看狀態

啟動完成后到web去查看:

  • master(8081端口):Status: ALIVE Spark+Zookeeper怎么搭建高可用Spark集群

  • backup(8080端口):Status: STANDBY Spark+Zookeeper怎么搭建高可用Spark集群

完成!

關于Spark+Zookeeper怎么搭建高可用Spark集群就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

津市市| 两当县| 清河县| 泸西县| 崇礼县| 金塔县| 宁陵县| 岳阳县| 莫力| 罗江县| 榆树市| 耿马| 安丘市| 绍兴县| 梁河县| 呼和浩特市| 汉源县| 清水河县| 延津县| 色达县| 曲阳县| 寿宁县| 重庆市| 萨嘎县| 察雅县| 安西县| 巴塘县| 九江县| 长兴县| 三明市| 二手房| 马公市| 津市市| 宿迁市| 裕民县| 邛崃市| 江山市| 资源县| 镇沅| 闽清县| 蓬安县|