Spark on Yarn集群模式搭建及测试

news2024/11/24 11:47:35

🥇🥇【大数据学习记录篇】-持续更新中~🥇🥇


点击传送:大数据学习专栏

持续更新中,感谢各位前辈朋友们支持学习~

文章目录

    • 1.Spark on Yarn集群模式介绍
    • 2.搭建环境准备
    • 3.搭建步骤

1.Spark on Yarn集群模式介绍

Apache Spark是一个快速的、通用的大数据处理框架,它支持在各种环境中进行分布式数据处理和分析。在Yarn集群模式下搭建Spark环境可以充分利用Hadoop的资源管理和调度能力。

本文将介绍如何搭建Spark on Yarn集群模式环境,步骤详细,代码量大,准备发车~
在这里插入图片描述

2.搭建环境准备

本次用到的环境有:
Java 1.8.0_191
Spark-2.2.0-bin-hadoop2.7
Hadoop 2.7.4
Oracle Linux 7.4

3.搭建步骤

1.解压Spark压缩文件至/opt目录下

tar -zxvf  ~/experiment/file/spark-2.2.0-bin-hadoop2.7.tgz  -C  /opt

在这里插入图片描述
2.修改解压后为文件名为spark

mv /opt/spark-2.2.0-bin-hadoop2.7 /opt/spark

在这里插入图片描述

3.复制spark配置文件,首先在主节点(Master)上,进入Spark安装目录下的配置文件目录{ $SPARK_HOME/conf },并复制spark-env.sh配置文件:

cd /opt/spark/conf
cp spark-env.sh.template spark-env.sh

在这里插入图片描述

4.Vim编辑器打开spark配置文件

vim spark-env.sh

在这里插入图片描述

5.按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码,注意:“=”附近无空格:

export JAVA_HOME=/usr/lib/java-1.8
export SPARK_MASTER_HOST=master
export SPARK_MASTER_PORT=7077

在这里插入图片描述

6.复制一份spark的slaves配置文件

cp slaves.template slaves

在这里插入图片描述

7.修改spark的slaves配置文件

vim slaves

在这里插入图片描述

8.每一行添加工作节点(Worker)名称,按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码

slave1
slave2

在这里插入图片描述

按键Esc,按键:wq保存退出
9.复制spark-defaults.conf

cp spark-defaults.conf.template spark-defaults.conf

在这里插入图片描述

10.通过远程scp指令将Master主节点的Spark安装包分发至各个从节点,即slave1和slave2节点

scp -r /opt/spark/ root@slave1:/opt/
scp -r /opt/spark/ root@slave2:/opt/

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

11.配置环境变量:分别在master,slave1和slave2节点上配置环境变量,修改【/etc/profile】,在文件尾部追加以下内容

vim /etc/profile

按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码

#spark install
export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

主节点(master)上执行截图,如下:
在这里插入图片描述
在这里插入图片描述

从节点1(Slave1)上执行截图,如下:
在这里插入图片描述
在这里插入图片描述

从节点2(Slave2)上执行截图,如下:
在这里插入图片描述
在这里插入图片描述

12.按键Esc,按键:wq保存退出
13.分别在Slave1和Slave2上,刷新配置文件

source /etc/profile

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

14.绑定Hadoop配置目录(在主节点),Spark搭建On YARN模式,只需修改spark-env.sh配置文件的HADOOP_CONF_DIR属性,指向Hadoop安装目录中配置文件目录,具体操作如下

vim /opt/spark/conf/spark-env.sh
export HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop

在这里插入图片描述

15.按键Esc,按键:wq保存退出
16.在主节点修改完配置文件后,一定要将【/opt/spark/conf/spark-env.sh】文件同步分发至所有从节点,命令如下

scp -r /opt/spark/conf/spark-env.sh root@slave1:/opt/spark/conf/
scp -r /opt/spark/conf/spark-env.sh root@slave2:/opt/spark/conf/

在这里插入图片描述

17.注意事项,如不修改此项,可能在提交作业时抛相关异常,Yarn的资源调用超出上限,需修在文件最后添加属性改默认校验属性,修改文件为
{HADOOP_HOME/etc/hadoop}/yarn-site.xml

vim /opt/hadoop/etc/hadoop/yarn-site.xml
<property>
	<name>yarn.nodemanager.pmem-check-enabled</name>
	<value>false</value>
</property>
<property>
	<name>yarn.nodemanager.vmem-check-enabled</name>
	<value>false</value>
</property>

在这里插入图片描述

