zoukankan      html  css  js  c++  java
  • 04、Spark Standalone集群搭建

    04、Spark Standalone集群搭建

    4.1 集群概述

    独立模式是Spark集群模式之一,需要在多台节点上安装spark软件包,并分别启动master节点和worker节点。master节点是管理节点,负责和各worker节点通信,完成worker的注册与注销。worker节点是任务执行节点,通过worker节点孵化出执行器子进程来执行任务。

    4.2 集群规划

    这里使用4台主机部署Spark集群,主机名称分别是s101、s102、s103和s104。

    s101					#Master节点
    s102					#Worker节点
    s103					#Worker节点
    s104					#Worker节点
    

    4.3 集群搭建

    4.3.1 安装Spark软件包

    按照前文安装spark软件包的方式分别在以上四台主机上安装Spark,注意目录和权限尽量保持一致,以便集群容易维护和管理。也可以将之前的Spark安装目录和环境变量文件分发到以上四台主机。具体安装步骤略。

    4.3.2 配置hadoop软连接

    在以上四台机的spark配置目录下,创建core-site.xml和hdfs-site.xml软连接文件指向hadoop的配置文件。

    #进入配置目录
    $>cd /soft/spark/conf
    
    #创建软连接
    $>ln -s /soft/hadoop/etc/hadoop/core-site.xml core-site.xml
    $>ln -s /soft/hadoop/etc/hadoop/hdfs-site.xml hdfs-site.xml
    

    创建完成后,如下图所示:

    微信截图_20180511140022

    4.3.3 修改slaves文件

    只需要在master节点对该文件进行修改即可,但为了保持所有节点配置一致性,我们对所有节点都进行修改,或者修改后进行分发。slaves文件内容如下:

    #使用如下命令进入slaves文件编辑模式
    $>nano /soft/spark/conf/slaves
    
    #输入如下内容,列出所有worker节点。
    s102
    s103
    s104
    

    4.3.4 配置JAVA_HOME环境变量

    修改配置目录下spark-env.sh文件,指定JAVA_HOME环境变量。

    #使用如下命令进入spark-env.sh文件编辑模式
    $>nano /soft/spark/conf/spark-env.sh
    
    #添加如下内容
    ...
    export JAVA_HOME=/soft/jdk
    ...
    

    编辑内容如下图所示:

    微信截图_20180511140023

    4.4 启动集群

    启动spark集群时,如果配置了hadoop配置文件,需要先启动hadoop集群,然后再启动Spark集群。由于Spark Standalone集群模式只是从hdfs读取文件,并不需要yarn的支持,因此只需要启动hadoop的hdfs相关进程即可。

    #启动hadoop hdfs
    $>/soft/hadoop/sbin/start-dfs.sh
    
    #启动Spark集群
    $>/soft/spark/sbin/start-all.sh
    

    注意:Spark和Hadoop都有启动所有进程的脚本,并且都叫start-all.sh,因此再使用时一定要使用绝对路径。

    查看进程结果如图:

    微信截图_20180609224524

    4.5 查看webui

    通过如下url地址访问spark webui:

    http://s101:8080/
    

    打开页面如下图所示:

    微信截图_20180609225035

  • 相关阅读:
    面试题八 二进制中 1 的个数
    面试题七 斐波那契数列
    面试题六 用两个栈实现队列
    第 3 章 第 2 题 求级数问题 递归法实现
    第 3 章 第 1 题 精简冗余 if 语句问题 使用数组实现
    第 2 章 第 10 题 测量电灯泡体积问题
    第 2 章 第 9 题 顺序 & 二分搜索效率分析问题
    带缓冲的IO( 标准IO库 )
    Linux 中权限控制实例
    Linux 中权限的再讨论( 下 )
  • 原文地址:https://www.cnblogs.com/xupccc/p/9543969.html
Copyright © 2011-2022 走看看