大数据学习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
相关推荐
2401_881203967 分钟前
一网统管 | 赋能智慧养老,守护夕阳美好时光
大数据·智慧养老·一网统管
zcmodeltech14 分钟前
智能矿井沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的感知-传输-控制一体化方案
服务器·数据库·分布式·stm32·单片机·嵌入式硬件
A hao18 分钟前
免校准 XR技术:打造沉浸式显示系统的关键技术
大数据
米瑞格门窗1 小时前
上海系统门窗哪个靠谱
大数据·人工智能·安全·家装·家装建材·系统门窗
江晓鱼未暖1 小时前
十七、Redis 核心原理与架构详解
大数据·数据库·数据仓库·redis·缓存·架构
Web3_Daisy1 小时前
如何在Robinhood Chain创建 Uniswap V3 流动性池
大数据·人工智能·web3·区块链
编程圈子1 小时前
电机驱动开发学习21. R3_2 双相扇区电流采样与第三相重构
驱动开发·学习·重构
wWYy.1 小时前
基于Raft分布式Kv存储:RPC调用
分布式·rpc
长三角活动观察2 小时前
政企线下活动全流程项目管控方案:苏州独石传媒长三角多场景落地实践总结
大数据·人工智能·传媒
笨蛋不要掉眼泪2 小时前
RabbitMQ消息队列:SpringAMQP
java·分布式·rabbitmq