一、安装前环境准备
在Linux系统上安装Spark前,需确保系统满足以下核心依赖:
java -version命令检查是否已安装;若未安装,可使用包管理器安装(如Ubuntu的sudo apt install openjdk-8-jdk、CentOS的sudo yum install java-1.8.0-openjdk),并配置JAVA_HOME环境变量(指向JDK安装目录,如/usr/lib/jvm/java-8-openjdk-amd64)。HADOOP_HOME、HADOOP_CONF_DIR等环境变量;若仅本地测试,可跳过此步骤。python3 --version检查)。二、下载Spark安装包
访问Apache Spark官方网站(downloads.apache.org/spark),选择预编译版本(Pre-built for Apache Hadoop)——此类版本已集成Hadoop依赖,无需额外编译。例如,下载Spark 3.3.2版本(截至2025年10月的最新稳定版)的Hadoop 3适配包:
wget https://downloads.apache.org/spark/spark-3.3.2/spark-3.3.2-bin-hadoop3.tgz
下载完成后,可通过tar -tzf spark-3.3.2-bin-hadoop3.tgz命令验证文件完整性。
三、解压与目录部署
将下载的安装包解压至系统指定目录(如/opt,需管理员权限):
sudo tar -xzf spark-3.3.2-bin-hadoop3.tgz -C /opt
为便于管理,可将解压后的目录重命名(如spark):
sudo mv /opt/spark-3.3.2-bin-hadoop3 /opt/spark
建议将Spark目录的所有权赋予当前用户(避免后续操作权限问题):
sudo chown -R $USER:$USER /opt/spark
四、配置环境变量
编辑用户级的环境变量文件(如~/.bashrc或~/.zshrc,根据使用的Shell类型选择),添加以下内容:
export SPARK_HOME=/opt/spark # Spark安装目录
export PATH=$SPARK_HOME/bin:$PATH # 将Spark的bin目录加入PATH,实现全局命令调用
保存文件后,执行source ~/.bashrc(或source ~/.zshrc)使配置立即生效。可通过echo $SPARK_HOME命令验证环境变量是否配置成功。
五、验证基础安装
在终端输入spark-shell命令,若安装成功,将启动Spark的**REPL(交互式Shell)**界面,显示Spark版本、Scala版本及交互提示符(如scala>)。此时可输入sc.version查看Spark版本,或执行1+1等简单计算验证功能。
六、配置Spark集群参数(可选,用于分布式运行)
若需将Spark部署为集群模式(Master-Worker架构),需修改spark-env.sh配置文件:
cd $SPARK_HOME/confspark-env.sh:cp spark-env.sh.template spark-env.shspark-env.sh,添加以下关键配置(根据实际环境调整):export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # Java安装目录
export SPARK_MASTER_HOST=localhost # Master节点IP(本地测试用localhost)
export SPARK_MASTER_PORT=7077 # Master节点端口(默认7077)
export SPARK_WORKER_MEMORY=2g # Worker节点分配给Executor的内存(如2GB)
export SPARK_WORKER_CORES=2 # Worker节点分配给Executor的CPU核心数(如2核)
配置完成后,保存文件即可。
七、启动Spark服务(可选,分布式模式)
$SPARK_HOME/sbin目录,执行./start-master.sh。启动后,终端会显示Master的Web UI地址(如http://localhost:8080)。./start-worker.sh spark://localhost:7077(spark://localhost:7077为Master节点的连接地址,需与spark-env.sh中的SPARK_MASTER_HOST和SPARK_MASTER_PORT一致)。jps命令查看进程(应存在Master和Worker进程);或访问Master的Web UI(如http://localhost:8080),查看Worker节点是否注册成功。八、常见问题排查
Unsupported major.minor version错误,需卸载冲突的Java版本(如JDK 17),并安装JDK 8或11。spark-shell命令无法识别,需重新执行source ~/.bashrc(或source ~/.zshrc),并确认PATH变量中包含$SPARK_HOME/bin。spark-env.sh中修改SPARK_MASTER_PORT(如改为8081)。spark-env.sh中调整SPARK_WORKER_MEMORY(如改为1g),或在spark-defaults.conf中配置Executor内存(如spark.executor.memory 1g)。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。