虚拟机上搭建伪分布式Hadoop集群(三)

在前两章中,我们分别实现了多虚拟机集群的搭建,Hadoop、JDK的安装以及在单机模式下的调试。在本章,我们将实现伪分布式,启动HDFS并运行WordCount示例程序。

一. 配置 core-site.xml 文件:

vim进入 /etc/hadoop/core-site.xml (sudo vim core-site.xml)中,使用修改模式,添加如下配置信息:


其中 主机名 为第一章第六节(虚拟机上搭建伪分布式Hadoop集群(一))中所修改的主机名称,端口号为9000。

二. 配置 hdfs-site.xml 文件:

与步骤一相似,使用vim进入 hdfs-site.xml文件中修改配置信息:
该配置文件用于指定HDFS副本数(在下图中设置为1,即设置为保留一份HDFS副本)


配置hdfs-site.xml文件

三. 启动集群:

在完成了上述两个步骤后,即可启动集群。启动集群共两步(1. 启动NameNode 2. 启动DataNode)

\\1. 格式化NameNode
bin/hdfs namenode -format

\\2. 启动NameNode
sbin/hadoop-daemon.sh start namenode

\\3. 启动DataNode
sbin/hadoop-daemon.sh start datanode
  1. 格式化NameNode:(第一次启动时格式化,以后就尽量少格式化

(如果已经启动集群后再格式化NameNode,则会产生新的集群id,导致NameNode和DataNode的集群id不一致,则会出现DataNode无法启动的情况,所以在格式化NameNode时,需先删除data数据和log日志,再格式化NameNode。具体解决方法:Hadoop启动集群后使用JPS命令数据节点不显示解决方法

  1. 启动NameNode:


  2. 启动DataNode:


  3. 使用JPS查看进程:
    如果全部服务正常启动,则会显示三个服务进程(前面的进程编号不一样是正常的):


四. 使用Web查看端口:

Hadoop提供了一个Web端口页面,通过该页面可查看该集群的运行状态。由于在第一章中,我们已经将本机和虚拟机互相ping通了,所以可直接在本地的浏览器中查看。
在浏览器中输入 " 主机名:50070 " 即可进入集群的Web界面。(本文中的主机名为"hadoop101",实际操作中将其改为自己的主机名即可)

或者将主机名替换为虚拟机的IP地址,也同样可以进入集群的Web界面:


进入了集群的Web界面后即可查看集群的具体运行状态:


五. HDFS中创建文件夹:

在HDFS文件系统的根目录中创建新的路径(-p 表示创建多级目录):

bin/hdfs dfs -mkdir -p /user/ccnu/input

在Web界面中,点击 Utilities→Browse the file system 进入文件系统,然后输入刚刚创建的HDFS文件路径,可见该目录已成功创建。


与Linux类似,使用相同的命令,可以创建、删除、查看目录。


六. 将本地文件上传至集群中:

本文中,我们在本地创建了一个 wc.input 文件,并将其上传至上一步创建的集群路径中。

// bin/hdfs dfs -put (本地路径) (HDFS路径)

bin/hdfs

然后再看一下Web界面,可以发现集群中 /user/ccnu/input 下出现了刚才添加的文件。


点击该文件,可以将该文件从集群中下载下来。

七. 在HDFS上运行WordCount:

从集群中读取文件,然后再将生成的结果自动上传至集群的指定路径中(在下图中,文件路径为HDFS文件系统中的 /user/ccnu/input , 输出文件的路径为 /user/ccnu/output):


在集群的Web界面中可以看出,系统自动创建了output文件夹,并将运行结果存放于该文件夹中。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容