Spark的体系结构和安装配置
程序员文章站
2022-07-03 11:46:40
Spark体系结构
1、体系结构:Client-Server(主从模式) ----> 单点故障:HA(ZooKeeper)
安装和部署
准备工作:安装...
Spark体系结构
1、体系结构:Client-Server(主从模式) ----> 单点故障:HA(ZooKeeper)
安装和部署
准备工作:安装Linux、JDK、主机名、免密码登录 standalone tar -zxvf spark-2.1.0-bin-hadoop2.7.tgz -C ~/training/ 注意:hadoop和spark命令脚本有冲突,只能设置一个 核心配置文件:spark-env.sh *)伪分布模式: bigdata11机器 spark-env.sh export JAVA_HOME=/root/training/jdk1.8.0_144 export SPARK_MASTER_HOST=bigdata11 export SPARK_MASTER_PORT=7077 slave文件: bigdata11 启动:sbin/start-all.sh Web Console: http://ip:8080 (内置了一个tomcat) (*)全分布模式: bigdata12 bigdata13 bigdata14 (1)在主节点上进行安装 spark-env.sh export JAVA_HOME=/root/training/jdk1.8.0_144 export SPARK_MASTER_HOST=bigdata12 export SPARK_MASTER_PORT=7077 slave文件: bigdata13 bigdata14 (2) 复制到从节点上 scp -r spark-2.1.0-bin-hadoop2.7/ root@bigdata13:/root/training scp -r spark-2.1.0-bin-hadoop2.7/ root@bigdata14:/root/training (3) 在主节点上启动 启动:sbin/start-all.sh Web Console: http://ip:8080 (内置了一个tomcat) 3、Spark的HA实现:两种方式 (1)基于文件系统的单点故障恢复:只有一个主节点、只能用于开发测试 (*)特点:把Spark的运行信息写入到一个本地的恢复目录 如果Master死掉了,恢复master的时候从恢复目录上读取之前的信息 需要人为重启 (*)Spark的运行信息 Spark Application和Worker的注册信息 (*)配置: (a)创建目录:mkdir /root/training/spark-2.1.0-bin-hadoop2.7/recovery (b)参数: spark.deploy.recoveryMode:取值:默认NONE--> 没有开启HA FILESYSTEM ---> 基于文件系统的单点故障恢复 ZOOKEEPER ---> 基于ZooKeeper实现Standby的Master spark.deploy.recoveryDirectory: 恢复目录 (c)修改spark-env.sh 增加:export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=FILESYSTEM -Dspark.deploy.recoveryDirectory=/root/training/spark-2.1.0-bin-hadoop2.7/recovery" (*)测试:启动spark-shell bin/spark-shell --master spark://bigdata12:7077 sbin/stop-master.sh 日志 scala> 18/02/09 00:40:42 WARN StandaloneAppClient$ClientEndpoint: Connection to bigdata12:7077 failed; waiting for master to reconnect... 18/02/09 00:40:42 WARN StandaloneSchedulerBackend: Disconnected from Spark cluster! Waiting for reconnection... 18/02/09 00:40:42 WARN StandaloneAppClient$ClientEndpoint: Connection to bigdata12:7077 failed; waiting for master to reconnect... 重新启动master (2)基于ZooKeeper实现Standby的Master (*)复习:相当于是一个“数据库” 角色:leader、follower 功能:选举、数据同步、分布式锁(秒杀功能) (*)原理 (*)参数 spark.deploy.recoveryMode 设置为ZOOKEEPER开启单点恢复功能,默认值:NONE spark.deploy.zookeeper.url ZooKeeper集群的地址 spark.deploy.zookeeper.dir Spark信息在ZK中的保存目录,默认:/spark (*)修改spark-env.sh export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=bigdata12:2181,bigdata13:2181,bigdata14:2181 -Dspark.deploy.zookeeper.dir=/spark" 另外,每个节点上,需要将以下两行注释掉 #export SPARK_MASTER_HOST=spark82 #export SPARK_MASTER_PORT=7077 (*)测试 bigdata12: sbin/start-all.sh bigdata13(14):手动启动一个master sbin/start-master.sh
上一篇: 浅谈java15新特性
下一篇: 浅谈网站排名和文章的逻辑关系