采用源码包安装,下载地址:
http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDHTarballs/3.25.2013/CDH4-Downloadable-Tarballs/CDH4-Downloadable-Tarballs.html
源码包名:hadoop-2.0.0-cdh4.3.0.tar.gz
在/usr目录下建立一个cdh4目录,存放CDH4.3.0的安装软件
# mkdir /usr/cdh4
将CDH4.3.0源码包拷贝到该目录下
# mv ‘原CDH4.3.0源码包位置’ /usr/cdh4
解压源码包到指定位置:/usr/cdh4/hadoop-2.0
# tar �Czxvf /usr/cdh4/hadoop-2.0.0-cdh4.3.0.tar.gz �CC /usr/cdh4/ hadoop-2.0.0-cdh4.3.0
注:如果直接解压,不指定位置,直接执行以下命令:
# tar �Czxvf/usr/cdh4/hadoop-2.0.0-cdh4.3.0.tar.gz
默认会解压到根目录root下。
将解压后的目录修改为hadoop-2.0,便于操作(在cdh4目录下执行下面指令)
# mv hadoop-2.0.0-cdh4.3.0 hadoop-2.0
进入到hadoop-2.0 的配置文件目录,下面都在此hadoop下的对应文件中配置
# cd hadoop-2.0/etc/hadoop/
1)配置hadoop java环境变量
在文件hadoop-env.sh内添加java环境变量
# vim hadoop-env.sh
在末尾添加以下内容:
# set java path
export JAVA_HOME = /usr/java/jdk1.7.0_25
2)编辑core-site.xml
首先在根目录下新建hadoop目录,在hadoop目录内建立tmp文件夹,作为hadoop临时数据存放目录
# cd /
# mkdir hadoop
# mkdir tmp
打开core-site.xml:
# vim core-site.xml
添加以下内容:
<property>
<name>fs.default.name</name>
<value>hdfs://Master:9100</value>
<final>true</final>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/tmp</value>
</property>
3)编辑hdfs-site.xml
在/hadoop目录内建立元数据存储目录name,HDFS存储目录data
# mkdir name
# mkdir data
打开文件:hdfs-site.xml
# vim hdfs-site.xml
添加以下内容:
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop/name</value>
<final>ture</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop/data</value>
<final>ture</final>
</property>
<property>
<name>dfs.permission</name>
<value>false</value>
</property>
4)编辑mapred-site.xml
在/hadoop目录内建mapred文件夹,并在mapred文件夹下建立local和system目录
# mkdir mapred
# mkdir system
# mkdir local
采用mapreduce2.0版本,使用YARN。首先配置mapred-site.xml文件,由于目录下没有该文件,所以直接打开文件添加内容并保存。
打开文件:mapred-site.xml
# vim mapred-site.xml
添加以下内容:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.job.tracker</name>
<value>192.168.12.10:9101</value>
<final>ture</final>
</property>
<property>
<name>mapred.system.dir</name>
<value>file:/hadoop/mapred/system</value>
<final>ture</final>
</property>
<property>
<name>mapred.local.dir</name>
<value>file:/hadoop/mapred/local</value>
<final>ture</final>
</property>
注:要添加上xml文件的头 <?xml version=”1.0” encoding=”UTF-8”?>
可以直接从其他xml文件中拷贝。
5)编辑yarn-site.xml
打开文件:yarn-site.xml
# vim yarn-site.xml
添加以下内容:
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>192.168.12.10:18025</value>
</property>
<property>
<name>yarn.resourcemanager.address </name>
<value>192.168.12.10:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address </name>
<value>192.168.12.10:18030</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address </name>
<value>192.168.12.10:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address </name>
<value>192.168.12.10:8088</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce.shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
6)编辑slaves
打开文件:yarn-site.xml
# vim slaves
添加以下内容:
192.168.12.11
192.168.12.12
192.168.12.13
7)配置hadoop的环境变量
打开文件:(注意,有“/”表示根目录下的文件,没有“/”当前目录还在hadoop下)
# vim /etc/profile
添加内容如下:
# set Hadoop path
export HADOOP_HOME = /usr/cdh4/hadoop-2.0
export HADOOP_COMMOM_HOME = ${HADOOP_HOME}
export HADOOP_HDFS_HOME = ${HADOOP_HOME}
export PATH = $PATH:$HADOOP_HOME/bin
export PATH = $PATH:$HADOOP_HOME/Sbin
export HADOOP_MAPRED_HOME = ${HADOOP_HOME}
export YARN_HOME = ${HADOOP_HOME}
export HADOOP_CONF_DIR = ${HADOOP_HOME}/etc/hadoop
export HDFS_CONF_DIR = ${HADOOP_HOME}/etc/hadoop
export YARN_CONF_DIR = ${HADOOP_HOME}/etc/hadoop
配置后文件内容如下图所示:
注:修改完文件/etc/profile保存退出后,必须是配置文件生效,否则后续步骤将会出错。
保存退出后,使配置文件生效,指令如下:
# source /etc/profile
至此,hadoop配置完成。
1)将配置好的Hadoop-2.0文件夹复制到其他三台Slave节点上
# scp �Cr /usr/cdh4/hadoop-2.0 [email protected]:/usr/cdh4
# scp �Cr /usr/cdh4/hadoop-2.0 [email protected]:/usr/cdh4
# scp �Cr /usr/cdh4/hadoop-2.0 [email protected]:/usr/cdh4
2)将存储目录复制到其他Slave节点上
# scp �Cr /hadoop root@192.168.12.11:/
3)将环境变量文件/etc/profile复制到其他Slave节点上
# scp /etc/profile root@192.168.12.11:/etc
# scp /etc/profile root@192.168.12.12:/etc
# scp /etc/profile root@192.168.12.13:/etc
此处profile为文件,不是文件夹,所以“scp ”不需要“-r”;将原先的profile目录覆盖
4)设置权限
# chown -R 1106:592*
5)关闭防火墙(没有永久关闭每次开机后需要重新关)
# service iptables stop
注:为了使得所有配置文件生效,且对任一打开的终端hadoop指令有效,最好重新启动系统
开始运行hadoop环境。首先格式化HDFS集群文件系统
在Master节点上执行命令:
# hadoop namenode -format
命令行会打印信息,看到successfully formatted表示格式化成功
1)启动hdfs
# start-dfs.sh
2)启动yarn
# start-yarn.sh
可以直接执行:
# start-all.sh
包括start-dfs.sh和start-yarn.sh
3)停止
# stop-all.sh
1)在Master节点上执行jps命令
# jps
必须有:ResourceManager 、SecondaryNameNode、 NameNode三个进程
2)在Slave节点上执行jps命令
必须有:NodeManager 、 DataNode这两个进程
1)查看HDFS
输入网址:http://Master:50070
2)查看Mapreduce
输入网址:http://Master:8088