文库网
关注排行榜

当前无数据...

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

@本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府
这篇文章主要介绍了Spark分布式集群环境搭建基于Python版,Apache Spark 是一个新兴的大数据处理通用引擎,提供了分布式的内存抽象。100 倍本文而是使用三台电脑来搭建一个小型分布式集群环境安装,需要的朋友可以参考下
前言

Apache Spark 是一个新兴的大数据处理通用引擎,提供了分布式的内存抽象。Spark 最大的特点就是快,可比 Hadoop MapReduce 的处理速度快 100 倍。本文没有使用一台电脑上构建多个虚拟机的方法来模拟集群,而是使用三台电脑来搭建一个小型分布式集群环境安装。
本教程采用Spark2.0以上版本(比如Spark2.0.2、Spark2.1.0等)搭建集群,同样适用于搭建Spark1.6.2集群。

安装Hadoop并搭建好Hadoop集群环境
Spark分布式集群的安装环境,需要事先配置好Hadoop的分布式集群环境。

安装Spark

这里采用3台机器(节点)作为实例来演示如何搭建Spark集群,其中1台机器(节点)作为Master节点,另外两台机器(节点)作为Slave节点(即作为Worker节点),主机名分别为Slave01和Slave02。
在Master节点机器上,访问Spark官方下载地址,按照如下图下载。

{tilte}-风雪C

下载完成后,执行如下命令:

  1. <code class="prism language-bash">sudo tar -zxf ~/下载/spark-2.0.2-bin-without-hadoop.tgz -C /usr/local/
  2. cd /usr/local
  3. sudo mv ./spark-2.0.2-bin-without-hadoop/ ./spark
  4. sudo chown -R hadoop ./spark
  5. </code>
复制代码

配置环境变量

在Mster节点主机的终端中执行如下命令:

  1. <code class="prism language-bash">vim ~/.bashrc
  2. </code>
复制代码

在.bashrc添加如下配置:

  1. <code class="prism language-bash">export SPARK_HOME=/usr/local/spark
  2. export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
  3. </code>
复制代码

执行如下命令使得配置立即生效:

  1. <code class="prism language-bash">source ~/.bashrc
  2. </code>
复制代码

Spark配置
在Master节点主机上进行如下操作:

配置slaves文件
将 slaves.template 拷贝到 slaves

  1. <code class="prism language-bash">cd /usr/local/spark/
  2. cp ./conf/slaves.template ./conf/slaves
  3. </code>
复制代码

slaves文件设置Worker节点。编辑slaves内容,把默认内容localhost替换成如下内容:

  1. <code class="prism language-bash">slave01
  2. slave02
  3. </code>
复制代码

配置spark-env.sh文件
将 spark-env.sh.template 拷贝到 spark-env.sh

  1. <code class="prism language-bash">cp ./conf/spark-env.sh.template ./conf/spark-env.sh
  2. </code>
复制代码

编辑spark-env.sh,添加如下内容:

  1. <code class="prism language-bash">export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
  2. export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
  3. export SPARK_MASTER_IP=192.168.1.104
  4. </code>
复制代码

SPARK_MASTER_IP 指定 Spark 集群 Master 节点的 IP 地址;

配置好后,将Master主机上的/usr/local/spark文件夹复制到各个节点上。在Master主机上执行如下命令:

  1. <code class="prism language-bash">cd /usr/local/
  2. tar -zcf ~/spark.master.tar.gz ./spark
  3. cd ~
  4. scp ./spark.master.tar.gz slave01:/home/hadoop
  5. scp ./spark.master.tar.gz slave02:/home/hadoop
  6. </code>
复制代码

在slave01,slave02节点上分别执行下面同样的操作:

  1. <code class="prism language-bash">sudo rm -rf /usr/local/spark/
  2. sudo tar -zxf ~/spark.master.tar.gz -C /usr/local
  3. sudo chown -R hadoop /usr/local/spark
  4. </code>
复制代码

启动Spark集群
启动Hadoop集群
启动Spark集群前,要先启动Hadoop集群。在Master节点主机上运行如下命令:

  1. <code class="prism language-bash">cd /usr/local/hadoop/
  2. sbin/start-all.sh
  3. </code>
复制代码

启动Spark集群
1.启动Master节点
在Master节点主机上运行如下命令:

  1. <code class="prism language-bash">cd /usr/local/spark/
  2. sbin/start-master.sh
  3. </code>
复制代码

在Master节点上运行jps命令,可以看到多了个Master进程:

  1. <code class="prism language-bash">15093 Jps
  2. 14343 SecondaryNameNode
  3. 14121 NameNode
  4. 14891 Master
  5. 14509 ResourceManager
  6. </code>
复制代码

2.启动所有Slave节点
在Master节点主机上运行如下命令:

  1. <code class="prism language-bash">sbin/start-slaves.sh
  2. </code>
复制代码

分别在slave01、slave02节点上运行jps命令,可以看到多了个Worker进程

  1. <code class="prism language-bash">37553 DataNode
  2. 37684 NodeManager
  3. 37876 Worker
  4. 37924 Jps
  5. </code>
复制代码

3.在浏览器上查看Spark独立集群管理器的集群信息
在master主机上打开浏览器,访问http://master:8080,如下图:

{tilte}-风雪C

关闭Spark集群
1.关闭Master节点

  1. <code class="prism language-bash">sbin/stop-master.sh
  2. </code>
复制代码

2.关闭Worker节点

  1. <code class="prism language-bash">sbin/stop-slaves.sh
  2. </code>
复制代码

3.关闭Hadoop集群

  1. <code class="prism language-bash">cd /usr/local/hadoop/
  2. sbin/stop-all.sh
  3. </code>
复制代码

非常感谢你的阅读
大学的时候选择了自学python,工作了发现吃了计算机基础不好的亏,学历不行这是没办法的事,只能后天弥补,于是在编码之外开启了自己的逆袭之路,不断的学习python核心知识,深入的研习计算机基础知识,整理好了,我放在我们的微信公众号《程序员学府》,如果你也不甘平庸,那就与我一起在编码之外,不断成长吧!

其实这里不仅有技术,更有那些技术之外的东西,比如,如何做一个精致的程序员,而不是“屌丝”,程序员本身就是高贵的一种存在啊,难道不是吗?[点击加入]
想做你自己想成为高尚人,加油!


本站资源均由网上搜集或网友上传提供,内容仅供观摩学习交流之用,本站将不对任何资源负法律责任.如有侵犯您的版权,请及时联系我们(邮箱:892481490@qq.com,客服QQ:892481490),我们会尽快处理!QQ350550790是骗子,注意不要和他交易!!!
发帖求助前要善用【论坛搜索】功能, 那里可能会有你要找的答案,也能为你节约不少学习时间;
如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加(威望)和(贡献)而不会扣除自己的积分。
如发现灌水帖、病毒木马帖、广告帖、工具不能正常使用、网盘链接失效,请点击【举报】 核实有几率会给予额外的B币奖励哦!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    发布资源 快速回复 返回列表 客服中心 官方QQ群

    QQ|小黑屋|手机版|编程之家论坛 ( 桂ICP备18002029号 )

    Powered by 编程之家  © 20019-2021