CentOs-7 Spark 完全分布式 搭建

1.准备好安装了jdk的虚拟机
---------------(Spark并不是必须依赖于Hadoop,它是一个通用性的集群计算平台,可以用来替代Hadoop的MapReduce,因为相比较而言,Spark更加高效)
2.下载并在Linux上安装spark
3.选择节点打通无密登录(1台做master节点,另外几台做worker节点)
4.在conf下cp出slaves 和 spark-env.sh,并i修改
---------------修改4.1Slaves
---------------修改4.2spark-env.sh
5.修改sbin下spark-config.sh
6.配置从节点
7.启动spark
---------------到主节点spark的sbin下运行 start-all.sh
8 spark集成hive(题外)

1.准备好安装了jdk的虚拟机

(我这里是在已经搭建好的Hadoop完全分布式基础上继续搭建的上,Spark并不是必须依赖于Hadoop,它是一个通用性的集群计算平台,可以用来替代Hadoop的MapReduce,因为相比较而言,Spark更加高效)

2.下载并在Linux上安装spark

在这里插入图片描述

  • cd /usr/soft/
  • ls
    查看当前目录下文件
  • tar -zxvf spark-2.4.3-bin-hadoop2.6.tgz
    解压
    在这里插入图片描述
    因为IP地址变了,所以改一下hosts文件
    在这里插入图片描述
    在这里插入图片描述
  • mv spark-2.4.3-bin-hadoop2.6 spark-2.4.3
    解压后文件夹名太长,改个名字
    在这里插入图片描述
3.选择节点打通无密登录

(1台做master节点,另外几台做worker节点)
我的也已经配好了!
在这里插入图片描述
试验一下能否无秘登陆另外几个节点(下面是一个实例);
在这里插入图片描述

  • ssh-keygen -r rsa
    生成密钥
  • cd .ssh/
    相对路径
  • ls
  • cat id_rsa.pub >> authorized_keys
    查看文件加管道命令
  • scp authorized_keys root@node-2:$PWD
    ……
    把公钥拷贝到另外几台节点的相同路径下
    然后登陆试验一下
4.在Spark的conf目录下cp出slaves 和 spark-env.sh,并修改

本身是没有这两个文件的,所以通过模板拷贝一份
在这里插入图片描述

4.1修改Slaves

声明有几个重节点

  • vi slaves
    在这里插入图片描述
    node-2
    node-3
    node-4
    在这里插入图片描述
4.2修改spark-env.sh
  • vi spark-env.sh
    在这里插入图片描述
  • 声明主节点IP地址
  • 声明主节点提交任务的端口
  • 声明每个重节点可以使用几核处理任务(根据集群中计算机的性能来定)
    2核就代表可以同时处理两个任务(这里的核和计算机的一核两个线程处理任务时不一样)
  • 声明每个重节点处理任务时使用多大的内存
  • 声明spark监视窗口的端口
    这里要修改spark监视窗口的端口,因为默认是8080和汤姆猫冲突
export SPARK_MASTER_HOST=node-1
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_CORES=1
export SPARK_WORKER_MEMORY=3g
export SPARK_MASTER_WEBUI_PORT=8888

//用来关联hadoop
export JAVA_HOME=/opt/jdk/
export HADOOP_HOME=/opt/hadoop-2.7.3
export HADOOP_CONF_DIR=/opt/hadoop-2.7.3/etc/hadoop

在这里插入图片描述

5.修改spark的sbin目录下 spark-config.sh文件

声明jdk路径(1x可以自动识别,2x则需要自己配置)

  • echo $JAVA_HOME
    查看jdk路径
  • vi spark-config.sh
export JAVA_HOME=/usr/soft/jdk1.8.0_111/

在这里插入图片描述
在这里插入图片描述

6.配置重节点
  • scp -r spark-2.4.3/ root@node-3:$PWD
    把spark-2.4.3文件夹下的所有拷贝到node-3的相同路径下
    有几个重节点就拷几台
    在这里插入图片描述
7.启动spark

无法配置全局变量,得到主节点spark的sbin下运行 start-all.sh,因为启动命令和Hadoop得冲突了;

  • cd /usr/soft/spark-2.4.3/sbin/
    进入此路径
  • ./start-all.sh
    在当前路径下使用此命令(启动Spark)
    在这里插入图片描述
  • 下面通过主节点IP和在spark-env.sh文件里设置的端口号登陆页面查看
    在这里插入图片描述
    如上图所有的节点都启动起来了;
    成功!
8 spark集成hive(题外)
spark链接hive有两种方式
  • 一、
    1 将hive 的conf路径下的hive-site.xml文件拷贝到sparkconf路径下
    按下图模版修改
    在这里插入图片描述
<configuration>
        <property>
                <name>hive.metastore.uris</name>
                <value>thrift://love:9083</value>
        </property>
</configuration>

2.在启动spark-sql前先开启metastore服务
启动hive的metastore服务,spark通过hive的metastore得到文件元数据信息再去hdfs获取文件

hive --service metastore &

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 二、
    在命令行临时指定
spark-shell --conf spark.hadoop.hive.metastore.uris=thrift://localhost:9083
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值