温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Spark在Linux上如何配置

发布时间:2025-10-25 04:59:43 来源:亿速云 阅读:108 作者:小樊 栏目:系统运维

1. 基础环境准备
Spark运行需依赖Java环境(推荐JDK 8或11),若使用HDFS/YARN等Hadoop组件还需提前安装Hadoop(版本需与Spark兼容)。可通过java -version验证Java安装,hadoop version验证Hadoop安装(可选)。

2. 下载并解压Spark
从Apache Spark官网下载所需版本(如3.3.2),选择预编译的Hadoop版本(如spark-3.3.2-bin-hadoop3.tgz),避免自行编译。使用wget命令下载后,解压至指定目录(如/opt):

wget https://downloads.apache.org/spark/spark-3.3.2/spark-3.3.2-bin-hadoop3.tgz
sudo tar -xzf spark-3.3.2-bin-hadoop3.tgz -C /opt

3. 配置环境变量
编辑用户或系统的profile文件(如~/.bashrc或/etc/profile),添加Spark路径配置:

export SPARK_HOME=/opt/spark-3.3.2-bin-hadoop3  # 替换为实际解压路径
export PATH=$SPARK_HOME/bin:$PATH             # 添加Spark命令到PATH

使配置生效:

source ~/.bashrc  # 或 source /etc/profile

4. 配置Spark核心参数
进入Spark安装目录的conf文件夹,复制模板文件并修改:

  • 配置环境变量:复制spark-env.sh.template为spark-env.sh,添加以下内容:
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64  # 替换为实际Java路径
    export SPARK_MASTER_HOST=localhost                # Master节点主机名/IP(集群中需设为Master节点IP)
    export SPARK_MASTER_PORT=7077                     # Master服务端口(默认7077)
    export SPARK_WORKER_CORES=2                       # Worker节点可用CPU核心数
    export SPARK_WORKER_MEMORY=2g                     # Worker节点分配内存(如2g)
    
  • 配置Worker节点:复制slaves.template为slaves(仅集群模式需要),添加Worker节点主机名/IP(每行一个,本地测试可留localhost)。

5. 启动Spark服务

  • 本地模式:直接运行spark-shell即可启动本地Spark环境(无需启动Master/Worker)。
  • 集群模式:
    • 在Master节点执行$SPARK_HOME/sbin/start-master.sh启动Master服务,终端会显示Master Web UI地址(如http://localhost:8080)。
    • 在Master节点执行$SPARK_HOME/sbin/start-slaves.sh启动所有Worker节点(需确保slaves文件配置正确)。
    • 使用jps命令验证进程:Master节点应显示Master进程,Worker节点应显示Worker进程。

6. 验证安装

  • Web UI验证:访问Master节点的Web UI(如http://localhost:8080),查看Cluster Overview中的Workers、Apps等信息(本地模式下Workers数为1)。
  • 命令行验证:运行spark-shell进入交互式Shell,执行简单RDD操作(如val data = Seq(1,2,3); data.reduce(_ + _)),若能正确输出结果则说明安装成功。

常见问题解决

  • Java版本不兼容:Spark 3.x推荐使用JDK 8或11,若版本过高(如JDK 17)需降级或升级Spark版本。
  • 端口冲突:若8080端口被占用,可在spark-env.sh中修改SPARK_MASTER_PORT(如改为8081)。
  • 环境变量未生效:确保source命令已执行,或重启终端后再试。
  • 依赖缺失:提交应用时若报依赖错误,可使用--packages参数自动下载(如spark-submit --packages org.apache.spark:spark-sql-kafka-0-10_2.12:3.3.2 ...)。
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手