Cloudera Hadoop大数据平台实战指南
上QQ阅读APP看书,第一时间看更新

4.4 HDFS操作常用shell命令

4.4.1 HDFS目录操作和文件处理命令

我们可以利用HDFS shell命令对Hadoop进行操作,利用这些命令可以完成HDFS中文档的上传、下载、复制、查看文件信息、格式化名称节点等操作。使用Cloudera CDH版本安装Hadoop时,默认建立的hdfs用户是对集群文件的最高权限用户。如图4-6所示,在名称节点node0上运行jps命令查看进程,发现NameNode进程存在。在其他工作节点(如node1)上运行jps命令查看进程,发现DataNode进程存在,如图4-7所示。

图4-6

图4-7

在终端输入命令,查看hdfs dfs总共支持哪些操作,命令执行后会显示如图4-8所示的结果(这里只列出部分命令)。

图4-8

可以看出hdfs dfs命令的统一格式类似“hdfs dfs –ls”这种形式,即在“-”后面跟上具体的操作。需要查看某个命令的作用(例如,查询ls命令的具体用法)时,可以采用如图4-9所示的命令。

图4-9

HDFS目录操作和文件操作命令如图4-10所示。hdfs dfs -mkdir -p /doc命令表示在HDFS根目录下创建一个称为doc的目录。hdfs dfs -ls/命令表示列出HDFS根目录下的内容。使用hdfs dfs -put命令把本地文件系统的/var/lib/hadoop-hdfs/text.txt上传到根目录的doc目录下,然后查看一下文件是否能成功上传到HDFS中。

图4-10

4.4.2 HDFS的Web管理界面

HDFS提供了Web管理界面,可以很方便地查看HDFS相关信息。需要在Linux系统打开浏览器,在浏览器地址栏中输入HDFS的NameNode的Web访问地址,端口号为50070,如图4-11所示。

图4-11

在HDFS的Web管理界面中,包含Overview、DataNodes、DataNode Volume Failures、Snapshot、Startup Progress和Utilities等菜单项。你可以点击每个菜单项,查询各种信息,如点击“Datanodes”,查看数据节点信息,如图4-12所示。

图4-12

4.4.3 dfsadmin管理维护命令

dfsadmin是一个多任务客户端工具,用来显示HDFS运行状态和管理HDFS,支持的命令如图4-13所示。

图4-13

例如,运行hdfs dfsadmin -report命令,显示HDFS文件系统的基本信息和统计信息,如图4-14所示,与HDFS的Web界面一致。

图4-14

4.4.4 namenode命令

运行namenode命令进行格式化、升级回滚等操作,支持命令如图4-15所示。

图4-15