六十二、Spark-Standlone独立集群(上传HDFS进行测试)

简介: Spark官网:(https://spark.apache.org/)

20.png

环境配置


主机名 master slave1 slave2
类型 master slave slave
角色
master

worker

worker

一、解压更名


       1、解压Scala


tar -zxvf scala-2.11.8.tgz -C /usr/local/

       2、重命名


mv scala-2.11.8 scala

       3、解压Spark


tar -zxvf spark-2.0.0-bin-hadoop2.7.tgz -C /usr/local

       4、重命名Spark


mv spark-2.0.0-bin-hadoop2.7 spark


二、配置环境变量


     

1、添加环境变量


vi /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_221
export PATH=$PATH:$JAVA_HOME/bin
export SCALA_HOME=/usr/local/scala
export PATH=$PATH:$SCALA_HOME/bin
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

       2、使环境变量立即生效


source /etc/profile


三、配置Spark参数


     

1、配置slaves/workers


cd /usr/local/spark/conf

       2、修改配置文件名称


mv slaves.template slaves

       3、编辑slaves文件


vim slaves
slave1
slave2

       4、修改配置文件名称


mv spark-env.sh.template spark-env.sh

       5、编辑配置文件


vim spark-env.sh
## 设置JAVA安装目录
JAVA_HOME=/usr/local/jdk1.8.0_221
## HADOOP软件配置文件目录,读取HDFS上文件和运行Spark在YARN集群时需要,先提前配上
HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
YARN_CONF_DIR=/usr/local/hadoop/etc/hadoop
## 指定spark老大Master的IP和提交任务的通信端口
SPARK_MASTER_HOST=master
SPARK_MASTER_PORT=7077
SPARK_MASTER_WEBUI_PORT=8080
SPARK_WORKER_CORES=1
SPARK_WORKER_MEMORY=1g

       6、集群分发


scp -r /usr/local/spark/ slave1:/usr/local/
scp -r /usr/local/spark/ slave2:/usr/local/


四、环境测试


       1、启动Spark集群


sbin/start-all.sh

       2、jps查看进程


21.png


       注:前置Hadoop集群已经启动


       3、查看WebUI


22.png


       注:此时状态为活跃状态



五、提交任务


       1、启动spark-shell


23.png


       2、提交WordCount任务


A、创建wordcount.txt文件


vim wordcount.txt

24.png


B、上传文件到 hdfs 方便 worker 读取


hadoop fs -put /input/wordcount.txt /input/wordcount.txt

C、hdfs 查看


25.png


D、提交任务


val textFile = sc.textFile("hdfs://master:8020/input/wordcount.txt")
val counts = textFile.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _)
counts.collect
counts.saveAsTextFile("hdfs://master:8020/output/output1")

26.png


六、结果查看


master:50070

27.png

        注:将运行结果保存在 hdfs



七、查看spark任务web-ui



         
master:4040

28.png

八、停止集群



sbin/stop-all.sh

29.png


☆☆☆standalone模式下的模块架构☆☆☆


Client 客户端进程,负责提交作业到Master

Client就是我们的客户端,例如我们在windows上通过 idea 编写Scala程序向Spark提交作业,那么我们的Client就是 idea

Master Standalone模式中主节点,负责接收Client提交的作业,管理Worker,并命令Worker启动Driver和Executor。

Master在这里就相当于一个公司的包工头,负责接收Client提交上来的作业,然后管理Worker。

Worker Standalone模式中的从节点,负责管理本节点的资源,定期向Master汇报心跳,接受Master的命令,启动Driver和Executor。


相关文章
|
4小时前
|
分布式计算 监控 Java
Note_Spark_Day02:Standalone集群模式和使用IDEA开发应用程序
Note_Spark_Day02:Standalone集群模式和使用IDEA开发应用程序
52 0
|
4小时前
|
SQL 关系型数据库 MySQL
Hive【基础知识 02-1】【Hive CLI 命令行工具使用】【准备阶段-建库、建表、导入数据、编写测试SQL脚本并上传HDFS】
【4月更文挑战第7天】Hive【基础知识 02-1】【Hive CLI 命令行工具使用】【准备阶段-建库、建表、导入数据、编写测试SQL脚本并上传HDFS】
27 0
|
4小时前
|
分布式计算 Hadoop 测试技术
Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
【4月更文挑战第5天】Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
47 8
|
4小时前
|
分布式计算 资源调度 Hadoop
Hadoop【基础知识 03+04】【Hadoop集群资源管理器yarn】(图片来源于网络)(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第5天】Hadoop【基础知识 03】【Hadoop集群资源管理器yarn】(图片来源于网络)Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
55 9
|
4小时前
|
分布式计算 资源调度 Hadoop
Hadoop集群基本测试
Hadoop集群基本测试
30 0
|
4小时前
|
分布式计算 数据处理 Scala
Spark 集群和 Scala 编程语言的关系
Spark 集群和 Scala 编程语言的关系
34 0
|
4小时前
|
SQL 分布式计算 Hadoop
[AIGC ~大数据] 深入理解Hadoop、HDFS、Hive和Spark:Java大师的大数据研究之旅
[AIGC ~大数据] 深入理解Hadoop、HDFS、Hive和Spark:Java大师的大数据研究之旅
|
4小时前
|
NoSQL 测试技术 Redis
Redis【性能 02】Redis-5.0.14伪集群和Docker集群搭建及延迟和性能测试(均无法提升性能)
Redis【性能 02】Redis-5.0.14伪集群和Docker集群搭建及延迟和性能测试(均无法提升性能)
162 0
|
4小时前
|
分布式计算 Hadoop 数据安全/隐私保护
HDFS--HA部署安装:修改配置文件 测试集群工作状态的一些指令
HDFS--HA部署安装:修改配置文件 测试集群工作状态的一些指令
46 0
|
4小时前
|
分布式计算 Hadoop 大数据
大数据成长之路-- hadoop集群的部署(3)HDFS新增节点
大数据成长之路-- hadoop集群的部署(3)HDFS新增节点
81 0

热门文章

最新文章