18.修改完成后分发至集群其它节点:

scp /opt/hadoop/etc/hadoop/yarn-site.xml root@slave1:/opt/hadoop/etc/hadoop/
scp /opt/hadoop/etc/hadoop/yarn-site.xml root@slave2:/opt/hadoop/etc/hadoop/

在这里插入图片描述

19.开启Hadoop集群,在开启Spark On Yarn集群之前必须首先开启Hadoop集群,指令如下:

start-dfs.sh
start-yarn.sh

在这里插入图片描述

20.开启spark shell会话

spark-shell --master yarn-client

在这里插入图片描述

21.查看三台节点的后台守护进程

jps

在这里插入图片描述

22.查看查看WebUI界面,应用提交后,进入Hadoop的Yarn资源调度页面http://master:8088,查看应用的运行情况,如图所示
在这里插入图片描述

所有配置完成,如果本篇文章对你有帮助,记得点赞关注+收藏哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/922955.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为USG防火墙登录提示:登录失败,可能的原因时账户被锁定

问题&#xff1a; 密码是正确的&#xff0c;但是华为USG6305E 防火墙登录提示&#xff1a;登录失败&#xff0c;可能的原因时账户被锁定 解决办法&#xff1a; 清楚浏览器所有的缓存&#xff0c;重启浏览器后再登录&#xff0c;正常可以登录

创建导航卡 “系统管理_导航卡_Demo”

前言 apex和pl/sql要学的东西还有很多&#xff0c;一次性放在一个里面老是找不着&#xff0c;细分一下单独说&#xff0c;也方便复习。 创建导航卡“系统管理_导航卡_Demo” 1.创建列表 创建成功 点开还可以继续修改&#xff0c;设置图标 2 创建导航页面 Step 1创建空白页面…

Visual Studio中Linux开发头文件intellisense问题的解决办法

文章目录 前言个人环境 SSH到WSL复制文件后记 前言 最近在用我心爱的Visual Studio配合WSL2做一些Linux开发&#xff0c;但是有一个问题&#xff0c;就是当我#include <sys/socket.h>&#xff0c;会提示找不到文件 我尝试了各种姿势&#xff0c;包括修改CMakeSettings.…

Linux 多线程解决客户端与服务器端通信

一、一个服务器端只能和一个客户端进行通信&#xff08;单线程模式&#xff09; 客户端代码ser.c如下&#xff1a; #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<sys/socket.h> #include<netinet…

美国商务签证拒签了怎么办?

当面临美国商务签证被拒签的情况时&#xff0c;许多申请人可能会感到失望和困惑。然而&#xff0c;拒签并不意味着绝望&#xff0c;您仍然有一些选项可以考虑。以下是知识人网小编的一些建议&#xff0c;希望能对您有所帮助&#xff1a; 1.查明拒签原因&#xff1a;首先&#x…

vue中使用echarts三维的项目

需要安装 echarts 同时引入 echarts-gl 我安装的版本&#xff1a; "echarts": "^5.3.2", "echarts-gl": "^2.0.9", 效果 &#xff1a; 安装后main.js引入 import Vue from "vue"; import * as echarts from "echart…

八月更新 | CI 构建计划触发机制升级、制品扫描 SBOM 分析功能上线!

点击链接了解详情 这个八月&#xff0c;腾讯云 CODING DevOps 对持续集成、制品管理、项目协同、平台权限等多个产品模块进行了升级改进&#xff0c;为用户提供更灵活便捷的使用体验。以下是 CODING 新功能速递&#xff0c;快来看看是否有您期待已久的功能特性&#xff1a; 01…

人工智能与机器学习Pytorch手写数字识别-MINIST数据集识别篇

上期文章,我们分享了Pytorch手写数字的训练,当pytorch训练完成后,保存了训练的参数,方便本期使用预训练参数,进行手写数字的识别,我们准备一个手写数字的图片,可以自己在画图软件中,直接写个数字 手写数字 1、导入第三方库 导入第三方库 2、建立神经网络 神经网络的…

如何保护自己知识产权,建立代码护城河——建立自己的静态库,x86和arm平台的实例讲解

前言 &#xff08;1&#xff09;想象一下&#xff0c;假如我们幸幸苦苦写了一个封装库代码&#xff0c;为了建立护城河&#xff0c;我们企业不愿意把真实的代码提供给用户。怕客户拿了代码&#xff0c;这个合同结束&#xff0c;稍微改一点点&#xff0c;就盗用我们的技术&#…

四信桥梁监测解决方案

