大数据学习06-Spark分布式集群部署

Spark完全分布式部署

前期准备,每台服务器都需要配置

配置好IP
vim /etc/sysconfig/network-scripts/ifcfg-ens33

shell 复制代码
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="bcd315b9-9d9a-4ad7-8f75-9546f71e49a4"
DEVICE="ens33"
ONBOOT="yes"

IPADDR=192.168.245.200 #IP地址
GATEWAY=192.168.245.1  #默认网关
NETWORK=255.255.255.0  #子网掩码
DNS1=114.114.114.114   #DNS
DNS2=8.8.8.8

修改主机名
vi /etc/hostname

做好IP映射
vim /etc/hosts

shell 复制代码
192.168.245.200 master
192.168.245.201 slave1
192.168.245.202 slave2

关闭防火墙
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld

配置SSH免密登录
ssh-keygen -t rsa

shell 复制代码
for i in {1..2};do scp -r ~/.ssh/authorized_keys root@slave${i}:~/.ssh/;done

安装Scala

下载Scala安装包

shell 复制代码
tar -zxvf scala-2.11.12.tgz -C /home/local

配置环境变量

shell 复制代码
vim /etc/profile

添加如下配置

shell 复制代码
export SCALA_HOME=/home/local/scala
export PATH=$SCALA_HOME/bin:$PATH

使环境生效

shell 复制代码
source /etc/profile

验证

shell 复制代码
scala -version

安装spark

Spark官网

解压

上传软件安装包至linux系统 /home/tools目录下

shell 复制代码
tar -zxvf spark-2.2.3-bin-hadoop2.6.tgz -C /home/local

移动文件目录至spark

shell 复制代码
mv spark-2.2.3-bin-hadoop2.6 spark

配置环境

shell 复制代码
export SPARK_HOME=/home/local/spark
export PATH=$PATH:${SPARK_HOME}/bin:${SPARK_HOME}/sbin

修改配置

进入${SPARK_HOME}/conf路径下,拷贝spark-env.sh.template为spark-env.sh

shell 复制代码
cp spark-env.sh.template spark-env.sh

修改spark-env.sh文件

shell 复制代码
vim spark-env.sh

添加如下配置

shell 复制代码
export JAVA_HOME=/home/local/java

export SCALA_HOME=/home/local/scala

export SPARK_DIST_CLASSPATH=$(/home/local/hadoop/bin/hadoop classpath)

export HADOOP_CONF_DIR=/home/local/hadoop/etc/hadoop
#指定spark主节点,通过主机映射
export SPARK_MASTER_HOST=master
#指定从节点worker并行数量
export SPARK_WORKER_CORES=2
#指定内存大小
export SPARK_WORKER_MEMORY=2g
#指定主节点端口
export SPARK_MAETER_PORT=7070

拷贝slave.template为slaves

shell 复制代码
cp slaves.template slaves

修改slaves文件

shell 复制代码
[root@master conf]# vim slaves
master
slave1
slave2

分发spark目录至每个服务器节点

shell 复制代码
for i in {1..2};do scp -r /home/local/spark/ root@slave${i}:/home/local/;done

在${SPARK_HOME}/sbin目录下启动spark

shell 复制代码
./start-all.sh
相关推荐
SWAGGY..2 分钟前
数据结构学习篇(8)---二叉树
数据结构·学习·算法
万小猿13 分钟前
互联网大厂Java求职面试模拟实战:谢飞机的三轮提问与详细解答
java·大数据·spring boot·微服务·面试·技术解析·互联网大厂
Coder_Boy_15 分钟前
基于SpringAI企业级智能教学考试平台试卷管理模块全业务闭环方案
java·大数据·人工智能·spring boot·springboot
newrank_kk24 分钟前
下一代品牌战略:把智汇GEO作为核心品牌AI形象管理工具
大数据·人工智能
行业探路者25 分钟前
资产标识二维码的高效管理与模板重新生成策略
大数据·人工智能·安全·二维码·设备巡检
胡萝卜的兔30 分钟前
go-zero rpc 分布式 微服务
分布式·rpc·golang
郑泰科技1 小时前
hbase 避坑F:\hbase\hadoop\sbin>start-dfs.cmd 系统找不到文件 hadoop。
大数据·数据库·hadoop·hdfs·hbase
强子感冒了1 小时前
Java List学习笔记:ArrayList与LinkedList的实现源码分析
java·笔记·学习
极客范儿1 小时前
2025年度学习总结
学习
YJlio1 小时前
PsPing 学习笔记(14.2):TCP Ping——端口连通性与服务在线性秒级体检
笔记·学习·tcp/ip