大数据学习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
相关推荐
kkkkkkkkkk_Z5 小时前
学嵌入式和C语言编程数据结构|学习日记Day22:栈,二叉树,哈希存储
c语言·数据结构·学习
星野川崎2066 小时前
电商多店运维:云机24小时挂机频繁掉线、账号无故风控深度原因分析及解决方案
大数据·运维·服务器·云计算·电商
2601_967097226 小时前
园区巡检机器人推荐:4项评估维度与主流产品横评
大数据·人工智能·信息可视化
whcyhhh7 小时前
头歌实践教学平台:大数据存储2023(六)
大数据·数据库·python
世岩清上7 小时前
新能源宣传片怎么拍?如何用画面讲好你的绿色能源故事
大数据·人工智能·能源·宣传片·宣传片拍摄
for_ever_love__8 小时前
python基础语法学习: 闭包
开发语言·python·学习·闭包
剑胆琴心静水深流8 小时前
全栈之路6---web集成与呈现
前端·vue.js·spring boot·分布式·spring·前端框架·npm
Elastic 中国社区官方博客8 小时前
让大模型思考,让小模型执行:在 Elastic Workflows 中拆分 LLM 成本
大数据·运维·数据库·人工智能·elasticsearch·ai
Faith_xzc9 小时前
一条 SQL 顶一条 Flink 链路?Doris Streaming Job 持续导入全景解析
大数据·数据库·sql·flink
SXkehuirongsheng9 小时前
APP开发定制和模板开发哪个更实用?
大数据·运维·人工智能