1. 环境准备
在Linux系统上安装Spark前,需确保系统满足以下核心依赖:
java -version验证安装,未安装时可通过sudo apt-get install openjdk-8-jdk或sudo yum install java-1.8.0-openjdk安装)。2. 下载Spark
从Apache Spark官方网站下载预编译的二进制包(选择与Hadoop版本兼容的版本,如spark-3.3.2-bin-hadoop3.tgz),使用wget命令下载至Linux系统:
wget https://downloads.apache.org/spark/spark-3.3.2/spark-3.3.2-bin-hadoop3.tgz
下载完成后,可通过ls命令确认文件完整性。
3. 解压安装包
使用tar命令将下载的压缩包解压至指定目录(如/opt,需管理员权限):
sudo tar -xzf spark-3.3.2-bin-hadoop3.tgz -C /opt
解压后,可通过ls /opt确认Spark目录是否存在。
4. 配置环境变量
编辑用户级配置文件(如~/.bashrc或~/.zshrc),添加Spark相关环境变量:
export SPARK_HOME=/opt/spark-3.3.2-bin-hadoop3 # 指向Spark解压目录
export PATH=$SPARK_HOME/bin:$PATH # 将Spark命令加入PATH
保存文件后,执行source ~/.bashrc(或source ~/.zshrc)使配置立即生效。
5. 验证基础安装
通过运行spark-shell命令验证Spark是否安装成功:
spark-shell
若安装正确,终端将进入Spark的REPL(交互式Shell)界面,显示Spark版本及Scala版本信息(如Spark context available as 'sc')。
6. 配置Spark集群(可选,单机/集群模式)
spark-shell即可启动本地Spark实例。conf目录,复制spark-env.sh.template为spark-env.sh,编辑该文件添加以下内容:export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # 指向JDK安装目录
export SPARK_MASTER_HOST=localhost # Master节点IP(伪分布式为本机)
export SPARK_MASTER_PORT=7077 # Master端口(默认7077)
若为完全分布式,需创建slaves文件(同样复制slaves.template),添加Worker节点IP(如slave1\nslave2)。scp -r /opt/spark-3.3.2-bin-hadoop3 slave1:/opt/)。cd /opt/spark-3.3.2-bin-hadoop3/sbin
./start-master.sh # 启动Master守护进程
./start-slaves.sh # 启动所有Worker守护进程
spark-env.sh,添加Hadoop配置路径:export HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop # 指向Hadoop配置目录
start-dfs.sh、start-yarn.sh),然后通过spark-shell --master yarn-client提交任务。7. 验证集群状态
jps,应看到Master进程;在Worker节点执行jps,应看到Worker进程。http://<master-ip>:8080(如http://localhost:8080),查看集群状态(包括Master/Worker节点列表、内存使用、任务运行情况)。./bin/run-example SparkPi,验证Spark是否能正常运行计算任务(输出π的近似值)。常见问题及解决方法
Unsupported major.minor version错误,需安装JDK 8或11,并正确配置JAVA_HOME。start-master.sh报错“端口已被占用”,可修改spark-env.sh中的SPARK_MASTER_PORT(如改为8077)。spark-defaults.conf(位于conf目录),调整内存设置(如spark.executor.memory 2g、spark.driver.memory 1g)。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。