hadoop伪分布式之启动HDFS并运行MR程序(WordCount)
一、配置相关文件
在hadoop-2.9.2下etc/hadoop/core-site.xml中配置:
<configuration> <!--指定HDFS中NameNode的地址--> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop01:9000</value> </property> <!--指定hadoop运行时产生文件的存储目录--> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.9.2/data/tmp</value> </property> </configuration>
hadoop01是当前主机名。
在hdfs-site.xml中配置
<!--指定HDFS副本的数量--> <configuration> <name>dfs.replication</name> <value>1<value> </configuration>
配置hadoop-env.sh:
export JAVA_HOME=/opt/module/jdk1.8.0_11
二、启动集群
在hadoop-2.9.2目录下
(1)格式化NaneNode(第一次启动时要格式化,以后就不要总格式化)
bin/hdfs namenode -format
(2) 启动NameNode
sbin/hadoop-daemon.sh start namenode
之后使用jps查看:
(3) 启动DataNode
sbin/hadoop-daemon.sh start datenode
(3)关闭防火墙
systemctl status firewalld.service查看防火墙状态
systemctl stop firewalld.service 关闭运行的防火墙
然后在windows中就可以访问了:
进入到以下目录中:
在hadoop-2.9.2目录下输入:
bin/hdfs dfs -mkdir -p /user/gong/input
刷新浏览器中刚才的目录,就会出现:
我们上传一个数据上去:
bin/hdfs dfs -put wcinput/wc.input /user/gong/input
(4) 执行一个实例WordCount
在hadoop-2.9.2目录下输入:
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar wordcount /user/gong/input /user/gong/output
然后在浏览器中就可以看到结果啦:
可以在Linux中运行bin/hdfs dfs -cat /user/gong/output/p* 查看