Spark高可用集群搭建

Spark高可用集群介绍

Spark高可用集群是基于ZooKeeper的。
在这里插入图片描述
spark的主备切换过程需要做哪些工作?
 ①、zookeeper将备用master的状态更改为alive。
 ②、备用master从zookeeper拉取元数据。
 ③、备用master向worker节点发送信息,通知已经更换了master。

master主备切换过程中,能不能提交一个新的Application?
不能,因为此时旧的master已经挂掉了,而新的master还没准备好(RECOVER)。

如果已经有一个Application已经在集群中运行了,那么此时进行主备切换,对这个Application有没有影响?
没有影响,spark是粗粒度的资源调度,在任务运行之前已经找master为Application申请好资源了,Application运行时已经不需要master了。

Spark高可用集群搭建

高可用的spark集群与spark集群的搭建很相似,只是修改一个配置文件。以下步骤是在已经搭建好Spark集群的情况下操作的:

1.进入spark安装包的conf目录下,修改spark-env.sh文件。

SPARK_MASTER_IP=node01
SPARK_MASTER_PORT=7077
SPARK_WORKER_CORES=3
SPARK_WORKER_MEMORY=2g
SPARK_WORKER_DIR=/opt/software/spark/spark-1.6.3/work
SPARK_WORKER_INSTANCES=1
SPARK_MASTER_WEBUI_PORT=8888

SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=node02:2181,node03:2181,node04:2181 -Dspark.deploy.zookeeper.dir=/spark-1106"

2.把配置好的spark-env.sh推送到其他节点。

scp -r spark-env.sh node02:`pwd`
scp -r spark-env.sh node03:`pwd`
scp -r spark-env.sh node04:`pwd`

3.选择node02作为备用master节点,在node02节点把SPARK_MASTER_IP的值改为node02

4.在node02,node03,node04节点分别启动zookeeper
在这里插入图片描述

5.在node01启动spark集群
在这里插入图片描述

6.在node02的spark的sbin目录下启动备用master
在这里插入图片描述

7.访问 http://node01:8888/ 可以查看Active Master节点WEBUI界面,访问 http://node02:8888/ 可以查看Standby Master节点的WEBUI界面

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要搭建Spark高可用性(HA),你需要按照以下步骤进行操作: 1. 首先,确保你已经完成了Hadoop集群的搭建和配置准备工作\[2\]。 2. 下载并解压Spark的二进制包\[3\]。你可以使用以下命令进行下载和解压: ``` # cd /opt # wget https://www.apache.org/dyn/closer.lua/spark/spark-3.1.2/spark-3.1.2-bin-hadoop2.7.tgz # tar -zxvf spark-3.1.2-bin-hadoop2.7.tgz # mv spark-3.1.2-bin-hadoop2.7 spark ``` 3. 配置环境变量,将Spark添加到系统的PATH中。你可以使用以下命令编辑`/etc/profile`文件: ``` # vi /etc/profile ``` 在文件的末尾添加以下内容: ``` export SPARK_HOME=/opt/spark export PATH=$PATH:$SPARK_HOME/bin ``` 保存并退出文件,然后执行以下命令使环境变量生效: ``` # source /etc/profile ``` 4. 配置Spark高可用性。你需要编辑Spark的配置文件`spark-defaults.conf`,将以下内容添加到文件中: ``` spark.master spark://hadoop01:7077 spark.eventLog.enabled true spark.eventLog.dir hdfs://hadoop01:8021/directory spark.serializer org.apache.spark.serializer.KryoSerializer spark.driver.memory 5g spark.executor.extraJavaOptions -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three" ``` 请确保将`hadoop01`替换为你的Hadoop集群的主节点的主机名或IP地址。 5. 完成以上步骤后,你就成功搭建了Spark高可用性。 请注意,以上步骤仅涵盖了Spark高可用性的基本配置,具体的配置可能因你的环境和需求而有所不同。你可以参考Spark官方文档或其他相关资源获取更详细的配置信息和指导。 #### 引用[.reference_title] - *1* *3* [Spark高可用集群搭建](https://blog.csdn.net/Ennis_Tongji/article/details/119825855)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [第十一章 搭建Spark高可用(HA)](https://blog.csdn.net/qq_49101550/article/details/122932494)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值