CentOS 搭建Spark完全分布式环境

一、安装 Spark

1. 解压安装包

将 spark 安装包解压并移动到 /usr/local/src 路径,并重命名目录。

tar -zxvf spark-2.1.1-bin-hadoop2.7.tgz
mv spark-2.1.1-bin-hadoop2.7 /usr/local/src
cd /usr/local/src
mv spark-2.1.1-bin-hadoop2.7 spark

2. 配置环境变量

  • 设置 spark 环境变量,只对 root 用户生效,修改 /root/.bash_profile 文件。
  • 如果要设置全局变量则修改 /etc/profile 文件
vi /root/.bash_profile

在文末追加以下文字:

# set spark environment
export SPARK_HOME=/usr/local/src/spark
export PATH=$PATH:$SPARK_HOME/bin

让环境变量生效

source /root/.bash_profile 

二、配置 spark

  • spark 的配置文件都放在 spark/conf 目录下。

1. 修改 spark-env.sh 文件

  • 因为没有 spark-env.sh,所以要复制 spark-env.sh.template 成 spark-env.sh
cd /usr/local/src/spark/conf/
cp spark-env.sh.template spark-env.sh
vi spark-env.sh
  • 修改 spark-env.sh 文件,添加以下内容:
export JAVA_HOME=/usr/local/src/jdk1.8.0_162
export HADOOP_CONF_DIR=/usr/local/src/hadoop-2.7.7/etc/hadoop
export SPARK_MASTER_HOST=master
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_MEMORY=4g
export SPARK_WORKER_CORES=3
export SPARK_WORKER_INSTANCES=1
export SPARK_EXECUTOR_MEMORY=4g
export SPARK_EXECUTOR_CORES=3

根据自己的软件安装目录设置路径。

2. 修改 slaves 文件

  • 因为没有 slaves ,所以要复制 slaves.template 成 slaves
cp slaves.template slaves
vi slaves
  • 修改 slaves 文件,添加以下内容(所拥有的节点,有哪个就写哪个,没配置映射就写ip):
master
slave1
slave2

2. 修改 spark-defaults.conf 文件

  • 因为没有 spark-defaults.conf,所以要复制 spark-defaults.conf.template 成 spark-defaults.conf
cp spark-defaults.conf.template spark-defaults.conf
vi spark-defaults.conf
  • 修改 spark-defaults.conf 文件,添加以下内容:
spark.master                     spark://master:7077
spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://master:8021/directory

三、节点配置 spark

1. 传输文件

  • 用 scp 把环境变量文件以及 spark 解压后的安装文件到 slave1、slave2 节点。
  • 如果不知道怎么使用 scp,转到 Linux 之间传输文件
scp -r /usr/local/src/spark root@slave1:/usr/local/src/
scp -r /usr/local/src/spark root@slave2:/usr/local/src/
scp /root/.bash_profile  root@slave1:/root/
scp /root/.bash_profile  root@slave2:/root/

2. 修改 spark-env.sh 文件

在 slave1 和 slave2 分别修改 /conf/spark-env.sh 文件。

ssh root@slave1
cd /usr/local/src/spark/conf/
vi spark-env.sh

添加:

export SPARK_LOCAL_IP=192.168.1.102 # 本节点的IP,在哪个节点就填对应节点的IP。

# export SPARK_LOCAL_IP=192.168.1.103

四、启动和验证

1. 启动 spark

  • 在 master 节点启动集群。
cd /usr/local/src/spark/sbin/
./start-all.sh
./start-history-server.sh hdfs://master:8021/directory

在这里插入图片描述

  • 关闭集群
cd /usr/local/src/spark/sbin/
./stop-all.sh
./stop-history-server.sh hdfs://master:8021/directory

2. 验证

  • 查看集群是否启动成功:
    master 节点在 Hadoop 的基础上新增了 Master 和 Worker
    在这里插入图片描述
    slave 节点在 Hadoop 的基础上新增了 Worker
    在这里插入图片描述
  • Spark监控——http://master:8080

在这里插入图片描述

  • 如果访问不了就关闭防火墙。
systemctl stop firewalld
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iFulling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值