Spark 完全分布式集群搭建过程

本博客详细介绍了如何在Ubuntu虚拟机上搭建Spark2.1和Hadoop2.6的分布式集群。包括修改主机名、配置SSH无密码访问、安装Java和Scala环境、搭建Hadoop和Spark集群的每一步骤,适用于初学者和进阶者。

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

Spark2.1 +Hadoop2.6 搭建分布式集群

本篇博客由博主Ashely个人原创,如有转载,请注明出处:

目录


实验环境

1.1 服务器上启动三台虚拟机

ubuntu@vm06 192.168.110.106 master
ubuntu@vm05 192.168.110.105 slave1
ubuntu@vm04 192.168.110.104 slave2

1.2 软件版本:

Hadoop2.6.5 + Spark2.1.0 + Scala2.1.6

总体流程

1. 1 修改主机名(hosts)
    --> 所有节点都执行
2. 2 安装基础环境(jdk和scala)
    --> 所有节点都执行
3. 3 配置ssh无密码访问
    --> master -> slave1、slave2 ;  slave1、slave2 -> master
4. 4 搭建hadoop分布式集群
    --> master先执行,再scp到slave1、slave2; 还要改些配置
5. 5 搭建spark分布式集群
    --> master先执行,再scp到slave1、slave2; 还要改些配置

一. 修改主机名和hosts

1.1 更改主机名

ubuntu@vm06:~$ sudo vim /etc/hostname

改成master //其他两个分别改为slave1 和slave2
注意:本文的主机名全部以小写字母开头,后文在配置环境时注意不要误用大写!

1.2 修改hosts

ubuntu@vm06:~# sudo vim /etc/hosts

//将原文件(127.0.0.0 localhost)下面添加以下信息:

192.168.110.106 master
192.168.110.105 slave1
192.168.110.104 slave2
ubuntu@vm06:~# sudo source /etc/hosts

//退出后重启虚拟机

ubuntu@vm06:~# sudo reboot

//分别对集群中的所有节点进行以上相似的设置
这里写图片描述

二. 安装基础环境(Java和scala)

-对所有节点安装java和scala

2.1 Java环境搭建

1)下载jdk-1.8并解压到 /usr/local

ubuntu@master:~$ sudo wget .............
ubuntu@master:~$ sudo tar -zxvf jdk-8u152-linux-x64.tar.gz -C /usr/local/

2)添加java环境变量,在/etc/profile中添加:

ubuntu@master:~$ sudo vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_152
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/rt.jar
export JAVA_HOME PATH CLASSPATH

3)保存后刷新配置

ubuntu@master:~$ source /etc/profile

这里写图片描述

2.2 scala环境搭建

1)下载scala安装包scala-2.10.6.tgz安装到 /usr/lib

ubuntu@master:~$ sudo tar -zxvf scala-2.10.6.tgz -C /usr/lib/

2)添加Scala环境变量,在/etc/profile中添加:

ubuntu@master:~# sudo vim /etc/profile
export SCALA_HOME=/usr/lib/scala-2.10.6
export PATH=$SCALA_HOME/bin:$PATH

3)保存后刷新

ubuntu@master:~# source /etc/profile

这里写图片描述

三. ssh无密码验证配置

-对所有节点安装ssh


                
### 完全分布式模式下搭建Spark集群 #### 准备工作 为了成功部署Spark集群,在Ubuntu Kylin系统中,首先需要基于已有的Hadoop分布式集群环境进行操作[^1]。确保所有节点安装相同版本的操作系统,并完成必要的软件包更新。 #### JDK安装 JDK对于运行Java应用程序至关重要。通过命令`tar -zxvf jdk-8u181-linux-x64.tar.gz -C /home/hadoop/apps`可以将JDK解压缩到指定路径下[^4]。这一步骤确保了后续能够顺利编译和执行依赖于Java的应用程序。 #### Spark配置文件调整 进入Spark的`conf`目录并创建一个新的`spark-env.sh`脚本文件用于设置环境变量。此过程可以通过复制模板文件来简化:`cp spark-env.sh.template spark-env.sh`[^2]。接着编辑该文件以适应具体的网络拓扑结构和其他需求。 #### 节点间同步配置 一旦Master节点上的Spark安装完毕,则需将其分发给Slave节点(`slave01`, `slave02`)。具体做法是在这些从属机器上解压由主服务器传输来的`.tar.gz`档案,并确保它们指向相同的配置文件位置。特别注意的是,还需在各子节点上设定正确的`JAVA_HOME`环境变量以防启动失败[^3]。 #### 日志与性能优化参数定制 为了让集群更高效地运作以及便于监控其状态变化,建议适当调整一些默认选项。例如,在`spark-defaults.conf`里添加如下几项: ```properties spark.master spark://master:7077 spark.eventLog.enabled true spark.eventLog.dir hdfs://master:8020/spark-logs spark.serializer org.apache.spark.serializer.KryoSerializer spark.driver.memory 5g spark.executor.extraJavaOptions -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three" ``` 上述设置不仅启用了事件日志记录功能以便事后分析作业流程,还指定了序列化器类型从而提高数据交换效率;同时增加了内存分配量给予驱动程序更多资源支持复杂计算任务[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值