大数据学习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
相关推荐
sakoba10 分钟前
SpringMVC
java·学习
埃菲尔铁塔_CV算法14 分钟前
C# WPF 基础知识学习(一)
图像处理·人工智能·学习·计算机视觉·c#·wpf
西域编娃17 分钟前
Hadoop 集群部署与配置详解
大数据·linux·运维·hadoop·分布式
TDengine (老段)19 分钟前
TDengine 数据对接 EXCEL
大数据·数据库·sql·excel·时序数据库·tdengine
桂月二二1 小时前
云原生边缘计算:分布式智能的最后一公里革命
分布式·云原生·边缘计算
天若有情6732 小时前
【心理课堂】学习软件的道路上若感到了困难和迷茫怎么办
学习
青云交2 小时前
Java 大视界 -- Java 大数据在智能安防视频摘要与检索技术中的应用(128)
java·大数据·图像处理·机器学习·视频检索·智能安防·视频摘要
D-river2 小时前
【Academy】服务器端模板注入 ------ Server-side template injection
网络·学习·安全·web安全·网络安全
码农葫芦侠3 小时前
GitLab CI/CD学习教程(第一章概念)
学习·ci/cd·gitlab
小二·3 小时前
深入理解分布式锁——以Redis为例
数据库·redis·分布式