基于hadoop下的spark安装

目录

简介

安装准备

spark安装

配置文件配置


简介

Spark主要⽤于⼤数据的并⾏计算,⽽Hadoop在企业主要⽤于⼤数据的存储(⽐如HDFS、Hive和HBase 等),以及资源调度(Yarn)。但是也有很多公司也在使⽤MR2进⾏离线计算的开发。Spark + Hadoop在当前自建平台技术中,是离线计算任务开发的主流组合方式。
数据存储:HDFS
资源调度:Yarn
数据计算:Spark或MapReduce,取决于具体的企业需求场景


Spark提供了 Spark Core 、 Spark SQL 、 Spark Streaming 、 Spark MLlib 、 Spark GraphX 和Spark-R等技术组件,可以⼀站式地完成⼤数据领域的离线批处理、交互式查询、流式计算、机器学习、图计算和统计等常⻅的任务。
Spark引进了弹性分布式数据集(Resilient DistributedDataset, RDD),它是分布在一组节点中的只读对象集合。这些对象集合是弹性的,如果丢失了一部分对象集合,Spark则可以根据父RDD对它们进行计算。另外在对RDD进行转换计算时,可以通过CheckPoint方法将数据持久化(比如可以持久化到HDFS),从而实现容错。

安装准备

linux免密登录

zookeeper安装

hadoop安装

spark安装

通过官网下载安装包 spark-3.5.0-bin-hadoop3.tgz,所有节点同步下载。

复制代码
wget https://archive.apache.org/dist/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgz

然后进行解压,清空压缩包,设置软连接。

复制代码
 tar -zxf spark-3.5.0-bin-hadoop3.tgz 
rm -rf spark-3.5.0-bin-hadoop3.tgz 
ln -s spark-3.5.0-bin-hadoop3/ spark 

配置文件配置

在$SPARK_HOME/conf 下,压缩包中自带一个标准格式文件,将其更名为spark-env.sh便可。

复制代码
[hadoop@vm02 conf]$ cp spark-env.sh.template spark-env.sh
[hadoop@vm02 conf]$ ll
total 44
-rw-r--r-- 1 hadoop hadoop 1105 Sep  9 10:08 fairscheduler.xml.template
-rw-r--r-- 1 hadoop hadoop 3350 Sep  9 10:08 log4j2.properties.template
-rw-r--r-- 1 hadoop hadoop 9141 Sep  9 10:08 metrics.properties.template
-rw-r--r-- 1 hadoop hadoop 1292 Sep  9 10:08 spark-defaults.conf.template
-rwxr-xr-x 1 hadoop hadoop 4694 Dec 10 23:02 spark-env.sh
-rwxr-xr-x 1 hadoop hadoop 4694 Sep  9 10:08 spark-env.sh.template
-rw-r--r-- 1 hadoop hadoop  865 Sep  9 10:08 workers.template

本文使用简易配置作为演示,关于其他参数在配置文档中已经写明注释,可以根据实际情况进行阅读或选择性配置。本文在该文档下只设置主节点hostname,所有节点同步

复制代码
export SPARK_MASTER_HOST=vm02
export JAVA_HOME=/jdk/jdk1.8.0_144/
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=${JAVA_HOME}/lib:${JRE_HOME}/lib
export ZOOKEEPER_HOME=/home/hadoop/zookeeper
#HADOOP_HOME
export HADOOP_HOME=/home/hadoop/hadoop
export HBASE_HOME=/home/hadoop/hbase

· 设置vm03,vm04为工作节点

复制代码
[hadoop@vm02 conf]$ cp workers.template workers
[hadoop@vm02 conf]$ vim workers
vm03
vm04            

配置spark环境变量

vim /etc/profile,将一下环境变量配置加入到文件中

复制代码
export PATH=$SPARK_HOME/bin:$PATH
export SPARK_HOME=/home/hadoop/spark

重新加载环境变量

复制代码
source /etc/profile

启动spark

复制代码
##进入$SPARK_HOME/sbin 目录下启动spark
start-all.sh 

注意:spark的启动指令的命令的名称和hadoop的启动名称是一样的,所以不要设置$SPARK_HOME/sbin 的PATH环境变量

启动完成后可以只看到,marster在vm02上,vm03,vm04都是work节点。

在所有节点均可以使用以下命令进入spark的交互端口,

复制代码
 spark-shell --master local

只有当进入到交互命令行时,才可以访问对应节点的webui页面,默认端口是4040

使用ctrl+c便可以退出交互行

spark的安装也是相当方便。读者有什么疑问,可以私信咨询。

相关推荐
数据猿4 小时前
【金猿CIO展】上海虹迪物流科技有限公司董事长兼CIO张鹏飞:聚焦数字化核心——物流供应链的的智慧演进之路
大数据·科技
deepdata_cn4 小时前
“深数据” vs “大数据”
大数据·bigdata·深数据·deepdata
数字化转型20256 小时前
SAP Signavio 在风机制造行业的深度应用研究
大数据·运维·人工智能
sheji34167 小时前
【开题答辩全过程】以 基于大数据的城市租房数据的分析与可视化为例,包含答辩的问题和答案
大数据
一只废狗狗狗狗狗狗狗狗狗8 小时前
基于docker desktop的hadoop集群结点启动失败问题
hadoop·docker·docker desktop
Biehmltym10 小时前
【AI】09AI Agent LLM → Streaming → Session 记录 的完整链路
大数据·人工智能·elasticsearch
Data-Miner11 小时前
精品PPT | 某制造集团灯塔工厂解决方案
大数据·人工智能·制造
小湘西11 小时前
Elasticsearch 的一些默认配置上下限
java·大数据·elasticsearch
`林中水滴`12 小时前
SeaTunnel vs Flume
大数据·flume
边缘计算社区12 小时前
第12届全球边缘计算大会-精彩瞬间
大数据·人工智能·边缘计算