spark集群详细搭建过程及遇到的问题解决(三)

上篇文章中讲完了如何配置免密码登录的问题,现在讲述下,三个节点的环境配置过程。

所需要的hadoop-2.7.3.tar.gz 、 jdk-7u79-linux-x64.tar.gz 、 scala-2.11.6.tgz 、 spark-2.0.1-bin-hadoop2.7.tgz 可以点击这里获取,资源存放在百度云盘。

首先需要在三个节点中分别创建spark目录

master节点、worker1节点、worker2节点同时执行:下面以master节点为例,部分操作worker1与worker2不需要执行,不需要worker1,worker2执行的将给出注释,请仔细看清。

[email protected]:~/.ssh$ cd ..
[email protected]:~$ mkdir spark

注意所创建的spark目录属于spark用户,hadoop组

[email protected]:~$ cd spark/

在这里要介绍一个工具winSCP,功能是能够在windows 与ubuntu 之间传递文件,之所以不推荐使用lrzsz包中的rz 进行传递是因为rz只能够传递比较小的文件,对于大的文件,使用这个将会传递失败,有趣的是可以使用命令sudo rz 进行传递,但是,当上传之后,你可以看到所上传的文件所属的用户将变成了root,这将会导致后面配置的错误。因此,必须使用winSCP进行传递。winSCP也在刚才的百度云盘中。

上图显示了winSCP工具界面,根据自己的文件目录进行上传,或者可以直接拖

依次对上传的包进行解压,注意:在worker1和worker2中只需上传jdk-7u79-linux-x64.tar.gz 、 scala-2.11.6.tgz ,而在master中则要全部上传四个文件

[email protected]:~/spark$ tar -zxvf hadoop-2.7.3   #只在master节点执行
[email protected]:~/spark$ tar -zxvf jdk-7u79-linux-x64.tar.gz   #三个节点都要执行
[email protected]:~/spark$ tar -zxvf scala-2.11.6.tgz    #三个节点都要执行
[email protected]:~/spark$ tar -zxvf spark-2.0.1-bin-hadoop2.7.tgz    #只在master节点执行

解压之后,为方便调用,建立软连接

[email protected]:~/spark$ ln -s hadoop-2.7.3 hadoop    #只在master节点执行
[email protected]:~/spark$ ln -s jdk1.7.0_79/ jdk       #三个节点都要执行
[email protected]:~/spark$ ln -s scala-2.11.6 scala      #三个节点都要执行
[email protected]:~/spark$ ln -s spark-2.0.1-bin-hadoop2.7 spark    #只在master节点执行

切换到root下进行环境配置

[email protected]:~/spark$ sudo su
[sudo] password for spark: 
[email protected]:/home/spark/spark# vim /etc/profile

在文件最底部添加:

export JAVA_HOME=/home/spark/spark/jdk      #三个节点都要添加
export SCALA_HOME=/home/spark/spark/scala     #三个节点都要添加
export HADOOP_HOME=/home/spark/spark/hadoop   #三个节点都要添加
export SPARK_HOME=/home/spark/spark/spark      #三个节点都要添加

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$SCALA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SPARK_HOME/bin

保存,使其生效,并退回到spark用户

[email protected]:/home/spark/spark# source /etc/profile
[email protected]:/home/spark/spark# exit
exit
[email protected]:~/spark$

至此可以查看下java环境,scala,hadoop 环境是否已经安装成功

[email protected]:~/spark$ java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

java环境已经配置成功

[email protected]:~/spark$ scala -version
Scala code runner version 2.11.6 -- Copyright 2002-2013, LAMP/EPFL

scala已经配置成功

至此上述是三个节点同时执行的。

接下来,master节点上的配置

[email protected]:~/spark$ hadoop version
Hadoop 2.7.3
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r baa91f7c6bc9cb92be5982de4719c1c8af91ccff
Compiled by root on 2016-08-18T01:41Z
Compiled with protoc 2.5.0
From source with checksum 2e4ce5f957ea4db193bce3734ff29ff4
This command was run using /home/spark/spark/hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar

hadoop环境成功

接下来开始配置hadoop

[email protected]:~/spark$ cd hadoop/etc/hadoop/
[email protected]:~/spark/hadoop/etc/hadoop$  vim slaves

删除里面内容,并添加一下内容:

保存即可

依照下述命令进行文件的更改

[email protected]:~/spark/hadoop/etc/hadoop$ vim hadoop-env.sh

