11.Linux下Spark的安装配置以及spark-shell的启动和 Spark集群环境搭建

2023-11-16

本案例软件包:链接:https://pan.baidu.com/s/1zABhjj2umontXe2CYBW_DQ 
提取码:1123(若链接失效在下面评论,我会及时更新).

目录

(1)安装Spark

1.先用xftp将安装包传到home/hadoop/Downloads文件夹下,然后解压安装。

2.解压缩:

3. 更改文件夹名称:

4.修改hadoop用户对文件夹spark的访问权限:

(2)配置

1.复制一份由Spark安装文件自带的配置文件模板:

2.使用vim编辑器打开spark-env.sh,再第一行添加配置信息:

3.验证Spark安装是否成功:

4. 启动HDFS后,Spark可以对HDFS中的数据进行读写。

(3)Spark-shell的启动

1.启动

2. 读取文件,统计行数

(3) Spark集群环境搭建

1.按照上面的(1)部分安装与配置完spark

2.配置环境变量

         3.配置Spark

a:在master(主机)配置slaves文件

b: 在master节点配置spark-env.sh文件

c:配置slave节点

4.启动spark


(1)安装Spark

1.先用xftp将安装包传到home/hadoop/Downloads文件夹下,然后解压安装。

2.解压缩:

sudo tar -zxf spark-2.1.0-bin-without-hadoop.tgz -C /usr/local

3. 更改文件夹名称:

cd  /usr/local
sudo mv spark-2.1.0-bin-without-hadoop spark

4.修改hadoop用户对文件夹spark的访问权限:

sudo chown -R hadoop:hadoop ./spark

(2)配置

1.复制一份由Spark安装文件自带的配置文件模板:

cd /usr/local/spark
cp ./conf/spark-env.sh.template ./conf/spark-env.sh
vim ./conf/spark-env.sh

2.使用vim编辑器打开spark-env.sh,再第一行添加配置信息:

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

3.验证Spark安装是否成功:

cd /usr/local/spark
bin/run-example SparkPi 2>&1 | grep "Pi is roughly"

 如图所示:返回结果:Pi is roughly 3.144115720578603

既安装成功!!!

4. 启动HDFS后,Spark可以对HDFS中的数据进行读写。

(3)Spark-shell的启动

1.启动

cd /usr/local/spark
./bin/spark-shell

2. 读取文件,统计行数

scala> val textFile = sc.textFile("file:///usr/local/spark/README.md")
scala> textFile.count()

 返回结果如上图所示!!!

(3) Spark集群环境搭建

1.按照上面的(1)部分安装与配置完spark

2.配置环境变量

在master(主节点)配置环境变量

sudo vim ~/.bashrc

在.bashrc文件中增加:

#spark
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SCALA_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin

使用source命令使配置生效:

source ~/.bashrc

 3.配置Spark

a:在master(主机)配置slaves文件

cd /usr/local/spark
cp ./conf/slaves.template ./conf/slaves

 在salves文件中设置Spark集群的Worker节点

[hadoop@master spark]$ vim ./conf/slaves

添加以下内容: 

b: 在master节点配置spark-env.sh文件

[hadoop@master spark]$ cp ./conf/spark-env.sh.template ./conf/spark-env.sh

编辑spark-env.sh文件:

[hadoop@master spark]$ vim ./conf/spark-env.sh
#!/usr/bin/env bash
export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
#export SPARK_MASTER_IP=192.168.242.129    //自己maser的IP
export SPARK_MASTER_HOST=192.168.242.129

 c:配置slave节点

启动slave01和slave02节点,然后,在master节点执行如下命令,将master节点的/usr/local/spark文件夹复制到各个slave节点:

[hadoop@master local]$ tar -zcf ~/spark.master.tar.gz ./spark 
[hadoop@master local]$ cd 
[hadoop@master ~]$ scp ./spark.master.tar.gz slave01:/home/hadoop
[hadoop@master ~]$ scp ./spark.master.tar.gz slave02:/home/hadoop

 在slave01和slave02节点上分别执行如下命令(下面以slave01为例):

sudo rm -rf /usr/local/spark
sudo tar -zcf sparm.master.tar.gz -C /usr/local
sudo chown -R hadoop:hadoop /usr/local/spark

4.启动spark

在master主机上启动hdfs yarn

在master上再启动spark

cd /usr/local/spark
sbin/start-master.sh
sbin/start-slaves.sh

 如下图已开启spark进程

 测试:链接http://192.168.242.129:8080

在master节点上,通过浏览器查看集群信息有两个worker

 5.关闭spark

stop-master.sh
stop-slaves.sh
stop-yarn.sh
stop-dfs.sh

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

