spark 集群安装

本文详细介绍如何从零开始搭建Spark集群,包括JDK、Scala及Hadoop的安装配置,并引导读者完成Spark的安装与配置,最后启动集群进行验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章地址:http://www.haha174.top/article/details/253943
首先需要安装jdk 不会可以参考这里(http://www.haha174.top/article/details/259178
安装scala(懒得写了 不会的话 自行百度)
安装 hadoop(http://www.haha174.top/article/details/258782

这里使用的是最新版spark 下载地址(http://spark.apache.org/releases/spark-release-2-2-1.html

tar -zxvf spark-2.2.1-bin-hadoop2.7.tgz
cd  spark-2.2.1-bin-hadoop2.7/conf
cp  slaves.template slaves
vi slaves   
    spark1
    spark2
    spark3
vi spark-env.sh.template spark-env.sh
    export JAVA_HOME=/apps/adf/java/jdk1.8.0_121
    export SCALA_HOME=/scala/scala-2.12.4
    export SPARK_WORKER_MEMORY=1g
    export HADOOP_CONF_DIR=/hadoop/hadoop-2.9.0/etc/hadoop
    export SPARK_MASTER_IP=192.168.1.221
    export SPARK_MASTER_HOST=192.168.1.221
    export SPARK_LOCAL_IP=192.168.1.221
    export SPARK_WORKER_MEMORY=1g
    export SPARK_WORKER_CORES=2

这样spark1 就配置好了
相同的方式配置spark2
spark3

注意这个要改成
export SPARK_LOCAL_IP=192.168.1.221(当前地址)

在master 节点sbin 目录下执行 start-all.sh
jps 查看 master

14274 Master
14354 Worker

查看slave
4145 Worker

或者通过spark1:8080 查看
这里写图片描述

### 安装与配置 Spark 集群 #### 1. 下载并解压 Spark 软件包 首先需要下载适合版本的 Spark 软件包,例如 `spark-3.0.0-bin-hadoop3.2.tgz`。将其上传至服务器并解压缩到指定目录。 ```bash tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz mv spark-3.0.0-bin-hadoop3.2 /usr/local/spark ``` 此步骤完成后,需确保所有节点均拥有相同的 Spark 文件夹结构[^2]。 --- #### 2. 设置 SPARK_HOME 环境变量 编辑 `/etc/profile` 或者用户的 `.bashrc` 文件,添加如下内容: ```bash export SPARK_HOME=/usr/local/spark export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin ``` 随后通过以下命令使更改生效: ```bash source ~/.bashrc ``` 这一步骤是为了方便后续在终端中直接调用 Spark 的相关工具。 --- #### 3. 修改 Spark 配置文件 Spark 的配置文件位于其安装路径下的 `conf/` 目录中。以下是主要的几个配置文件及其作用: ##### (1) **`spark-defaults.conf`** 该文件用于定义默认参数设置。可以在此处添加一些常用的属性,比如: ```properties spark.master spark://master:7077 spark.executor.memory 2g spark.driver.memory 1g ``` 上述配置指定了 Master 地址以及 Executor 和 Driver 的内存大小。 ##### (2) **`spark-env.sh`** 这个脚本用来设定环境变量和其他高级选项。如果尚未存在,则可以从模板创建它: ```bash cp conf/spark-env.sh.template conf/spark-env.sh ``` 接着打开文件进行编辑,加入 JDKScala 的路径声明: ```bash JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 SCALA_HOME=/usr/local/scala ``` 注意这里假设已经完成了 Java 和 Scala安装与配置[^5]。 ##### (3) **`slaves` 文件** 列出所有的 Worker 节点主机名或 IP 地址。例如: ``` worker1.example.com worker2.example.com worker3.example.com ``` 保存后同步这些改动到其余机器上以保持一致性[^1]。 --- #### 4. 实现免密码 SSH 登陆 为了简化管理流程,建议配置无密码访问机制以便于跨节点通信。具体方法是在 Master 上生成公钥,并将其追加到各 Slave 用户家目录内的 authorized_keys 中去。 --- #### 5. 将 Spark 复制到其他节点 利用 SCP 工具或者 rsync 技术快速传播已调整完毕的数据副本给集群成员们共享使用: ```bash rsync -avz /usr/local/spark user@worker1:/usr/local/ ``` 重复以上指令直至覆盖全部目标位置为止。 --- #### 6. 启动 Spark 集群 进入任意一台作为主控角色的工作站里运行启动命令: ```bash sbin/start-all.sh ``` 此时会自动连接各个子单元形成整体网络体系[^3]。 可以通过浏览器输入 http://<Master_IP>:8080 来验证是否成功加载 Web UI 页面显示当前状态信息。 --- #### 7. 测试功能正常与否 最后安排简单的作业来检验整个系统的运转情况。例如提交一段基于 HDFS 存储数据源的任务实例化过程演示效果如何等等。 --- ### 注意事项 在整个过程中需要注意两点:一是确认防火墙策略允许必要的端口开放;二是时刻关注日志记录寻找潜在错误提示加以解决[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值