hadoop使用Yarn进行资源队列划分管理

      最近在做一个使用sqoop抽取数据最终存进hawq里面的一个项目,然后在做项目的过程,因为经验等一系列的问题,碰到了不少坑,现在将我最近碰到的一个坑写一下,现象大致是这样的,数据在通过sqoop跑量时,会出现跟hawq哄抢资源的情况,也就是我通过yarn application -list 命令,我能明显看到hawq的一个进程一直在占用着资源,没法释放出来给sqoop使用

就是图上的这种,我的MapReduce应用一直处于等待状态,然后hawq又一直不释放资源,只有我手动的去杀死 hawq 应用,才能让MapReduce跑下去,说明一下,之前出的问题忘记截图了,导致现在这个图其实有些地方是不对的,比如那个资源队列名。

    后面通过看hawq文档和百度相关的资料,最终发现使用hawq是需要配置资源管理类型的,还是太年起啊,HAWQ支持两种类型的资源管理模式,Standalone模式和Yarn模式。当Apache HAWQ集群在Standalone模式下运行时,会独占整个集群的资源而不去考虑其他共存的应用程序的资源使用需求。当Apache HAWQ集群在Yarn模式下运行时,Apache HAWQ会作为Yarn的一个应用程序动态地从Yarn申请资源,从而达到Apache HAWQ与其他Yarn应用程序弹性共存的效果,而hawq它默认是使用standalone模式的,在该模式时一旦有多个任务,它们其实就想相当于处于一个FIFO模式,谁先来我处理谁,然后等处理完了才轮到下一个资源,这种模式如果你的集群本身是为了hawq服务的,那么就没啥影响,如果不是的,那么就得切换下管理模式了。

然后再在hawq里面配置一下你的资源队列

给hawq配置一个资源队列就表明了,它和MapReduce使用的不是同一个资源队列,所以我在资源队列的配置上,我其实是有配置三个资源队列的,其中一个hawqque专门给hawq使用的,其他两个给别的组件使用。

yarn组件

MapReduce2组件

就这样成功解决资源抢占的问题。

 

参考地址:https://blog.csdn.net/qq_21383435/article/details/82659947#335__171

https://blog.csdn.net/wzy0623/article/details/70314393

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值