11.Linux下Spark的安装配置以及spark-shell的启动和 Spark集群环境搭建 的相关文章

  • 如何用X11复制到剪贴板?

    使用 OS X 上的框架 我可以使用以下命令将 PNG 复制到粘贴板 在 C 中 显然我可以将 NSPasteboard 与 Cocoa 一起使用 include
  • InstaPy:“错误,无法确定 64 位 Linux 的正确文件名”

    有人知道如何解决或解决这个问题吗 来自控制台的堆栈跟踪 执行后报告错误 InstaPy Version 0 6 9 Workspace in use home zanettra InstaPy Error unable to determi
  • 停止服务时单元陷入故障状态(状态=143)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是我的问题 我有 CentOS 和 java 进程在上面运行 Java进程是通过启动 停止脚本来操作的 它也创建了 java 实例的 p
  • 为什么在 Linux 上字符串文字的内存地址与其他字符串文字的内存地址如此不同?

    我注意到字符串文字在内存中的地址与其他常量和变量 Linux 操作系统 非常不同 它们有许多前导零 未打印 Example const char h Hi int i 1 printf p n void h printf p n void
  • Inotify linux 监视子目录

    是否可以以这种模式监视目录 storage data usernames Download gt storage data Download 我需要监视每个用户的下载文件夹中是否进行了更改 也许我需要创建所有路径的列表 将其放入数组中 并在
  • 每个进程每个线程的时间量

    我有一个关于 Windows 和 Linux 中进程和线程的时间量子的问题 我知道操作系统通常为每个线程提供固定的时间量 我知道时间量根据前台或后台线程而变化 也可能根据进程的优先级而变化 每个进程有固定的时间量吗 例如 如果操作系统为每个
  • Bash 方法的返回值总是模 256

    我有一个 bash 脚本方法 它返回输入值 然而 返回值始终是模 256 的值 我用 google 搜索了一段时间 发现this http www tldp org LDP abs html exitcodes html文章说它总是以 25
  • 从多线程程序中调用 system()

    我们正在开发一个用 C 编写的多线程内存消耗应用程序 我们必须执行大量的 shellscript linux 命令 并获取返回码 读完之后article http www linuxprogrammingblog com threads a
  • 如何查找连接到 AF_INET 套接字的客户端的 UID?

    有什么方法或类似的东西ucred for AF UNIX如果是AF INET插座 TCP在我的例子中 找出连接到我的套接字的客户端的UID 还有 proc net tcp但它显示了UID of the creator插座的而不是连接的cli
  • Composer 安装要求

    我正在尝试将 Composer 安装到 Laravel 项目中 当我做的时候sudo composer install在项目目录中它显示了两个错误 Problem 1 Installation request for simplesoftw
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • 在 Linux 中禁用历史记录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 要在 Linux 环境中禁用历史记录 我执行了以下命令 export HISTFILESIZE 0 export HISTSIZE 0 u
  • 嵌入式Linux poll()不断返回

    我有一个特别的问题 当我知道没有什么可读时 民意调查不断返回 因此设置如下 我有 2 个文件描述符 它们构成fd设置民意调查监视 一种用于引脚从高到低的变化 GPIO 另一个用于代理输入 代理输入出现问题 处理的顺序是 启动main函数 然
  • MiniDFSCluster UnsatisfiedLinkError org.apache.hadoop.io.nativeio.NativeIO$Windows.access0

    做时 new MiniDFSCluster Builder config build 我得到这个异常 java lang UnsatisfiedLinkError org apache hadoop io nativeio NativeIO
  • YARN UNHEALTHY 节点

    在我们的 YARN 集群已满 80 的情况下 我们看到一些纱线节点管理器被标记为不健康 在深入研究日志后 我发现这是因为数据目录的磁盘空间已满 90 出现以下错误 2015 02 21 08 33 51 590 INFO org apach
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • 如何修复“iptables:没有该名称的链/目标/匹配”?

    我在我的 Linux 嵌入式系统上构建并安装了 iptables 如果我列出所有规则 则一切正常 iptables list Chain INPUT policy ACCEPT target prot opt source destinat
  • 为什么我收到“无法进行二进制日志记录”的信息。在我的 MySQL 服务器上?

    当我今天启动 MySQL 服务器并尝试使用以下命令进行一些更改时用于 MySQL 的 Toad http www quest com toad for mysql 我收到此消息 MySQL 数据库错误 无法进行二进制日志记录 消息 交易级别
  • awk 子串单个字符

    这是columns txt aaa bbb 3 ccc ddd 2 eee fff 1 3 3 g 3 hhh i jjj 3 kkk ll 3 mm nn oo 3 我可以找到第二列以 b 开头的行 awk if substr 2 1 1

