• hadoop入门手册3:Hadoop【2.7.1】初级入门之命令指南


    问题导读
    1.hadoop daemonlog管理员命令的作用是什么?
    2.hadoop如何运行一个类,如何运行一个jar包?
    3.hadoop archive的作用是什么?






    概述


    hadoop命令被bin/hadoop 脚本调用. 运行hadoop脚本不带任何命令将打印命令相关描述。
    Usage: hadoop [--config confdir] [--loglevel loglevel] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS]


    FIELD
    Description
    --config confdir
    覆盖默认配置文件目录。默认路径${HADOOP_HOME}/conf.
    --loglevel loglevel
    覆盖日志级别. 有效日志级别为FATAL, ERROR, WARN, INFO, DEBUG, 和 TRACE. 默认是 INFO.
    GENERIC_OPTIONS
    多项命令共同支持的选项
    COMMAND_OPTIONS
    hadoop子项目文档描述了hadoop命令的选项。hdfs和YARN在其它文档那个




    Hadoop 通用选项

    Many subcommands honor a common set of configuration options to alter their behavior:


    GENERIC_OPTION
    Description
    -archives <comma separated list of archives>
    Specify comma separated archives to be unarchived on the compute machines. Applies only to job.
    -conf <configuration file>
    指定应用程序配置文件
    -D <property>=<value>
    使用一个给定的属性值
    -files <comma separated list of files>
    指定文件复制到mapredue集群。仅适用于job.
    -jt <local> or <resourcemanager:port>
    指定ResourceManager.仅适用于job.
    -libjars <comma seperated list of jars>
    指定jar文件包括所在classpath.仅适用于job.



    Hadoop 通用命令


    所有这些命令都是从Hadoop的shell命令执行。他们被分成用户命令和管理员命令【 User Commands 和 Admininistration Commands.】

    用户命令

    用于Hadoop集群用户命令。

    archive

    创建一个Hadoop档案,更多信息查看 Hadoop Archives Guide.


    checknative

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


    COMMAND_OPTION
    Description
    -a
    检查所有库
    -h
    打印帮助


    这个命令检查Hadoop本地代码的可用性。更多信息查看 #NativeLibraries.html。默认,此命令只检查libhadoop的可用性。
    classpath

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


    COMMAND_OPTION
    Description
    --glob
    通配符
    --jar path
    jar路径
    -h, --help
    打印帮助


    打印classpath需要Hadoop的jar和需要的库类路径。如果不带参数调用,然后打印的命令脚本设置classpath。这可能包含通配符


    credential

    用法:hadoop credential <subcommand> [options]


    COMMAND_OPTION
    Description
    create alias [-provider provider-path]
    提示证书被存储为指定别名的用户。如果没有-provider选项的话,那么将会默认使用core-site.xml文件中hadoop.security.credential.provider.path项对应的值。
    delete alias [-provider provider-path] [-f]
    删除与所提供的别名对应的证书文件。如果没有-provider选项的话,那么将会默认使用core-site.xml文件中hadoop.security.credential.provider.path项对应的值。这项操作需要通过用户的确认,除非使用了-f选项。
    list [-provider provider-path]
    列出所有的证书别名。如果没有-provider选项的话,那么将会默认使用core-site.xml文件中hadoop.security.credential.provider.path项对应的值。



    该命令在凭证提供者内部管理凭证(credentials),密码(passwords)和秘密(secrets)。

    Hadoop的CredentialProvider API支持应用程序拆分,并且要求拆分后的应用如何储存所需的密码(passwords)和秘密(secrets)。为了指明一个Provider的位置和类型,需要在core-site.xml添加hadoop.security.credential.provider.path配置项,或者通过指令中-provider命令选项进行设置。Provider路径是一串以逗号分割的URL字符串。这些字符串会说明Provider的类型和位置,举个例子:

    [Bash shell] 纯文本查看 复制代码
    1
    user:///,jceks://file/tmp/test.jceks,jceks:/hdfs@nn1.example.com/my/path/test.jceks



    指示当前用户的凭证,需要通过User Provider咨询。存储在本地文件系统的文件/tmp/test.jceks是一个Java Keystore Provider,相应的存储在hdfs上的文件nn1.example.com/my/path/test.jcek也是一个Java Keystore Provider。

    当使用credential命令时,它通常要提供密码(password)或秘密(secret)给一个特定的凭证存储provider。为了清晰的表明要显示使用哪个provider存储,可以在命令中使用-provider选项。否则,给定多个provider的时候,则使用的哥非持久的provider,这可能不是你预期的
    例如:

    [Bash shell] 纯文本查看 复制代码
    1
    hadoop credential list -provider jceks://file/tmp/test.jceks



    distcp

    递归的拷贝文件或者目录。更多信息查看 Hadoop DistCp Guide.


    fs
    这个命令在文档 File System Shell Guide  。 和hdfs脚本的dfs类似

    jar

    用法: hadoop jar <jar> [mainClass] args...
    运行一个jar文件使用yarn启动yarn应用程序

    key
    通过KeyProvider管理秘钥

    trace

    查看和修改Hadoop跟踪(tracing)设置。查看:跟踪(tracing)指南。
    Tracing Guide.

    version

    用法: hadoop version

    打印版本

    CLASSNAME

    用法: hadoop CLASSNAME

    运行一个类


    管理员命令

    集群管理员命令
    daemonlog
    用法:

    [Bash shell] 纯文本查看 复制代码
    1
    2
    hadoop daemonlog -getlevel <host:httpport> <classname>
    hadoop daemonlog -setlevel <host:httpport> <classname> <level>




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


    设置或获取指定后台进程的日志级别

    [Bash shell] 纯文本查看 复制代码
    1
    Example: $ bin/hadoop daemonlog -setlevel 127.0.0.1:50070 org.apache.hadoop.hdfs.server.namenode.NameNode DEBUG







    相关内容 
    hadoop入门手册1:hadoop【2.7.1】【多节点】集群配置【必知配置知识1】



    hadoop入门手册2:hadoop【2.7.1】【多节点】集群配置【必知配置知识2】




    hadoop入门手册3:Hadoop【2.7.1】初级入门之命令指南



    hadoop入门手册4:Hadoop【2.7.1】初级入门之命令:文件系统shell1



    hadoop入门手册5:Hadoop【2.7.1】初级入门之命令:文件系统shell2



    hadoop2.X使用手册1:通过web端口查看主节点、slave1节点及集群运行状态
    http://www.aboutyun.com/thread-7712-1-1.html

  • 相关阅读:
    泛型理解及应用(二):使用泛型编写通用型Dao层
    泛型的理解及应用(一):泛型擦除
    Servlet、Filter 生命周期
    Java多线程(六) 线程系列总结
    Java多线程(五) Lock接口,ReentranctLock,ReentrantReadWriteLock
    Java多线程(四) 线程池
    Java多线程(三) 多线程间的基本通信
    Java多线程(二) 多线程的锁机制
    Java多线程(一) 多线程的基本使用
    Spring Boot实战:模板引擎
  • 原文地址:https://www.cnblogs.com/snowbook/p/5681384.html
Copyright © 2020-2023  润新知