添加或更改文件中相关的变量,本人在这个地方踩了不少坑,如果不添加,会在后面报错。

添加完毕后,记得保存。

[email protected]:~/spark/hadoop/etc/hadoop$ vim core-site.xml

添加内容到

<configuration>内容</configuration>

内容如下:

<property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
        <description>The name of the default file system.  A URI whose scheme and authority determine the FileSystem implementation.  The uri‘s scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri‘s authority is used to determine the host, port, etc. for a filesystem.
        </description>
    </property>

 <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/spark/spark/hadoop/tmp</value>
        <description>A base for other temporary directories.</description>
    </property>
[email protected]:~/spark/hadoop/etc/hadoop$ vim hdfs-site.xml

添加内容到

<configuration>内容</configuration>

内容如下:

<property>
        <name>dfs.replication</name>
        <value>3</value>
        <description>Default block replication.The actual number of replications can be specified when the file iscreated.The default is used if replication is not specified in create time.
        </description>
    </property>
[email protected]:~/spark/hadoop/etc/hadoop$ vim yarn-site.xml

添加内容到

<configuration>内容</configuration>

内容如下:

<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
</property>
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>
[email protected]:~/spark/hadoop/etc/hadoop$ cp mapred-site.xml.template mapred-site.xml
[email protected]:~/spark/hadoop/etc/hadoop$ vim mapred-site.xml

添加内容到

<configuration>内容</configuration>

内容如下:

<property>
   <name>mapreduce.framework.name</name>
     <value>yarn</value>
       <description>The runtime framework for executing MapReduce jobs.
         Can be one of local, classic or yarn.默认是local,适合单机
       </description>
  </property>
[email protected]:~/spark/hadoop/etc/hadoop$ vim yarn-site.xml

添加内容到

<configuration>内容</configuration>

内容如下:

<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
</property>
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>
[email protected]:~/spark/hadoop/etc/hadoop$ vim yarn-env.sh

添加以下内容在文件中地开始

export JAVA_HOME=/home/spark/spark/jdk
export YARN_PID_DIR=/home/spark/spark/hadoop/tmp/pid

保存文件

切换到worker1节点中

执行

[email protected]:~/spark$ scp -r [email protected]:/home/spark/spark/hadoop ./hadoop

注意:./hadoop,代表将master中spark用户下的/home/spark/spark/hadoop复制为hadoop,此名称要跟之前在/etc/profile中设置的hadoop环境变量名称一致。

在worker1中做下测试。

[email protected]:~/spark$ hadoop version
Hadoop 2.7.3
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r baa91f7c6bc9cb92be5982de4719c1c8af91ccff
Compiled by root on 2016-08-18T01:41Z
Compiled with protoc 2.5.0
From source with checksum 2e4ce5f957ea4db193bce3734ff29ff4
This command was run using /home/spark/spark/hadoop/share/hadoop/common/hadoop-common-2.7.3.jar

显示成功

切换到worker2节点中

[email protected]:~/spark$ scp -r [email protected]:/home/spark/spark/hadoop ./hadoop

在worker2下做下测试。

[email protected]:~/spark$ hadoop version
Hadoop 2.7.3
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r baa91f7c6bc9cb92be5982de4719c1c8af91ccff
Compiled by root on 2016-08-18T01:41Z
Compiled with protoc 2.5.0
From source with checksum 2e4ce5f957ea4db193bce3734ff29ff4
This command was run using /home/spark/spark/hadoop/share/hadoop/common/hadoop-common-2.7.3.jar

显示成功

初始化hadoop集群

[email protected]:~/spark/hadoop/etc/hadoop$ hadoop namenode -format

若红色方框中的status为0则代表初始化成功,若为1,则为失败

启动集群

[email protected]:~/spark/hadoop/etc/hadoop$ $HADOOP_HOME/sbin/start-all.sh

然后在浏览器中输入 http://master_ip:50070/   master_ip代表master的ip地址端口号为50070

时间: 2024-12-19 06:53:04

spark集群详细搭建过程及遇到的问题解决(三)的相关文章

spark集群详细搭建过程及遇到的问题解决(二)

(二)配置ssh无密码访问集群机器 master节点 [email protected]:/home# su - spark [email protected]:~$  [email protected]:~$ ssh-keygen -t rsa #一直enter键 [email protected]:~$ cd .ssh/ [email protected]:~/.ssh$ ls id_rsa  id_rsa.pub [email protected]:~/.ssh$  cat id_rsa.

spark集群详细搭建过程及遇到的问题解决(一)