方案背景 随着我国经济水平的快速发展,桥梁作为交通运输的重要组成节点&#xff0c;其设计结构、耐久性和使用年限以及维护管理等安全状况一直是公众关心的问题。由于对桥梁运营状态下产生结构问题不能及时发现&#xff0c;近年来桥梁事故屡见不鲜&#xff0c;传播迅速&#x…

MinIO【部署 01】MinIO安装及SpringBoot集成简单测试

MinIO安装及SpringBoot集成测试 1.下载安装1.1 Install the MinIO Server1.2 Launch the MinIO Server1.3 Connect Your Browser to the MinIO Server 2.SpringBoot集成2.1 依赖及配置2.2 代码2.3 测试结果 1.下载安装 下载 https://min.io/download#/linux&#xff1b; 安装文…

Map和Set—数据结构

文章目录 1.搜索1.1常见搜索方式1.2模型 2.map2.1介绍2.2 Map.Entry<K, V>2.3map的使用2.4遍历map2.5TreeMap和HashMap的区别 3.set3.1介绍3.2set的使用3.3遍历set3.4 TreeSet和HashSet的不同 4.搜索树4.1概念4.2实现4.3性能分析 5.哈希表5.1查找数据5.2冲突的概念5.3冲突…

一个新的品牌如何快速做好品牌宣传?媒介盒子有绝招

互联网快速发展的今天&#xff0c;大量信息进入人们的生活&#xff0c;只要有流量就将成为广告的渠道。今天这里提到的是新品牌&#xff0c;相比较而言又具有一定的特殊性。 新品牌可能是一个创业公司&#xff0c;刚刚研发出来的品牌&#xff0c;想要冲进这个信息化的市场&…

libjpeg实践1:源码编译和MJPG转BMP测试:

编译源码 下载源码 http://www.ijg.org/files/ wget http://www.ijg.org/files/jpegsrc.v9b.tar.gz解压&#xff1a; tar zxvf jpegsrc.v9b.tar.gz 开始配置和编译&#xff0c;因为是在ubuntu中测试。所以配置很简单 ./configure --prefix/home/lkmao/linux/3588-linux/…

SpringBoot 2.7 集成 Netty 4 解决粘包半包问题

文章目录 1 摘要2 核心代码2.1 Netty 服务端连接器2.2 Netty 客户端连接器2.3 Netty 服务端 Handler2.4 Netty 客户端 Handler 3 推荐参考资料4 Github 源码 1 摘要 Netty 的粘包和半包问题是由于 Netty 在接收消息时无法判断消息是否发送完毕&#xff0c;只能靠读取消息时是否…

每天一分享#读up有感#

不知道开头怎么写&#xff0c;想了一下&#xff0c;要不&#xff0c;就这样吧&#xff0c;开头也就写完 今日分享 分享一博主的分享——https://blog.csdn.net/zhangay1998/article/details/121736687 全程高能&#xff0c;大佬就diao&#xff0c;一鸣惊人、才能卓越、名扬四…

算法通关村十二关 | 字符串前缀问题

1. 最长公共前缀 题目&#xff1a;LeetCode14&#xff0c;14. 最长公共前缀 - 力扣&#xff08;LeetCode&#xff09; 思路一 我们先看公共前缀有什么特点。 第一种方式&#xff0c;竖着比较&#xff0c;如图左边所示&#xff0c;选取数组中第一个字符串的位置&#xff0c;每…

platform相关资料

Step 1: Hardware Settings for Vitis Platform — Vitis™ Tutorials 2021.2 documentationhttps://xilinx.github.io/Vitis-Tutorials/2021-2/build/html/docs/Vitis_Platform_Creation/Introduction/03_Edge_VCK190/step1.html https://www.cnblogs.com/VagueCheung/p/1313…

Tensoeboard的一些坑与技巧

安装 pip install tensorboard 安装过程中遇到tensoeboard.exe找不到&#xff0c;参考解决&#xff1a; https://blog.csdn.net/weixin_44532467/article/details/123525891 3.启动tensorboard 默认路径 &#xff08;&#xff09; tensorboard --logdir logstensorboard -…

淘宝API技术解析,实现获得淘宝APP商品详情原数据

淘宝API&#xff08;Application Programming Interface&#xff09;是为开发者提供的一组接口&#xff0c;用于与淘宝平台进行数据交互。通过使用淘宝API&#xff0c;开发者可以获得淘宝平台上商品、店铺、订单等各种数据&#xff0c;并进行相应的业务操作。 要实现获取淘宝A…