hadoop伪分布式模式
备注:此处的hadoop版本是3.1.4。
一、修改配置文件
1.1、修改etc/hadoop/core-site.xml
<!-- 指定HDFS中NameNode的地址,指定了hdfs协议,此时不能按照本地模式操作了 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://k8smaster:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/yzh/hadoop/tmp</value>
</property>
1.2、修改etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_161
1.3、修改etc/hadoop/hdfs-site.xml
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
二、启动集群
2.1、格式化NameNode(第一次启动时格式化,以后就不要总格式化)
bin/hdfs namenode -format
注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。所以,格式NameNode时,一定要先删除data数据和log日志,然后再格式化NameNode。
2.2、启动NameNode
hdfs --daemon start namenode
2.3、启动DataNode
hdfs --daemon start datanode
三、查看集群
3.1、查看就能是否启动成功
3.2、web端查看HDFS文件系统
http://127.0.0.1:9870/
3.3、查看产生的Log日志
说明:在企业中遇到Bug时,经常根据日志提示信息去分析问题、解决Bug。
3.3、相关操作
(1)、创建目录
hdfs -mkdir -p /home/yzh/hadoop/user/input
(2)、将本地文件上传到hdfs文件系统
hdfs dfs -put wcinput/wc.input /home/yzh/hadoop/user/input
(3)、查看上传的文件
(4)、统计hdfs文件系统指定的路径
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.4.jar wordcount /home/yzh/hadoop/user/input /home/yzh/hadoop/user/output
(5)、结果
命令查看
hdfs dfs -cat /home/yzh/hadoop/user/output/p*