当前位置: 首页 > news >正文

16-Linux部署Spark环境

Linux部署Spark环境

注意

本小节的操作,基于:大数据集群(Hadoop生态)安装部署环节中所构建的Hadoop集群

如果没有Hadoop集群,请参阅前置内容,部署好环境。

参考文章:

14-Linux部署Hadoop集群:http://t.csdnimg.cn/ptHa3

简介

Spark是一款分布式内存计算引擎,可以支撑海量数据的分布式计算。

Spark在大数据体系是明星产品,作为最新一代的综合计算引擎,支持离线计算和实时计算。

在大数据领域广泛应用,是目前世界上使用最多的大数据分布式计算引擎。

我们将基于前面构建的Hadoop集群,部署Spark Standalone集群。

Spark官网:https://spark.apache.org/

安装

  1. 【node1执行】下载并解压

    • 下载
    wget --no-check-certificate https://archive.apache.org/dist/spark/spark-2.4.5/spark-2.4.5-bin-hadoop2.7.tgz
    
    • 解压
    tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz -C /export/server/
    
    • 软连接
    ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark
    
  2. 【node1执行】修改配置文件名称

    # 改名
    cd /export/server/spark/conf
    mv spark-env.sh.template spark-env.sh
    mv slaves.template slaves
    
  3. 【node1执行】修改配置文件,spark-env.sh

    使用vim编辑配置文件

    vim spark-env.sh
    

    复制下面的全部内容到spark-env.sh

    ## 设置JAVA安装目录
    JAVA_HOME=/export/server/jdk## HADOOP软件配置文件目录,读取HDFS上文件和运行YARN集群
    HADOOP_CONF_DIR=/export/server/hadoop/etc/hadoop
    YARN_CONF_DIR=/export/server/hadoop/etc/hadoop## 指定spark老大Master的IP和提交任务的通信端口
    export SPARK_MASTER_HOST=node1
    export SPARK_MASTER_PORT=7077SPARK_MASTER_WEBUI_PORT=8080
    SPARK_WORKER_CORES=1
    SPARK_WORKER_MEMORY=1g
    
  4. 【node1执行】修改配置文件,slaves

    使用vim操作slaves文件

    vim slaves
    

    输入下面内容

    node1
    node2
    node3
    
  5. 【node1执行】分发

    进入/export/server

    cd /export/server
    

    分发spark-2.4.5-bin-hadoop2.7文件到node2、node3

    scp -r spark-2.4.5-bin-hadoop2.7 node2:$PWD
    scp -r spark-2.4.5-bin-hadoop2.7 node3:$PWD
    
  6. 【node2、node3执行】设置软链接

    ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark
    
  7. 【node1执行】启动Spark集群

    /export/server/spark/sbin/start-all.sh# 如需停止,可以
    /export/server/spark/sbin/stop-all.sh
    

    使用jps查看进程

    [root@node1 server]# jps
    6561 Jps
    2629 NodeManager
    3014 WebAppProxyServer
    6423 Master
    1752 NameNode
    5081 HRegionServer
    1898 DataNode
    4140 QuorumPeerMain
    2477 ResourceManager
    4989 HMaster
    2222 SecondaryNameNode
    6494 Worker
    [root@node1 server]# ssh node2
    Last login: Thu Feb 29 09:29:52 2024 from node1
    [root@node2 ~]# jps
    2369 HRegionServer
    3186 Jps
    1508 QuorumPeerMain
    1621 DataNode
    1735 NodeManager
    3113 Worker
    [root@node2 ~]# 
    

    node1有HMaster和Worker,node2有Worker说明启动成功

  8. 打开Spark监控页面,浏览器打开:http://192.168.149.131:8081

    image-20240229110609617

  9. 【node1执行】提交测试任务

    /export/server/spark/bin/spark-submit --master spark://node1:7077 --class org.apache.spark.examples.SparkPi /export/server/spark/examples/jars/spark-examples_2.11-2.4.5.jar
    

    可以看到输出的pi值

    image-20240229111354541

    在可视化界面可以看到该进程的信息

    image-20240229111512067
    说明Spark部署成功~~~

相关文章:

  • Day13:信息打点-JS架构框架识别泄漏提取API接口枚举FUZZ爬虫插件项目
  • C++_AVL树
  • 【ArcGIS】统计格网中不同土地利用类型占比
  • Vue/React 前端高频面试
  • 初阶数据结构:二叉树
  • langchain学习笔记(十)
  • SMBGhost漏洞技术分析与防御方案
  • 【C++干货基地】揭秘C++11常用特性:内联函数 | 范围for | auto自动识别 | nullptr指针空值
  • 向日葵、Todesk、teamviewer等工具远程连接电脑时第三方应用显示白屏
  • 编程笔记 Golang基础 045 math包
  • chrome选项页面options page配置
  • AI网址啊
  • 【css面试题】BFC
  • 通过QScrollArea寻找最后一个弹簧并且设置弹簧大小
  • OpenCV 4基础篇| OpenCV图像的裁切
  • 2017年终总结、随想
  • 77. Combinations
  • 78. Subsets
  • ComponentOne 2017 V2版本正式发布
  • GitUp, 你不可错过的秀外慧中的git工具
  • HTML-表单
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • javascript数组去重/查找/插入/删除
  • mysql中InnoDB引擎中页的概念
  • 关于Java中分层中遇到的一些问题
  • 简单易用的leetcode开发测试工具(npm)
  • 离散点最小(凸)包围边界查找
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 数组大概知多少
  • 探索 JS 中的模块化
  • 我是如何设计 Upload 上传组件的
  • 用 Swift 编写面向协议的视图
  • 优秀架构师必须掌握的架构思维
  • 原生js练习题---第五课
  • 再次简单明了总结flex布局,一看就懂...
  • 责任链模式的两种实现
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • Hibernate主键生成策略及选择
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​secrets --- 生成管理密码的安全随机数​
  • ​TypeScript都不会用,也敢说会前端?
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #Linux(帮助手册)
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • $jQuery 重写Alert样式方法
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (搬运以学习)flask 上下文的实现
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (七)Knockout 创建自定义绑定
  • (三) diretfbrc详解
  • (算法)N皇后问题