注:其中也参考了网上的许多教程,但很多网上的教程在配置过程中,会出很多错误,在解决的过程中,做出了总结. 此文是针对小白.如有不对,请大神们指教.... 配置环境系统:Ubuntu16.04 配置版本分别为:hadooop 2.7.3.java "1.7.0_79".Scala2.11.6.spark-2.0.1-bin-hadoop2.7 本实验主要配置三个节点的小集群: 配置节点分为一个master.两个worker 接下来开始一步一步进行配置 (一)基础配置 master节点 #

Spark集群框架搭建【VM15+CentOS7+Hadoop+Scala+Spark+Zookeeper+HBase+Hive】

目录 1 目的 2 准备工作 3 安装过程 3.1 在虚拟机中安装CentOS7 3.1.1 虚拟机设置 3.1.2 安装Linux系统 3.2 JAVA环境 3.2.1 卸载Linux自带的jdk 3.2.2 下载并安装最新版本的jdk 3.2.3 环境变量设置 3.3 SSH免密登陆 3.3.1 准备工作 3.3.2 设置免密登陆 3.4 Hadoop2.7.2安装及集群配置 3.4.1 Hadoop安装 3.4.2 伪分布式集群配置 3.4.3 启动hadoop 3.5 Spark安装及环

Hadoop+Spark:集群环境搭建

环境准备: 在虚拟机下,大家三台Linux ubuntu 14.04 server x64 系统(下载地址:http://releases.ubuntu.com/14.04.2/ubuntu-14.04.2-server-amd64.iso): 192.168.1.200 master 192.168.1.201 node1 192.168.1.202 node2 在Master上安装Spark环境: 具体请参考我的文章:<Hadoop:搭建hadoop集群> Spark集群环境搭建: 搭建h

Redis中sentinel集群的搭建和Jedis测试 图文教程[三]

在前两篇Redis中sentinel集群的搭建和Jedis测试 图文教程[一] 和Redis中sentinel集群的搭建和Jedis测试 图文教程[二] 中分别简述了Redis中sentinel集群的搭建和Java代码的Jedis测试. 这篇主要来简单分析一下Redis-sentinel集群的原理,根据追踪sentinel信息来完成Redis-sentinel集群测试中的详细的原理分析.包括master-slave各个中的sentinel信息的分析,failover过程,master宕机后的le

spark集群搭建

Spark集群环境搭建 2015年09月27日中秋节,祝中秋快乐团圆 1安装jdk 略 2安装scala 在http://www.scala-lang.org scala官网下载安装包,这里以scala-2.11.7为例: 1)下载scala-2.11.7.tgz 2)在目录下解压缩: tar -xzvf scala-2.11.7.tgz 3)配置环境变量,在/etc/profile中添加以下的内容: export SCALA_HOME=实际安装路径 export PATH=${SCALA_HO

大数据:spark集群搭建

创建spark用户组,组ID1000 groupadd -g 1000 spark 在spark用户组下创建用户ID 2000的spark用户 获取视频中文档资料及完整视频的伙伴请加QQ群:947967114useradd -u 2000 -g spark spark 设置密码 passwd spark 修改sudo权限 chmod u+w /etc/sudoers vi /etc/sudoers 找到 root ALL=(ALL) ALL 添加 spark ALL=(ALL) ALL 创建一个

Spark 个人实战系列(1)--Spark 集群安装

前言: CDH4不带yarn和spark, 因此需要自己搭建spark集群. 这边简单描述spark集群的安装过程, 并讲述spark的standalone模式, 以及对相关的脚本进行简单的分析. spark官网: http://spark.apache.org/downloads.html *)安装和部署 环境: 172.16.1.109~172.16.1.111三台机器(对应域名为tw-node109~tw-node111), centos6.4, 已部署cdh4 目标是: 搭建一个spar

Hadoop2.6.0 + Spark1.4.0 在Ubuntu14.10环境下的伪分布式集群的搭建(实践可用)

前言,之前曾多次搭建集群,由于疏于记录,每次搭建的时候到处翻阅博客,很是费劲,在此特别记录集群的搭建过程. 0.环境:Ubuntu14.10.Hadoop2.6.0.spark-1.4.0 1.安装jdk1.7 (1)下载jdk-7u25-linux-i586.tar.gz: (2)解压jdk-7u25-linux-i586.tar.gz,并将其移动到 /opt/java/jdk/路径下面 (3)配置java环境变量: 在 /etc/profile文件中追加 #set java env expo