您当前的位置:首页 > hadoop

搭建Hadoop2.6.0+Spark1.1.0集群环境

前几篇文章主要介绍了单机模式的和Spark的安装和配置,方便开发和调试。本文主要介绍,真正集群环境下Hadoop和Spark的安装和使用。l99linux系统宝典

1. 环境准备l99linux系统宝典

集群有三台机器:l99linux系统宝典

  • master:W118PC01VM01/192.168.0.112
  • slave1:W118PC02VM01/192.168.0.113
  • slave2:W118PC03VM01/192.168.0.114

首先配置/etc/hosts中ip和主机名的映射关系:l99linux系统宝典

  • 192.168.0.112 W118PC01VM01
  • 192.168.0.113 W118PC02VM01
  • 192.168.0.114 W118PC03VM01 

其次配置3台机器互相免密码ssh连接,参考《在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境》。l99linux系统宝典

2. 基本安装步骤l99linux系统宝典

(1) 安装Java(本例使用jdk1.7.0_55)和Scala(使用scala2.10.4)。l99linux系统宝典

(2) 安装Hadoop2.6.0集群。l99linux系统宝典

(3) 安装Spark1.1.0集群。l99linux系统宝典

3. Jdk和Scala安装l99linux系统宝典

在master和slave机器的安装路径和环境变量配置保持一致。安装过程参考《在Win7虚拟机下搭建Hadoop2.6.0+Spark1.4.0单机环境》。l99linux系统宝典

4. Hadoop集群安装l99linux系统宝典

4.1. 安装Hadoop并配置环境变量l99linux系统宝典

安装Hadoop2.6.0版本,安装目录如下。在~/.bash_profile中配置环境变量,参考《在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境》。l99linux系统宝典

l99linux系统宝典

4.2. 修改Hadoop配置文件l99linux系统宝典

涉及到的hadoop配置文件主要有以下7个:l99linux系统宝典

  1. /home/ap/cdahdp/tools/hadoop/etc/hadoop/hadoop-env.sh
  2. /home/ap/cdahdp/tools/hadoop/etc/hadoop/yarn-env.sh
  3. /home/ap/cdahdp/tools/Hadoop/etc/hadoop/slaves
  4. /home/ap/cdahdp/tools/hadoop/etc/hadoop/core-site.xml
  5. /home/ap/cdahdp/tools/hadoop/etc/hadoop/hdfs-site.xml
  6. /home/ap/cdahdp/tools/hadoop/etc/hadoop/mapred-site.xml
  7. /home/ap/cdahdp/tools/hadoop/etc/hadoop/yarn-site.xml

配置 hadoop-env.sh(修改JAVA_HOME)l99linux系统宝典

# The java implementation to use.l99linux系统宝典

export JAVA_HOME=/home/ap/cdahdp/tools/jdk1.7.0_55l99linux系统宝典

配置 yarn-env.sh (修改JAVA_HOME)l99linux系统宝典

# some Java parametersl99linux系统宝典

export JAVA_HOME=/home/ap/cdahdp/tools/jdk1.7.0_55l99linux系统宝典
 l99linux系统宝典

配置slaves(增加slave节点)l99linux系统宝典

W118PC02VM01l99linux系统宝典

W118PC03VM01l99linux系统宝典
 l99linux系统宝典

配置 core-site.xml(增加hadoop核心配置)l99linux系统宝典

<configuration>l99linux系统宝典
    <property>l99linux系统宝典
        <name>fs.defaultFS</name>l99linux系统宝典
        <value>hdfs://192.168.0.112:9000</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>io.file.buffer.size</name>l99linux系统宝典
        <value>131072</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>hadoop.tmp.dir</name>l99linux系统宝典
        <value>file:/home/ap/cdahdp/app/tmp</value>l99linux系统宝典
        <description>Abasefor other temporary directories.</description>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>hadoop.proxyuser.spark.hosts</name>l99linux系统宝典
        <value>*</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>hadoop.proxyuser.spark.groups</name>l99linux系统宝典
        <value>*</value>l99linux系统宝典
    </property>l99linux系统宝典
</configuration>l99linux系统宝典

 l99linux系统宝典

配置hdfs-site.xml(增加hdfs配置信息,namenode、datanode端口和目录位置)l99linux系统宝典

 l99linux系统宝典

<configuration>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.namenode.secondary.http-address</name>l99linux系统宝典
        <value>192.168.0.112:9001</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.namenode.name.dir</name>l99linux系统宝典
        <value>file:/home/ap/cdahdp/app/name</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.datanode.data.dir</name>l99linux系统宝典
        <value>file:/home/ap/cdahdp/app/data</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.replication</name>l99linux系统宝典
        <value>3</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.webhdfs.enabled</name>l99linux系统宝典
        <value>true</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>dfs.datanode.du.reserved</name>【配置磁盘中保留不用作hdfs集群的空间大小,单位是Byte】l99linux系统宝典
        <value>10240000000</value>l99linux系统宝典
    </property>l99linux系统宝典
</configuration>l99linux系统宝典

 l99linux系统宝典

配置mapred-site.xml(增加mapreduce配置,使用yarn框架、jobhistory地址以及web地址)l99linux系统宝典

 l99linux系统宝典

