如何进行Hadoop安装部署?

本节接着上节向大家介绍一下Hadoop安装部署步骤,主要内容有Hadoop环境变量,Hadoop配置文件,Hadoop的部署以及启动等相关操作,欢迎大家一起来学习Hadoop安装部署方面的知识。下面是具体步骤介绍。


1.Hadoop环境变量

在/home/dbrg/HadoopInstall/hadoop-conf目录下的hadoop_env.sh中设置Hadoop需要的环境变量,其中JAVA_HOME是必须设定的变量。HADOOP_HOME变量可以设定也可以不设定,如果不设定,HADOOP_HOME默认的是bin目录的父目录,即本文中的/home/dbrg/HadoopInstall/hadoop。我的是这样设置的
exportHADOOP_HOME=/home/dbrg/HadoopInstall/hadoop
exportJAVA_HOME=/usr/java/jdk1.6.0
从这个地方就可以看出前面所述的创建hadoop0.12.0的链接hadoop的优点了,当以后更新hadoop的版本的时候,就不需要在改配置文件,只需要更改链接就可以了。

2.Hadoop配置文件
如前所述,在hadoop-conf/目录下,打开slaves文件,该文件用来指定所有的从节点,一行指定一个主机名。即本文中的dbrg-2,dbrg-3,因此slaves文件看起来应该是这样的
dbrg-2
dbrg-3
在conf/目录中的hadoop-default.xml中包含了Hadoop的所有配置项,但是不允许直接修改!可以在hadoop-conf/目录下的hadoop-site.xml里面定义我们需要的项,其值会覆盖hadoop-default.xml中的默认值。可以根据自己的实际需要来进行定制。以下是我的配置档:

<?xmlversionxmlversion="1.0"?> 



<?xml-stylesheettypexml-stylesheettype="text/xsl"href="configuration.xsl"?> 




<!--Putsite-specificpropertyoverridesinthisfile.--> 




<configuration> 




<property> 




<name>fs.default.name</name> 




<value>dbrg-1:9000</value> 




<description>Thenameofthedefaultfilesystem.Eithertheliteralstring"local"orahost:portforDFS.</description> 




</property> 




<property> 




<name>mapred.job.tracker</name> 




<value>dbrg-1:9001</value> 




<description>ThehostandportthattheMapReducejobtrackerrunsat.If"local",thenjobsarerunin-processasasinglemapandreducetask.</description> 




</property> 




<property> 




<name>hadoop.tmp.dir</name> 




<value>/home/dbrg/HadoopInstall/tmp</value> 




<description>Abaseforothertemporarydirectories.</description> 




</property> 




<property> 




<name>dfs.name.dir</name> 




<value>/home/dbrg/HadoopInstall/filesystem/name</value> 




<description>DetermineswhereonthelocalfilesystemtheDFSnamenodeshouldstorethenametable.




Ifthisisacomma-delimitedlistofdirectoriesthenthenametableisreplicatedinallofthedirectories,forredundancy.</description> 




</property> 




<property> 




<name>dfs.data.dir</name> 




<value>/home/dbrg/HadoopInstall/filesystem/data</value> 




<description>DetermineswhereonthelocalfilesystemanDFSdatanodeshouldstoreitsblocks.Ifthisisacomma-delimitedlistofdirectories,




thendatawillbestoredinallnameddirectories,typicallyondifferentdevices.Directoriesthatdonotexistareignored.</description> 




</property> 




<property> 




<name>dfs.replication</name> 




<value>1</value> 




<description>Defaultblockreplication.Theactualnumberofreplicationscanbespecifiedwhenthefileiscreated.




Thedefaultisusedifreplicationisnotspecifiedincreatetime.</description> 




</property> 




</configuration> 

3.部署Hadoop

前面Hadoop安装部署过程中讲的这么多Hadoop的环境变量和配置文件都是在dbrg-1这台机器上的,现在需要将hadoop部署到其他的机器上,保证目录结构一致。
[dbrg@dbrg-1:~]$scp-r/home/dbrg/HadoopInstalldbrg-2:/home/dbrg/
[dbrg@dbrg-1:~]$scp-r/home/dbrg/HadoopInstalldbrg-3:/home/dbrg/
至此,可以说,Hadoop已经在各个机器上部署完毕了下面就让我们开始启动Hadoop吧


4.启动Hadoop

Hadoop安装部署完成后需要启动Hadoop。启动之前,我们先要格式化namenode,先进入~/HadoopInstall/hadoop目录,执行下面的命令
[dbrg@dbrg-1:hadoop]$bin/hadoopnamenode-format
不出意外,应该会提示格式化成功。如果不成功,就去hadoop/logs/目录下去查看日志文件
下面就该正式启动hadoop啦,在bin/下面有很多启动脚本,可以根据自己的需要来启动。
*start-all.sh启动所有的Hadoop守护。包括namenode,datanode,jobtracker,tasktrack
*stop-all.sh停止所有的Hadoop
*start-mapred.sh启动Map/Reduce守护。包括Jobtracker和Tasktrack
*stop-mapred.sh停止Map/Reduce守护
*start-dfs.sh启动HadoopDFS守护.Namenode和Datanode
*stop-dfs.sh停止DFS守护
在这里,简单启动所有守护
[dbrg@dbrg-1:hadoop]$bin/start-all.sh
同样,如果要停止hadoop,则
[dbrg@dbrg-1:hadoop]$bin/stop-all.sh


HDFS操作
运行bin/目录的hadoop命令,可以查看Haoop所有支持的操作及其用法,这里以几个简单的操作为例。

建立目录
[dbrg@dbrg-1:hadoop]$bin/hadoopdfs-mkdirtestdir
在HDFS中建立一个名为testdir的目录

相关推荐