本文hadoop的版本为hadoop-2.2.0
一、安装java jdk
1、下载java jdk1.7版本,放在/home/software目录下,
2解压:tar -zxvf java-jdk*****.jar
3、vim /etc/profile
#在文件最后添加 export JAVA_HOME=/home/software/jdk1.7 export PATH=$PATH:$JAVA_HOME/bin #刷新配置 source /etc/profile
4、检测是否成功安装:java -version
二、安装hadoop
1、在linux根路径创建目录cloud:sudo mkdir cloud
2、解压hadoop到cloud目录中:tar -zxvf hadoop-2.2.0.tar.gz -C /cloud/
3、进入目录:/cloud/hadoop/etc/hadoop
三、修改配置文件
1、修改hadoop-env.sh,配置java jdk路径,大概在27行配置,如下:
export JAVA_HOME=/home/software/jdk1.7
2、修改core-site.xml,配置内容如下
<configuration> <!-- 指定HDFS老大(namenode)的通信地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://locahost:9000</value> </property> <!-- 指定hadoop运行时产生文件的存储路径 --> <property> <name>hadoop.tmp.dir</name> <value>/cloud/hadoop/tmp</value> </property> </configuration>
3、修改hdfs-site.xml,修改配置如下
<!-- 设置hdfs副本数量 --> <property> <name>dfs.replication</name> <value>1</value> </property>
4、修改mapred-site.xml 由于在配置文件目录下没有,需要修改名称:mv mapred-site.xml.template mapred-site.xml
<configuration> <!-- 通知框架MR使用YARN --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
5、修改yarn-site.xml,修改内容如下
<configuration> <!-- reducer取数据的方式是mapreduce_shuffle --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> </configuration>
6、讲hadoop添加到环境变量,然后更新一下环境变量:source /etc/profile
export JAVA_HOME=//home/software/jdk1.7
export HADOOP_HOME=/cloud/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
四、启动hadoop
1、格式化hadoop,进入目录:/cloud/hadoop/etc/hadoo,执行下列之一命令即可
hadoop namenode -format (过时)
hdfs namenode -format
2、启动hdfs和yarn
先启动HDFS
sbin/start-dfs.sh
再启动YARN
sbin/start-yarn.sh
3、验证是否成功,使用命令:jps,输出如下即表示配置成功。
12272 Jps 4135 JobTracker 9500 SecondaryNameNode 9943 NodeManager 9664 ResourceManager 8898 NameNode 9174 DataNode
4、可以在浏览器中查看hdfs和mr的状态.hdfs管理界面:http://localhost:50070 MR的管理界面:http://localhost:8088
五、hdfs基本操作和wordcount程序
1、进入hadoop安装目录中的share:/cloud/hadoop/share/hadoop/mapreduce
2、ls列出当前路径下的文件,内容如下,其中带有example字样的为样例程序
hadoop-mapreduce-client-app-2.2.0.jar hadoop-mapreduce-client-common-2.2.0.jar hadoop-mapreduce-client-core-2.2.0.jar hadoop-mapreduce-client-hs-2.2.0.jar hadoop-mapreduce-client-hs-plugins-2.2.0.jar hadoop-mapreduce-client-jobclient-2.2.0.jar hadoop-mapreduce-client-jobclient-2.2.0-tests.jar hadoop-mapreduce-client-shuffle-2.2.0.jar hadoop-mapreduce-examples-2.2.0.jar lib lib-examples sources
3、新建words文件,内容输入如下,然后使用命令上传到hdfs目录下:hadoop fs -put words hdfs://localhost:9000/words
hello tom hello kitty hello world hello tom
4、在命令行中敲入:hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount hdfs://localhost:9000/wordshdfs://localhost:9000/out
5、打开页面:http://localhost:50070/dfshealth.jsp
6、点击上图中的Browse the filesystem,跳转到文件系统界面,如下所示:
7、继续点击上图的out/part-r-00000,wordcount程序最终运行的结果如图所示: