Apache Hadoop 2.4.1 命令参考

概述

所有的Hadoop命令都是通过bin/hadoop目录下的脚本所执行,在没有任何参数的情况下运行Hadoop脚本将打印该命令描述。

Usage:Hadoop  [--config confdir] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]

hadoop有个输入选项解析框架可以利用在运行class的时候来解析参数。

 COMMAND_OPTION  Description
 --config confdir  包含所有的配置目录,默认目录是$HADOOP_HOME/conf

GENERIC_OPTION

COMMAND_OPTION

 这个选项的集合被多个命令支持。各个命令和它们的选项描述在下列的段落中。这些命令被分组成用户命令和管理员命令。

通用项

dfsadmin, fs, fsck, job and fetchdt都支持下属选项所有的。应用程序需要实现Tool接口然后才能支持通用选项解析。

 GENERIC_NAME  Description
 --conf <configuration file>  指定一个文件的配置文件
 -D <property>=<value>  为属性指定值
 -jt <local> or <jobtracker:port>  指定一个Job tracker。 仅仅应用于Job。
 -files <comma separated list of files>  用逗号分隔文件并复制到map reduce集群。仅仅应用于job。
 -libjars <comma separated list of jars>  逗号分隔在classpath中的jar文件。仅仅应用于job。
 -archives <comma separated list archives>  用逗号分隔在计算中未归档的文件。 仅仅应用于job。

用户命令

hadoop集群用户基于命令是非常方便的

archive

创建一个Hadoop归档,更多信息可以在Hadoop归档中查找。

Usage: hadoop archive -archiveName  NAME  <src>*  <dest>

 COMMAND_OPTION Description 
 -archiveName NAME  被创建archive的名字
 src  文件系统的工作路径,通常使用正则表达式
 dest  包含archive文件的目标目录

distcp

递归拷贝文件或者目录,更多信息可以通过Hadoop DistCp指南来查看。

Usage:hadoop distcp <srcurl> <desturl>

 COMMAND_OPTION  Description
 srcurl  URL源
 desturl  目标URL

fs

Usage:hadoop fs [GENERIC_OPTIONS] [COMMAND_OPTIONS]

反对使用,使用hdfs dfs代替使用。

使用客户端运行一个通用文件系统。

各种COMMAND_OPTIONS都可以通过File System Shell指南找到

fsck

运行一个hdfs系统检查工具,更多信息参考fsck。

Usage: hadoop fsck [GENERIC_OPTION]  <path> [-move | -delete | -openforwrite] [-file  [-blocks [-locations | racks] ] ]

COMMAND_OPTION Description
path 开始检查这个path
-move 移动错误的文件到/lost+found
-delete 删除错误的文件
-openforwrite 为写打开文件
-files 检查输出文件
-blocks 打印快报告
-locations 打印每个块的位置
-racks 为数据节点位置打印网络拓扑

fetchdt

从NameNode获取委托token,更多信息请参考fetchdt。

Usage: hadoop fetchdt  [GENERIC_OPTIONS]  [--webservice <namenode_http_addr>] <path>

 COMMAND_OPTION
Description

 FileName  文件名字存在的记录中
--webservice https_address  使用http协议代替RPC

jar

运行一个jar文件,用户可以打包他们的map reduce文件并且可以使用这个命令执行。

Usage: hadoop jar <jar>  [mainClass] args ...

流的工作需要通过这个命令。例子可以从Streaming examples中查阅。

单词统计例子也可以使用jar命令来运行,这个例子我们也可以在Wordcount example中查阅。

job

与map reduce job命名交互。

Usage: hadoop job [GENERIC_OPTIONS] [-submit <jobfile>]   |  [status <job-id>]   |   [counter <job-id> <group_name> <counter-name>]  |   [-kill <job-id>]   |   [-events <job-id> <from-event-#>]   |   [-history [all] [JobOutputDir]]   |   [-list [all]] | [kill-task<task-id>]   |   [-fail-task <task-id>]   |   [-set-priority<job-id> <priority>]

 COMMAND-OPTIONS Description 
 -submit job-file  提交一个作业
 -status job-id   打印map reduce完成的百分比和所有作业数量
 -counter job-id group name counter-name  打印统计值
 -kill job-id  杀掉这个作业
 -events job-id from-event-#  #-of-events  打印从jobtracker给定范围接收到的事件细节。
 -history [all]jobOutputDir  打印工作细节,失败和死亡提示信息。 以通过指定[所有]选项获取详细的工作任务和任务成功的尝试
 -list [all]  显示已经完成的作业。 list all显示所有的作业
 -kill-task task-id  杀掉这任务。杀死的任务并不算失败的尝试
 -fail-task task-id  失败的任务。失败的任务算失败尝试
 -set-priority job-id priority  改变job的优先权,允许的有限值是VERY_HIGH, HIGH, NORMAL, LOW, VERY_LOW

pipes

运行一个管道作业。

Usage: hadoop pipes [-conf <path>]  [-jobconf <key=value>,[key=value],...]  [-input <path>]  [-output <path>]  [-jar <jarfile>]

[-inputformat <class>] [-map <class>]  [-partitioner <class>]  [-reduce <class>] [-writer <class>]  [-program <executable>]  [-reduces <num>]

 COMMANE_OPTION Description 
 -conf path  Job配置文件
 -jobconf key=value,key=value,...  添加/覆盖配置文件
 -input path 输入目录
 -output path  输出目录
 -jar jar file  jar文件
 -inputformat class  InputFormat 类
 -map class    java Map类
 -partitioner class  java partitioner
-reduce class  java reduce 类
 -writer class   Java RecordWriter
 -program  executable  可执行的URI
 -reduces num  reduce的数量

queue

此命令可以跟hadoop job的队列交互。

Usage: hadoop queue [-list]  |  [-info <job-queue-name> [ShowJobs]]  | [Showacls]

 COMMAND_OPTION Description 
 -list  获得系统中作业队列的配置列表,以及与作业相关的队列调度信息
 -info job-queue-name [-showJobs]  显示指定作业队列的队列信息和相关的调度信息。如果存在 -showJobs选项的列表,则表示作业提交给指定的作业队列。
 -showacls  显示队列名称和允许当前用户相关的队列操作。列表只包含用户访问队列。

version

打印出Hadoop的版本。

Usage: hadoop version

CLASSNAME

可以使用hadoop脚本去执行任何一个类。

Usage: hadoop CLASSNAME

运行这个类的名字叫着 CLASSNAME

classpath

打印hadoop所需jar文件和需求库的路径。

Usage: hadoop classpath

Administration命令

hadoop集群管理员可以基于管理员命令很好的管理集群。

balancer

运行一个负载均衡工具,管理员可以简单的执行 Ctrl-C去停止这个操作, 更对细节请参考 Rebalancer

Usage: hadoop balancer [-threshold <threshold>]

 COMMAND_OPTION Description 
 -threshold threshold  磁盘容量百分比。覆盖默认的阀值。

daemonlog

为每个守护进程设置日志查看或者设置级别

Usage: hadoop daemonlog  -getlevel <host:port> <name>

Usage: hadoop daemonlog  -setlevel  <host:port> <name> <level>

 COMMAND_OPTION Description 
 -getlevel host:port name  打印运行在host:port守护进程的日志级别,这个命令内部连接到http://host:port/logLevel?log=name
 -setlevel host:port name level  设置运行在host:port守护进程的日志级别,这个命令内部连接到http://host:port/logLevel?log=name

datanode

启动一个 HDFS datanode。

Usage: hadoop datanode [-rollback]

 COMMAND_OPTION Description 
 -rollback 回滚datanode前一个版本,这应该用于停止datanode和hadoop分布式旧版本后 

dfsadmin

启动一个hdfs 管理客户端。

Usage: hadoop   dfsadmin    [GENERIC_OPTIONS]     [-report]      [safemode enter | leave | wait  | get]      [-refreshNodes]   [-finalizeUpgrade]         [-upgradeProgress status | details | force]    [-metasave filename]   [-setQuota <quota> <dirname> ... <dirname>]   [-restoreFailedStorage true|false | check]    [-help [cmd]]

 COMMAND_OPTION Description 
 -report  报告基本的文件系统的信息和状态
 -safemode enter / leave / get  / wait  安全模式维护命令。安全模式的Namenode状态

1.name space不接受改变(只读)

2.不能复制和删除块

NameNode启动自动进入安全模式,当配置的最小的块的百分比满足最小复制状态自动离开安全模式。安全模式也可以手动进入,但也需要手动退出。

 -refreshNodes  允许连接到namenode和那些应停止或重新启用集合,重新读取主机和排除的文件更新到datanode。
 -finalizeUpgrade  HDFS完成升级。datanode删除他们的之前版本的工作目录,其次是Namenode做同样的事。这就完成了升级过程。
 -upgradeProgress  status/details/force  请求当前分布式的升级状态。详细状态或者强制升级。
 -metasave filename
通过hadoop.log.dir属性指定的目录保存NameNode的主要数据结构到文件。如果文件名已经存在将被覆盖。filename将会包含下列的每一项:

1.DataNode心跳

2.等待复制的块

3.目前被复制的块

4.等待被删除的块

 setQuota quota  dirname ... dirname
为每个dirname目录设置定额,目录配额是一个长整数,并且目录树名和数量是一个硬限制。最佳工作目录,错误报告

1.用户不是管理员

2.N不是一个正整数

3.目录不存在或者是一个文件

4.目录将会超过新限额

 -clrQuota dirname ... dirname
明白每个dirname目录的定额,最佳工作目录,与故障报告

1.目录不存在或者是一个文件

2.用户不是管理员,如果目录没有配额它没有错

 -restroreFailedStorage  true/false/check  这个选项将打开/关闭自动试图恢复失败的存储副本。如果要失败的存储再次可用,系统将会试图从checkpoint中恢复edits或(和)fsimage. ‘check‘将返回当前设置
 -help [cmd]  显示给定命令的帮助,或如果没有指定命令,则显示全部帮助

mradmin

运行一个mr管理客户端。

Usage: hadoop mradmin [GENERIC_OPTION]   [-refreshQueueAcls]

 COMMAND_ OPTION Description 
 -refreshQueueAcls  更新hadoop使用的acl队列

jobtracker

运行一个MapReduce job tracker。

Usage:hadoop jobtracker [dumpConfiguration]

 COMMAND_OPTION Description 
 -dumpconfiguration  转储 JobTracker所使用的配置以及JSON格式的JobTracker和exits使用标准输出配置。

namenode

运行namenode。关于升级、回滚、初始化的更多信息请参考Upgrade Rollback 。

Usage: hadoop namenode  [-format] [-upgrade] [-rollback] [-finalize] [-importCheckpoint]

 COMMAND_OPTION Description 
 -format  格式化namenode,它启动namenode,格式化它,然后关闭它。
 -upgrade  Namenode应该开启升级新hadoop版本分布式选项。
 -rollback  回滚之前的版本。停止旧版本hadoop分布式集群后才应该被使用。
 -finalize  确定将要删除先前文件系统的状态,最近的升级变为永久,回滚选项将不再可用。结束后将namenode关闭
 -importCheckpoint  从一个checkpoint目录加载image并且将他保存到当前的一个。从属性fs.checkpoint.dir读取Checkpoint目录

secondarynamenode

运行 HDFS secondary namenode, 更多信息请参考 Secondary Namenode

Usage:hadoop secondraynamenode  [-checkpoint [force]]   |  [-geteditsize]

 COMMAND_OPTION Description 
 -checkPoint [force]  如果EditLog .size >= fs.checkpoint.size,检查点secondary namenode 。 如果使用了-force,检查点忽略EditLog .size
 -geteditsize
打印Edit Log大小

tasktracker

运行一个MapReduce的tasktracker节点。

Usage: hadoop tasktracker

时间: 2024-08-28 12:51:22

Apache Hadoop 2.4.1 命令参考的相关文章

Ubuntu14.04用apt安装CDH5.1.2[Apache Hadoop 2.3.0]

--------------------------------------- 博文作者:迦壹 博客名称:Ubuntu14.04用apt安装CDH5.1.2[Apache Hadoop 2.3.0] 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=558 转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作! -----------------------------------

Apache Hadoop 入门教程

原文同步至 http://waylau.com/about-hadoop/ Apache Hadoop 是一个由 Apache 基金会所开发的分布式系统基础架构.可以让用户在不了解分布式底层细节的情况下,开发出可靠.可扩展的分布式计算应用. Apache Hadoop 框架,允许用户使用简单的编程模型来实现计算机集群的大型数据集的分布式处理.它的目的是支持从单一服务器到上千台机器的扩展,充分利用了每台机器所提供本地计算和存储,而不是依靠硬件来提供高可用性.其本身被设计成在应用层检测和处理故障的库

Apache Hadoop集群安装(NameNode HA + SPARK + 机架感知)

1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 192.168.9.22 Secondary NameNode.JournalNode 3 dn-1 192.168.9.23 DataNode.JournalNode.zookeeper.ResourceManager.NodeManager 4 dn-2 192.168.9.24 DataNode.zook

apache hadoop 2.4.0 64bit 在windows8.1下直接安装指南(无需虚拟机和cygwin)

工作需要,要开始搞hadoop了,又是大数据,自己感觉大数据.云,只是ERP.SOAP风潮之后与智能地球一起诞生的概念炒作.不过Apache是个神奇的组织,Java如果没有它也不会现在如火中天.言归正传: 首先需要下载Apache hadoop 2.4.0的tar.gz包,到本地解压缩到某个盘下,注意路径里不要带空格.否则你配置文件里需要用windows 8.3格式的路径! 第二确保操作系统是64bit,已安装.netframework4.0以上版本,这个你懂的,微软的天下,没有这个怎么混! 第

HBase中此类异常解决记录org.apache.hadoop.ipc.RemoteException(java.io.IOException):

ERROR: Can't get master address from ZooKeeper; znode data == null   一定注意这只是问题的第一层表象,真的问题是: File /hbase/.tmp/hbase.version could only be replicated to 0 nodes instead of minReplica 网上很多都是叫用两种方式解决 stop/start  重启hbase 格式化 hdfs namenode -format,不能随随便便就格

Eclipse连接HBase 报错:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing

在eclipse中连接到HBase报错org.apache.hadoop.hbase.PleaseHoldException: Master is initializing,搜索了好久,网上其它人说的解决办法对我都没用: - 做时间同步 - hbase-site.xml中参数hbase.rootdir使用hdfs协议 - 关闭防火墙 最终,参考这个论坛帖子:http://www.aboutyun.com/thread-20600-1-1.html(Hbase shell 启动报错,使用statu

Apache hadoop namenode ha和yarn ha ---HDFS高可用性

HDFS高可用性Hadoop HDFS 的两大问题:NameNode单点:虽然有StandbyNameNode,但是冷备方案,达不到高可用--阶段性的合并edits和fsimage,以缩短集群启动的时间--当NameNode失效的时候,Secondary NN并无法立刻提供服务,Secondary NN甚至无法保证数据完整性--如果NN数据丢失的话,在上一次合并后的文件系统的改动会丢失NameNode扩展性问题:单NameNode元数据不可扩展,是整个HDFS集群的瓶颈 Hadoop HDFS高

Hive创建表格报【Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException】引发的血案

在成功启动Hive之后感慨这次终于没有出现Bug了,满怀信心地打了长长的创建表格的命令,结果现实再一次给了我一棒,报了以下的错误Error, return code 1 from org.apache.Hadoop.hive.ql.exec.DDLTask. MetaException,看了一下错误之后,先是楞了一下,接着我就发出感慨,自从踏上编程这条不归路之后,就没有一天不是在找Bug的路上就是在处理Bug,给自己贴了个标签:找Bug就跟吃饭一样的男人.抒发心中的感慨之后,该干活还是的干活.

Win下Eclipse提交Hadoop程序出错:org.apache.hadoop.security.AccessControlException: Permission denied: user=D

描述:在Windows下使用Eclipse进行Hadoop的程序编写,然后Run on hadoop 后,出现如下错误: 11/10/28 16:05:53 INFO mapred.JobClient: Running job: job_201110281103_000311/10/28 16:05:54 INFO mapred.JobClient: map 0% reduce 0%11/10/28 16:06:05 INFO mapred.JobClient: Task Id : attemp