hadoop-2.2.0在集群搭建

1,所需软件

hadoop-2.2.0.tar.gz

CentOS-7.0-1406-x86_64-DVD.iso

VMware_workstation_full_12.5.2


2,安装虚拟机

虚拟机的安装很简单,一般情况下按默认安装即可,但是这个根据自己的情况而定。


3,建立Hadoop运行账号

sudo groupadd hadoop    //设置hadoop用户组

sudo useradd –s /bin/bash –d /home/bl –m bl –g hadoop –G root   //添加一个bl用户,此用户属于hadoop用户组,且具有root权限。

sudo passwd bl   //设置用户bl登录密码

su bl   //切换到bl用户中


4,准备3个虚拟节点

这三个结点有什么用,原理很简单,按照hadoop集群的基本要求,其中一个是master结点,主要是用于运行hadoop程序中的namenodesecondorynamenodejobtracker任务。用外两个结点均为slave结点,其中一个是用于冗余目的,如果没有冗余,就不能称之为hadoop了,所以模拟hadoop集群至少要有3个结点,如果电脑配置非常高,可以考虑增加一些其它的结点。slave结点主要将运行hadoop程序中的datanodetasktracker任务。

所以,在准备好这3个结点之后,需要分别将linux系统的主机名重命名(因为前面是复制和粘帖操作产生另两上结点,此时这3个结点的主机名是一样的),重命名主机名的方法:

Vim /etc/hostname

通过修改hostname文件即可,这三个点结均要修改,以示区分。

以下是我对三个结点的CentOS系统主机分别命名为:master, node1, node2


5,网络环境配置(以master节点网络设置为例)

192.168.1.100 master

192.168.1.101 node1

192.168.1.101 node2


6,SSH无密码登录


7,CentOS7中JDK环境变量配置


8,下载并解压Hadoop安装包

关于安装包的下载就不多说了,不过可以提一下目前我使用的版本为hadoop-2.2.0

这个版本不是最新的,不过学习嘛,先入门,后面等熟练了再用其它版本也不急。而且《hadoop权威指南》这本书也是针对这个版本介绍的。

注:解压后hadoop软件目录在/home/bl/hadoop


9,hadoop安装完毕需要配置hadoop的一些文件,准备工作先建立几个文件夹

/home/bl/dfs/name

/home/bl/dfs/data

/home/bl/hadoop/tmp


10,配置hadoop文件

  1. ~/hadoop/etc/hadoop/hadoop-env.sh  
  2. ~/hadoop/etc/hadoop/yarn-env.sh  
  3. ~/hadoop/etc/hadoop/slaves  
  4. ~/hadoop/etc/hadoop/core-site.xml  
  5. ~/hadoop/etc/hadoop/hdfs-site.xml  
  6. ~/hadoop/etc/hadoop/mapred-site.xml  
  7. ~/hadoop/etc/hadoop/yarn-site.xml                                                                     


(1)配置 hadoop-env.sh(只修改JAVA_HOME值就行,地址手写

# The java implementation to use.
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64


(2)配置yarn-env.sh(修改JAVA_HOME值就行,地址手写

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51-2.4.5.5.el7.x86_64


(3)配置slaves 

#localhost
node1
node2


(4)配置core-site.xml


dfs.namenode.secondary.http-address
master:9001


dfs.namenode.name.dir
/home/bl/dfs/name


dfs.datanode.data.dir
/home/bl/dfs/data


dfs.replication
3


dfs.webhdfs.enabled
true


(5)配置hdfs-site.xml  


dfs.namenode.secondary.http-address
master:9001


dfs.namenode.name.dir
/home/bl/dfs/name


dfs.datanode.data.dir
/home/bl/dfs/data


dfs.replication
3


dfs.webhdfs.enabled
true

(6)配置mapred-site.xml


dfs.permissions
false


mapreduce.framework.name
yarn


mapreduce.jobhistory.address
master:10020


mapreduce.jobhistory.webapp.address
master:19888

(7)配置yarn-site.xml


yarn.nodemanager.aux-services
mapreduce_shuffle


yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler


yarn.resourcemanager.address
master:8032


yarn.resourcemanager.scheduler.address
master:8030


yarn.resourcemanager.resource-tracker.address
master:8035


yarn.resourcemanager.admin.address
master:8033


yarn.resourcemanager.webapp.address
master:8088


11,将hadoop文件夹拷贝到node1和node2上

  1. scp –r /home/bl/hadoop bl@node1:/home/bl
  2. scp –r /home/bl/hadoop bl@node2:/home/bl 

12,验证与运行

所有的组件启动和停止服务都在/hadoop/sbin目录下,一般启动hadoop前会格式化namenode。具体命令参考如下:

  1. 进入安装目录: cd ~/hadoop/  
  2. 格式化namenode:./bin/hdfs namenode –format  
  3. 启动hdfs: ./sbin/start-dfs.sh  
  4. 此时在master上面运行的进程有:namenodesecondarynamenode  
  5. node1和node2上面运行的进程有:datanode  


  1. 启动yarn: ./sbin/start-yarn.sh  
  2. 此时在master上面运行的进程有:namenodesecondarynamenoderesourcemanager  
  3. node1和node2上面运行的进程有:datanode nodemanaget 

  1. 查看集群状态:./bin/hdfs dfsadmin –report  
  2. 查看文件块组成: ./bin/hdfsfsck/ -files -blocks  
  3. 查看HDFS: http://192.168.1.100:50070  
  4. 查看RM: http://192.168.1.100:8088  

PS:dataNode 无法启动是配置过程中最常见的问题,主要原因是多次format namenode 造成namenode 和datanode的clusterID不一致。


参考博客:http://blog.csdn.net/liyong199012/article/details/24019333






你可能感兴趣的:(大数据,Linux,Hadoop)