spark集群完全分布式搭建

1.spark的运行架构(主从模式)

主节点:master-----资源管理调度和任务的分配---------类似yarn

从节点:worker-----执行具体的计算任务

整体运行架构:

  • 编写spark运行程序
  • 用户将应用程序提交给spark集群
  • 驱动其会创建对应的编程入口(sparkcontext/sparksession)
  • 主节点复制资源管理调度和任务分配
  •  从节点执行计算任务(多个计算任务:每个计算任务会分配一个执行器)
  • 返回驱动器

1.配置spark-env.sh(cd /opt/module/spark-3.5.0/conf/)

export JAVA_HAME=$JAVA_HOME
 #添加hadoop环境变量
export HADOOP_HOME=$HADOOP_HOME
 # 添加hadoop文件所在的路径
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
#设置spark集群de主节点的IP或主机名
export SPARK_MASTER_IP=192.168.205.129
#设置spark集群主节点进程部署的端口号
export SPARK_MASTER_PORT=7077
# 设置spark的worker节点的内存
export SPARK_WORKER_MEMORY=1g
#设置spark集群worker节点的内核数
export SPARK_WORKER_CORES=2
#设置spark集群的执行器内存
export SPARK_EXECUTOR_MEMORY=1G
##设置spark集群的执行器的内核数
export SPARK_EXECUTOR_CORES=2

主节点IP,主机名端口号必须配置 

2.配置 workers(删除localhost)

master
slave1
slave2

 3.向slave1和slave2穿spark文件

scp -r spark-3.5.0 slave1:/opt/module/
scp -r spark-3.5.0 slave2:/opt/module/

 4.配置spark-defaults.conf(在UI界面下建立目录spark-logs)

Example:
spark.master                     spark://master:7077
#启用日志记录功能
spark.eventLog.enabled           true
#日志存放目录
spark.eventLog.dir               hdfs://master:8020/spark-logs
spark.serializer                 org.apache.spark.serializer.KryoSerializer
spark.driver.memory              5g
spark.executor.extraJavaOptions  -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"

5.启动spark

start-master.sh
start-workers.sh

如果无法开启可是尝试绝对路径

6.启动单机模式

spark-shell

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值