Apache Hadoop 2.7.1文档翻译(3) 命令使用参考

概述

在Hadoop中所有的命令都是通过bin/hadoop脚本调用,如果不使用任何参数运行,那么这个hadoop脚本会输出所有的命令及描述信息。

用法:hadoop [--config confdir] [--loglevel loglevel] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]

参数

描述信息

--config confdir

重写或者自定义默认的配置目录,默认的配置目录为${HADOOP_HOME}/conf

--loglevel loglevel

重写或者自定义日志级别,日志级别分别为 FATAL、ERROR、WARN、INFO、DEBUG和TRACE。默认为INFO。

GENERIC_OPTIONS

多个命令支持的通用选项集合

COMMAND_OPTIONS

对应的命令次选项(子命令的选项)

通用选项

许多子命令遵循一个共同的配置选项去修改它们的行为:

通用选项

描述信息

-archives <逗号分割的archives列表>

使用逗号分割指定不存档在计算机设备上的archives,仅适用于job。

-conf <配置文件>

指定应用程序的配置文件。

-D <property>=<value>

使用某个值赋予某个属性。

-files <使用逗号分割的文件列表>

使用逗号分割指定要复制到 Map reduce集群上的文件。仅适用于job。

-jt <local> or <resourcemanager:port>

指定ResourceManager。仅适用于job

-libjars <使用逗号分割的jar列表>

使用逗号分割的要使用到的多个jar文件信息。

Hadoop常用命令

所有的这些命令都是由hadoop这个命令执行。它们被分为用户命令和管理员命令两种。

用户命令

在hadoop集群中用户使用的命令。

归档

创建一个 hadoop 归档。更多的信息可以发现在Hadoop 档案指南

checknative

用法:hadoop checknative [-a] [-h]

命令选项

描述信息

-a

检查需要的连接库信息是否可用。

-h

打印帮助信息。

这个命令检查Hadoop本地代码的可用性。此命令默认只检查libhadoop的可用性。

classpath

用法:hadoop classpath [--glob |--jar <path> |-h |--help]

命令选项

描述信息

--glob

通配符

--jar path

填写在classpath中的jar文件路径

-h,--help

打印帮助信息

打印类路径需要取得Hadoop Jar以及所需的库。如果是无参数调用,那么会打印classpath命令脚本的设置,它可能会包含在classpath条目中的通配符。其它选项打印classpath之后的通配符或者写classpath在jar文件中的目录。在实际环境中不能使用通配符和扩展路径超过支持命令行的最大长度时后者是很有用。

credential

用法:hadoop credential <subcommand> [options]

命令选项

描述信息

create alias [-provider provider-path]

告诉用户(命令执行者)通过这个选项给一个credential存储时起一个别名。在core-site.xml文件里面hadoop.security.credential.provider.path将被使用到,除非指定了-provider这个选项。

delete alias [-provider provider-path] [-f]

这个命令的作用是根据提供的别名删除credential。在core-site.xml文件里面hadoop.security.credential.provider.path将被使用到,除非指定了-provider这个选项。该命令执行之后会要求执行者确认执行,除非指定-f这个选项。

list [-provider provider-path]

列出所有的凭据别名,默认使用core-site.xml文件内hadoop.security.credential.procider.path,除非指定了 –provider。

使用命令管理凭据、密码和凭据提供的密钥。

Hadoop的CredentialProvider允许应用程序和他们如何存储所需密码或密钥分离。为了确定详细的提供类型以及位置,用户必须提供core-site.xml文件内hadoop.security.credential.provider.path的配置或者使用命令行选项 –provider下的每个命令。此路径是逗号分割的多个URL列表,它们指明了提供应该访问的类型和存储位置。例如,下面给出的路径:

user:///,jceks://file/tmp/test.jceks,jceks://hdfs@nn1.example.com/my/path/test.jceks

这些路径明确的指定这些用户应该访问的凭据文件,本地文件位于/tmp/test.jceks这个路径,是由一个Java Keystore 提供和文件位于HDFS内的 nn1.example.com/my/path/test.jceks 同样也是由一个Java Keystore提供的。当我们使用credential命令它通常会给存储的密钥库提供设置密码或私钥。为了明确指出使用哪个提供存储我们应该使用-provider选项。否则,多个provider赋予一个路径,将会固定地使用第一个provider。这或许不是您想要的结果。

例如:hadoop credentinal list –provider jecks://file/tmp/test.jceks

distcp

递归复制文件或目录。更多信息参考Hadoop DistCp教程。

fs

这个命令在文件系统Shell教程中有描述。在HDFS中使用时它等同于hdfs dfs这两个命令。

jar

用法:hadoop jar <jar> [mainClass] args …

它的作用是运行一个jar文件。

使用yarn jar 去代替YARN启动运用程序。

key

通过KeyProvider管理密钥。

trace

显示和修改Hadoop追踪设置。参考Tracing教程。

version

用法:hadoop version

它的作用是显示版本信息。

CLASSNAME

用法:hadoop CLASSNAME

它的作用是运行所指定的类名的类。

管理命令

这种命令对管理员管理Hadoop集群来说是非常有用的。

daemonlog

$hadoop daemonlog –getlevel <host:httpport> <classname>

$hadoop daemonlog –setlevel <host:httpport> <classname>

命令选项

描述

-getlevel host:httpport classname

通过一个有效的classname确定输出的日志的日志级别。守护进程运行地址为host:httpport。此命令内部连接到http://<host:httpport>/logLevel?log=<classname>

-setlevel host:httpport classname level

通过一个有效的classname确定设置的日志的日志级别。守护进程运行地址为 host:httpport。此命令内部连接到http://<host:httpport>/logLevel?log=<classname>&level=<level>

示例:$ bin/hadoop daemonlog -setlevel 127.0.0.1:50070 org.apache.hadoop.hdfs.server.namenode.NameNode DEBUG

转载于:https://my.oschina.net/zhangzhigong/blog/784832

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值