YARN(Hadoop)学习笔记(2)

运行yarn上的第一个实例——distributedshell


  一、关于DistributedShell

     DistributedShell是一个可以分布式运行shell命令的应用程序,可以并行执行用户提供的shell脚本和shell命令。

    Dshell是yarn(我用的是hadoop-2.3.0版本和hadoop-2.4.0版本)自带的运行实例。它在share/hadoop/yarn/目录下,是一个叫做hadoop-yarn-applications-distributedshell-2.3.0.jar的jar包。

     /share目录存放了hadoop各个模块,如yarn,HDFS,MapReduce编译后生成的jar包,dshell实例的jar包就位于这个目录之下。

    我部署的hadoop是在使用centOS的服务器上的,截图如下,黄色框部分是所说的dshell的jar包

    

    二、运行DistributedShell

    运行dshell之前,需要确保部署的cluster已经启动。

    如果没有启动可以在作为master的server上,使用脚本/sbin/start-all.sh或者/sbin/start-dfs.sh以及/sbin/start-yarn.sh分别启动。通过jps命令查看几个重要的进程是否已经启动,其中RM和NM是必须要有的,否则运行时候会出错,或者没法成功执行dshell

    使用hadoop jar脚本运行“一、关于DistributedShell ”中提到的Dshell包。


     hadoop jar 是/bin/目录下的一个hadoop shell,用于向Client提交作业。它的用法是 hadoop jar <jar> [mainClass] args...其中<jar>表示需要提交的jar包名字。 [mainClass]表示main class的名字,可以不用输入。args是main class输入参量。

     /bin/存放了hadoop最基本的使用脚本和管理脚本。这些脚本是?sbin/目录下其他脚本的实现基础,用户可以通过这些scripts直接使用和管理hadoop cluster。

     输入如下黄色框中的命令,就可以运行dshell了。其中输入\和enter可以实现换行输入。

 

   然后根据下面提示的脚本使用说明就可以使用dshell脚本了。

   举个例子,使用-jar包含AM实现的dshell jar包,使用-num_containers分配7个container,使用-container_memory  270指定shell command的container内存大小为270MB,运行的结果如截图显示,使用-shell_command ls通过shell命令进行查看。


   注意如果一个NM都没有启动,图上的numNodeManagers=0,那么dshell将不能运行成功。所以在运行dshell之前务必要保证cluster中至少有一个启动的nodemanager。



   如果出现上面图中黄色框中的日志记录,则表示作业已经提交运行了。


   出现上面截图中黄色框中的日志记录表明dshell已经成功执行!

    

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值