这篇文章所使用的配置文件和思路基本都来自于官方的文档,在上一篇文章中已经配置完成了几个配置文件,包括hdfs,mapreduce以及yarn。全都配置在了一台服务器,所以运行的是伪分布式的程序。
启动hdfs文件系统
配置core-site.xml
<configuration>
<property>
#配置hdfs文件系统的位置和端口,这里使用的是本地
#依据个人配置而定,使用hostname命令即可。
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020</value>
</property>
<property>
#本地hdfs存放的位置
<name>hadoop.tmp.dir</name>
<value>/opt/modules/hadoop-2.5.0/data/temp</value>
</property>
</configuration>
配置hdfs-site.xml
<configuration>
<property>
#hdfs文件系统的个数,目前我就使用1个,如果不配置就使用默认值3
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
配置完成之后:
bin/hdfs namenode -format
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
注:如果不想一个个启动进程,直接使用sbin/start-dfs.sh即可启动
到这本地的hdfs文件系统已经启动完成,使用jps命令查看进程是否运行,启动日志存放在logs文件夹下。我是使用服务器部署,用ip:50070就可以查看可视化界面。
宁波整形美容医院http://www.zuanno.com/
点击查看我的可视化界面:http://47.94.152.46:50070/explorer.html#/
上传测试文件到本地hdfs
hello world
hello you
ni hao
i love you
将本地文件上传到hdfs文件系统:
bin/hdfs dfs -mkdir /user/xiaoshi/wcinput
bin/hdfs dfs -put wcinput/wc.input /user/xiaoshi/wcinput
启动yarn框架
配置yarn-site.xml
<configuration>
<property>
#服务名称
<name>yarn.nodemanager.aux-services</name>
#mapreduce的核心服务
<value>mapreduce_shuffle</value>
</property>
<property>
#nodemanager的主机名,现在使用的是本地
<name>yarn.nodemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>
配置mapred-site.xml
<configuration>
<property>
#配置用于执行MapReduce的框架,默认是Localhost,现在配置在yarn框架上
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
配置完成,启动:
sbin/yarn-daemon.sh start resoucemanege
sbin/yarn-daemon.sh start nodemanager
注:如果不想一个个启动,直接使用sbin/start-yarn.sh启动即可
启动完成之后,可以使用浏览器查看yarn框架的可视化界面,默认为:ip:8088
查看我的yarn可视化界面:http://47.94.152.46:8088/cluster
至此,环境已经搭建完成,下面就来使用hadoop自带的示例来运行一个程序。
我们在前面步骤已经上传了一个wc.input文件到hdfs文件系统,现在我们使用hadoop自带的wordcount来统计一下单词的个数。
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar wordcount /user/xiaoshi/wcinput /user/xiaoshi/wcoutput
后面两个路径为文件的输入路径已经处理完结果的输出路径。
在执行的过程中,可以到yarn的可视化界面查看执行情况
执行上述命令之后,得到wcoutput文件夹:
- -
-- - --
------ --
------ -- --
part-r-00000即为输出的结果,使用cat命令查看
# bin/hdfs dfs -cat /user/xiaoshi/wcoutput/part-r-00000
hao 1
hello 2
i 1
love 1
ni 1
world 1
you 2
值得一提的是,在统计个数的同时还对单词进行了排序,功能很是强大~~
大功告成。
太阳就要下山了,风还是在不停的嘶吼,而我还在徘徊,何时才能归家。