<configuration>l99linux系统宝典
    <property>l99linux系统宝典
        <name>mapreduce.framework.name</name>l99linux系统宝典
        <value>yarn</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>mapreduce.jobhistory.address</name>l99linux系统宝典
        <value>192.168.0.112:10020</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>mapreduce.jobhistory.webapp.address</name>l99linux系统宝典
        <value>192.168.0.112:19888</value>l99linux系统宝典
    </property>l99linux系统宝典
</configuration>l99linux系统宝典

 l99linux系统宝典

配置 yarn-site.xml(增加yarn功能)l99linux系统宝典

 l99linux系统宝典

<configuration>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.nodemanager.aux-services</name>l99linux系统宝典
        <value>mapreduce_shuffle</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>l99linux系统宝典
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.resourcemanager.address</name>l99linux系统宝典
        <value>192.168.0.112:8032</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.resourcemanager.scheduler.address</name>l99linux系统宝典
        <value>192.168.0.112:8030</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.resourcemanager.resource-tracker.address</name>l99linux系统宝典
        <value>192.168.0.112:8035</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.resourcemanager.admin.address</name>l99linux系统宝典
        <value>192.168.0.112:8033</value>l99linux系统宝典
    </property>l99linux系统宝典
    <property>l99linux系统宝典
        <name>yarn.resourcemanager.webapp.address</name>l99linux系统宝典
        <value>192.168.0.112:8088</value>l99linux系统宝典
    </property>l99linux系统宝典
</configuration>l99linux系统宝典

 l99linux系统宝典

将配置好的hadoop文件copy到两台slave机器上,配置和路径和master一模一样。l99linux系统宝典

4.3. 格式化namenodel99linux系统宝典

在master和slave机器上分别操作:l99linux系统宝典

cd ~/tools/hadoop/binl99linux系统宝典

./hdfs namenode -formatl99linux系统宝典
 l99linux系统宝典

4.4. 启停hdfs和yarnl99linux系统宝典

cd ~/tools/hadoop/sbinl99linux系统宝典

./start-hdfs.shl99linux系统宝典

./stop-hdfs.shl99linux系统宝典

./start-yarn.shl99linux系统宝典

./stop-yarn.shl99linux系统宝典
 l99linux系统宝典

启动后可以用jps查看进程,通常有这几个:l99linux系统宝典

NameNode、SecondaryNameNode、ResourceManager、DataNodel99linux系统宝典

如果启动异常,可以查看日志,在master机器的/home/ap/cdahdp/tools/hadoop/logs目录。l99linux系统宝典

4.5. 查看集群状态l99linux系统宝典

查看hdfs:http://192.168.0.112:50070/l99linux系统宝典

查看RM:http://192.168.0.112:8088/l99linux系统宝典

4.6. 运行wordcount示例程序l99linux系统宝典

上传几个文本文件到hdfs,路径为/tmp/input/l99linux系统宝典

之后运行:l99linux系统宝典

l99linux系统宝典

查看执行结果:l99linux系统宝典

l99linux系统宝典

正常运行,表示hadoop集群安装成功。l99linux系统宝典

5. Spark集群部署l99linux系统宝典

5.1. 安装Spark并配置环境变量l99linux系统宝典

安装Spark1.1.0版本,安装目录如下。在~/.bash_profile中配置环境变量。l99linux系统宝典

l99linux系统宝典

5.2. 修改Hadoop配置文件l99linux系统宝典

配置slaves(增加slave节点)l99linux系统宝典

l99linux系统宝典

配置spark-env.sh(设置spark运行的环境变量)l99linux系统宝典

把spark-env.sh.template复制为spark-env.shl99linux系统宝典

l99linux系统宝典

将配置好的spark文件copy到两台slave机器上,配置和路径和master一模一样。l99linux系统宝典

5.3. Spark的启停l99linux系统宝典

cd ~/tools/spark/sbinl99linux系统宝典

./start-all.shl99linux系统宝典

./stop-all.shl99linux系统宝典
 l99linux系统宝典

5.4. 查看集群状态l99linux系统宝典

spark集群的web管理页面:http://192.168.0.112:8080/l99linux系统宝典

spark WEBUI页面:http://192.168.0.112:4040/l99linux系统宝典

启动spark-shell控制台:l99linux系统宝典

l99linux系统宝典

5.5. 运行示例程序l99linux系统宝典

往hdfs上上传一个文本文件README.txt:l99linux系统宝典

l99linux系统宝典

在spark-shell控制台执行:l99linux系统宝典

统计README.txt中有多少单词:l99linux系统宝典

l99linux系统宝典

l99linux系统宝典

过滤README.txt包括The单词有多少行:l99linux系统宝典

l99linux系统宝典

正常运行,表示Spark集群安装成功。l99linux系统宝典

 l99linux系统宝典

14.04下Hadoop2.4.1单机/伪分布式安装配置教程  l99linux系统宝典

安装和配置Hadoop2.2.0  l99linux系统宝典

Ubuntu 13.04上搭建Hadoop环境 l99linux系统宝典

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置 l99linux系统宝典

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) l99linux系统宝典

Ubuntu下Hadoop环境的配置 l99linux系统宝典

单机版搭建Hadoop环境图文教程详解 l99linux系统宝典

更多Hadoop相关信息见 专题页面 l99linux系统宝典



沪ICP备10206494号-4