设为首页 加入收藏

TOP

hadoop shell命令详解
2019-02-12 12:37:51 】 浏览:61
Tags:hadoop shell 命令 详解
版权声明:作者:sun_shang 出处:http://blog.csdn.net/sun_shang/ 文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 https://blog.csdn.net/sun_shang/article/details/78090934

hadoop的shell命令分为两种:

一种是启动命令:位于sbin目录下面

一种是控制/操作命令(HDFS+MapReduce+yarn),主要位于bin目录下面,

其实最终的启动命令也是调用了控制命令来进行机器服务的启动,区别在于启动命令中需要使用ssh的相关命令来控制其他机器启动服务,而控制/操作命令主要是直接调用了hadoop体统的服务了接口。

hadoop配置信息:

hadoop配置信息注意在三个地方,分别是

${HADOOP_HOME]/libexec,$(HADOOP_HOME/etc/hadoop.${HADOOP_HOME/share/hadoop。其

中第一个文件中主要储存hadoop的默认环境变量信息,

第二个文件中主要是我们搭建环境的时候配置的环境变量信息,

第三个文件主要是hadoop的相关依赖包信息,包括各个模块依赖的其他第三方jar等信息。

hadoop shell命令简单描述:

hdfs-config.sh

最基本的、公用的环境变量配置脚本,会调用etc/hadoop/hadoop-env.sh脚本。主要是配置java启动项相关参数,比如java执行环境的classpath等。

hdfs-config.sh

hdfs对应的配置信息,里面会调用hadoop-config.sh。

mapred-config.sh

mapred对应的配置信息,里面会调用hadoop-config.sh。

yarn-config.sh

yarn对应的配置信息,里面会调用hadoop-config.sh。

httpfs-config.sh &kms-config.sh

F分别对应webhdfs和kms(key management service)的配置信息。

/etc/hadoop中的命令

hadoop-env.sh

用户自定义的公用的相关环境变量信息,比如JAVA_HOME,HADOOP_PID_DIR, HADOOP_CLASSPATH等(基本上除httpfs和kms外其他服务均就会调用该脚本)。

mapred-env.sh

mapred相关的环境变量信息,比如配置mapred相关的pid存储路径(historyserver)等。

yarn-env.sh

yarn相关环境变量信息(yarn相关服务执行的时候会调用该脚本)。

httpfs-env.sh & kms-env.sh

具体的webhdfs和kms相关的环境变量信息,比如日志存储路径,pid存储路径等。

sbin/下面的

sbin/distribute-exclude.sh

将需要排除的datanode节点主机文件发布到所有NN机器上去。

sbin/httpfs.sh start/stop

主要是提供一个基于HTTP的RESTful操作接口,基本包括hdfs文件系统的所有命令。

sbin/hadoop-daemon.sh start/stop(….)

启动/停止当前节点的HDFS相关的服务

sbin/yarn-daemon.sh start/stop(….)

启动/停止当前节点的yarn相关的服务

start-dfs.sh

启动/停止所以节点的HDFS相关服务

sbin/start-yarn.sh

启动/停止所以节点的yarn相关服务

sbin/mr-jobhistory-daemon.sh

启动yarn相关命令

kms.sh

启动/停止kms(Hadoop Key Management Service)。

refresh-namenodes.sh

刷新所有NN节点内容。

slaves.sh

通知其他slave节点执行命令。

start/stop-secure-dns.sh

启用/停用受保护的DN服务。datanode

start/stop-balance.sh

启用/停用数据平衡服务。

start/stop-all.sh

启动/停止hdfs和yarn服务进程,底层调用start/stop-dfs.sh和start/stop-yarn.sh命令。

红色字的底层调用了sbin/hadoop-daemon.sh sbin/yarn-daemon.sh

注意:hadoop-daemon.sh 是启动、停止当前节点的HDFS相关的服务或者执行相对应的脚本命令。

但是hadoop-daemon.sh只对一台机器起作用,hadoop-daemons.sh会对多台机器起作用

sbin/start-dfs.sh命令:

启动顺序:namenode/datanode/secondarynamenode/

sbin/start-yarn.sh命令:

启动顺序:resourcemanager、nodemanager、

sbin/mr-jobhistory-daemon.sh starthistoryserver命令:

启动这个可以查看历史日志

可以查看一下如何运行的:vim sbin/start-dfs.sh

由于我们stop-dfs.sh等命令最后总会显示没用的出错信息,看起来不简洁,因此可以更改其内容如下:

NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf-namenodes2>/dev/null)

这是将没用的错误信息发送到回收站。


编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Hadoop之——Maven环境搭建 下一篇Hadoop的特点与缺点

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(214) }