返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >Spark大数据处理学习笔记(2.2)搭建Spark Standalone集群
  • 285
分享到

Spark大数据处理学习笔记(2.2)搭建Spark Standalone集群

spark学习笔记 2023-09-27 19:09:28 285人浏览 八月长安
摘要

一、在master虚拟机上安装配置spark 1.1 将spark安装包上传到master虚拟机 下载Spark:pyw2 进入/opt目录,查看上传的spark安装包 2 将spark安装包解压到

一、在master虚拟机上安装配置spark
1.1 将spark安装包上传到master虚拟机
下载Spark:pyw2
进入/opt目录,查看上传的spark安装包
在这里插入图片描述

2 将spark安装包解压到指定目录
执行命令: tar -zxvf spark-3.3.2-bin-hadoop3.tgz
在这里插入图片描述

修改文件名:mv spark-3.3.2-bin-hadoop3 spark-3.3.2
在这里插入图片描述

3 配置spark环境变量
执行命令:vim /etc/profile
在这里插入图片描述

export SPARK_HOME=/opt/spark-3.3.2export PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH

存盘退出后,执行命令:source /etc/profile,让配置生效
在这里插入图片描述

查看spark安装目录(bin、sbin和conf三个目录很重要)
在这里插入图片描述

4 编辑spark环境配置文件
进入spark配置目录后,执行命令:cp spark-env.sh.template spark-env.sh与vim spark-env.sh
在这里插入图片描述

添加三行语句
在这里插入图片描述

export JAVA_HOME=/usr/java/jdk1.8.0_333-amd64export SPARK_MASTER_HOST=masterexport SPARK_MASTER_PORT=7077

存盘退出,执行命令:source spark-env.sh,让配置生效
在这里插入图片描述

5 创建slaves文件,添加从节点
执行命令:vim slaves,添加两个从节点主机名
在这里插入图片描述

二、在slave1虚拟机上安装配置Spark
2.1 把master虚拟机上安装的spark分发给slave1虚拟机
执行命令:scp -r S P A R KH O M E r o o t @ s l a v e 1 : SPARK_HOME root@slave1: SPARKHOMEroot@slave1:SPARK_HOME
在这里插入图片描述

2 将master虚拟机上环境变量配置文件分发到slave1虚拟机
在master虚拟机上,执行命令:scp /etc/profile root@slave1:/etc/profile

在这里插入图片描述

在slave1虚拟机上,执行命令:source /etc/profile,让环境配置生效

在这里插入图片描述

3 在slave1虚拟机上让spark环境配置文件生效
在slave1虚拟机上,进入spark配置目录,执行命令:source spark-env.sh
在这里插入图片描述

三、在slave2虚拟机上安装配置Spark
3.1 把master虚拟机上安装的spark分发给slave2虚拟机
执行命令:scp -r S P A R KH O M E r o o t @ s l a v e 2 : SPARK_HOME root@slave2: SPARKHOMEroot@slave2:SPARK_HOME
在这里插入图片描述

2 把master虚拟机上环境变量配置文件分发到slave2虚拟机
在master虚拟机上,执行命令:scp /etc/profile root@slave2:/etc/profile
在这里插入图片描述

在slave2虚拟机上,执行命令:source /etc/profile,让环境配置生效

在这里插入图片描述

3 在slave2虚拟机上让spark环境配置文件生效
在slave2虚拟机上,进入spark配置目录,执行命令:source spark-env.sh

在这里插入图片描述
四、启动Spark Standalone集群
4.1 启动hadoop的dfs服务
在master虚拟机上执行命令:start-dfs.sh
在这里插入图片描述

2 启动Spark集群
执行命令:start-all.sh
在这里插入图片描述

五、访问Spark的WEBUI
在浏览器里访问Http://master:8080
在这里插入图片描述

在浏览器访问http://slave1:8081
在这里插入图片描述

在浏览器访问http://slave2:8081
在这里插入图片描述

六、启动Scala版Spark shell
执行命令:spark-shell --master spark://master:7077 (注意–master,两个-不能少)
在这里插入图片描述

在/opt目录里执行命令:vim test.txt

在这里插入图片描述
在这里插入图片描述

hdfs上创建park目录,将test.txt上传到HDFS的/park目录
在这里插入图片描述

读取HDFS上的文件,创建RDD,执行命令:val rdd = sc.textFile(“hdfs://master:9000/park/test.txt”)(说明:val rdd = sc.textFile(“/park/test.txt”)读取的依然是HDFS上的文件,绝对不是本地文件)
在这里插入图片描述

收集rdd的数据,执行命令:rdd.collect
在这里插入图片描述

进行词频统计,按单词个数降序排列,执行命令:val Wordcount = rdd.flatMap(.split(" ")).map((, 1)).reduceByKey(_ + ).sortBy(._2, false)与wordcount.collect.foreach(println)
在这里插入图片描述

七、提交Spark应用程序
7.1 提交语法格式
Spark提供了一个客户端应用程序提交工具spark-submit,使用该工具可以将编写好的Spark应用程序提交到Spark集群。
spark-submit的使用格式如下:$ bin/spark-submit [options] [app options]
options表示传递给spark-submit的控制参数;
app jar表示提交的程序JAR包(或python脚本文件)所在位置;
app options表示jar程序需要传递的参数,例如main()方法中需要传递的参数。
7.2 spark-submit常用参数
除了–master参数外,spark-submit还提供了一些控制资源使用和运行时环境的参数。
在这里插入图片描述

3 案例演示 - 提交Spark自带的圆周率计算程序
进入Spark安装目录
在这里插入图片描述
(1)Standalone模式,采用client提交方式
执行下述命令,将Spark自带的求圆周率的程序提交到集群

bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ --master spark://master:7077 \ ./examples/jars/spark-examples_2.12-3.3.2.jar 

在这里插入图片描述

(2)Standalone模式,采用cluster提交方式

bin/spark-submit \--master spark://master:7077 \--deploy-mode cluster \--class org.apache.spark.examples.SparkPi \--driver-memory 512m \--executor-memory 1g \--executor-cores 2 \./examples/jars/spark-examples_2.12-3.3.2.jar

执行命令后,看到State of driver-20230406114733-0000 is RUNNING,就表明运行成功~,否则会显示State of driver-20230406114733-0000 is FAILED
在这里插入图片描述

在Spark WebUI界面上查看运行结果,访问http://master:8080
在这里插入图片描述

单击圈红的Worker超链接 - worker-20230406114652-192.168.1.102-36708
在这里插入图片描述

单击stdout超链接,可以查看到Pi的计算结果

在这里插入图片描述

八、停止Spark集群服务
在master节点执行命令:stop-all.sh

来源地址:https://blog.csdn.net/Python_XTyyds/article/details/131206039

--结束END--

本文标题: Spark大数据处理学习笔记(2.2)搭建Spark Standalone集群

本文链接: https://lsjlt.com/news/420037.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作