随机推荐

  • 神经网络综述

    本文指在介绍机器学习中的神经网络的多种变种 包括简单的代码实现及优缺点并尽量不涉及到公式 希望能给阅读者建立起一个关于神经网络的综合概念 因此 本文会涉及到一点神经网络的原理但不会太深入以致于读者迷失在其中而无法得到一个全局性的概念 另外
  • SQLServer2019安装教程

    可以去官网下载 我百度网盘也有都一样 https pan baidu com s 1i3umqHXSUMbxJ9rRi6mU4A 提取码 5g9q 打开应用程序 点击安装 点第一个全新得SQL server独立安装 下一步 在这一步可能有需
  • TCP-IP详解:超时重传机制

    参考教材 TCP IP Guide 超时重传是TCP保证数据传输可靠性的又一大措施 本文主要介绍重传TCP报文的两大举措 超时重传和快速重传 超时重传机制 超时重传指的是 发送数据包在一定的时间周期内没有收到相应的ACK 等待一定的时间 超
  • 几款好用的指纹识别工具

    几款好用的指纹识别工具 在web渗透过程中 对站点进行指纹探测识别非常重要 了解网站所用的web框架或者cms可以为后续的渗透提供思路和突破口 这篇文章主要用于总结几款我平时工作中经常使用的指纹识别工具 一 whatweb whatweb是
  • Python Requests使用Cookie的几种方式

    本文主要给大家介绍了关于Python Requests使用Cookie的几种方式 Python中的requests库可以使用cookie来维持会话状态 实现登录等操作 需要的朋友可以参考下 一 通过headers参数使用 通过headers
  • c语言实现字符串的指定位置删除

    要求 任意输入一串字符串 指定要删除的位置 并输入要删除指定位置后字符的个数 实现代码如下 include
  • el-table绑定的数组里面的对象值进行修改时,视图没有更新

    在Vue js中 如果您在对绑定到el table的数组里面的对象值进行修改后发现视图没有更新 可能是因为Vue js无法检测到数据的变化 解决这个问题的方法有以下几种 使用Vue set 方法显式地告诉Vue js数据已经发生了变化 例如
  • GNN等优缺点总结及解决方案

    https www zhihu com question 338051122 https www zhihu com question 346942899 https zhuanlan zhihu com p 291230435 GCN的缺
  • STM32实现MLX90614非接触测温串口显示(标准库与HAL库实现)

    目录 模块选择 编程环境 MLX90614基本原理 通信协议 SMBus通信 类IIC通信 代码实现 STM32与模块之间接线表 1 标准库实现温度采集 2 HAL库实现温度采集 模块选择 STM32F103C8T6 MLX90614 非接
  • 多目标跟踪问题

    A Baseline for 3D Multi Object Tracking 三维多目标跟踪 原文地址 https arxiv org pdf 1907 03961v4 pdf 用到的基础知识 卡尔曼滤波 和 匈牙利算法 匈牙利算法用来求
  • weex<==>nvue书写样式需要注意的点(全部)

    weex书写步骤 全局样式规划 将整个页面分割成合适的模块 flex 布局 排列和对齐页面模块 定位盒子 定位并设置偏移量 细节样式处理 增加特定的具体样式 1 通用样式 除此通用样式之外的属性 均不被支持 1 单位只支持px和wx 不受屏
  • 风起云涌,拓世法宝破茧而出!免费使用无限时长,领航数字人全新时代,你还在等什么?

    随着元宇宙概念的不断推进 数字化转型已经成为了时代的主流趋势 在这个背景下 虚拟数字人的发展迅速崭露头角 为各个行业带来了前所未有的应用机会 尤其是在短视频领域 由于短视频的流量和人力成本持续上升 数字人逐渐被企业视为一个新的探索方向 希望
  • 如何测试Android APP的耗电量?

    现在可以使用google提供的battery historian来测试 适用条件 5 0及以上手机 battery historian链接 google battery historian android吧 所以的android都自带的功能
  • Qt--自定义控件

    写在前面 Qt中提供了应用在各种场景的控件 使开发人员在实际工作中选择 但有些特定的场合中这些控件并不满足需要时 Qt允许使用自定义的控件 例 我们在工作中有这样一种需求 点击按钮会根据一些其他状态来显示不同的图片 这时Qt提供的QPush
  • 阿里巴巴开源的免费数据库工具Chat2DB

    Chat2DB 是一款由阿里巴巴开源的免费数据库工具 它为开发人员提供了一个强大且易于使用的平台 用于存储和查询数据 与传统的数据库工具相比 Chat2DB 具有以下特点和优势 多数据库支持 Chat2DB 可以与多种类型的数据库进行集成
  • GD32 OSC引脚做普通IO配置

    根据用户手册 bit15共同控制了PD0 PD1的重映射的使能 总的来说 比普通IO配置多开启一个复用时钟和重映射使能 rcu periph clock enable RCU GPIOD rcu periph clock enable RC
  • 第1关:Hbase数据库的安装

    在安装HBase之前你需要先安装Hadoop和Zookeeper 如果你还没有安装可以通过这两个实训来学习 Hadoop安装与配置 Zookeeper安装与配置 本次实训的环境已经默认安装好了Hadoop 接下来我们就开始安装配置HBase
  • 500G JAVA视频网盘分享 (Jeecg社区)

    http blog csdn net zhangdaiscott article details 18220411 csdn 排名400多名 500 G JAVA视频网盘分享 Jeecg社区 涵盖从java入门到深入架构 Linux 云计算
  • mermaid 用法

    div class article content tracking ad div class markdown views p 作者 黄永刚 p h2 a target blank a strong mermaid简介 strong h2
  • 11.Linux下Spark的安装配置以及spark-shell的启动和 Spark集群环境搭建

    本案例软件包 链接 https pan baidu com s 1zABhjj2umontXe2CYBW DQ 提取码 1123 若链接失效在下面评论 我会及时更新 目录 1 安装Spark 1 先用xftp将安装包传到home hadoo