Storm学习第三天

调度器:


Storm有四种内置的调度器:DefaultScheduler, IsolationScheduler, MultitenantScheduler, ResourceAwareScheduler.


Pluggable scheduler:
        为了给worker安排executor你可以通过自定义调度器来代替默认的调度器,可以在storm.yaml中使用storm.scheduler来配置调度器,但是自定义的调度器必须实现IScheduler接口。


Isolation scheduler:
          isolation scheduler使得很多topology分享一个集群是安全方便的,isolation scheduler使得定制化哪些topologies应该被孤立,意味着他们能够运行在集群中的一些特定机器上,其他的topology不能运行在这些机器上。这些独立的topology在集群中被给予很高的优先权,所以与其他的topology竞争资源的时候,这些topology将会得到资源,甚至为了确保这些独立topology获得足够的资源,非独立的topology的资源可能被抢占,所有的独立topology获得资源之后,剩下的机器会被非独立的topology获得。
          你可以在Nimbus中配置"storm.scheduler"为"org.apache.storm.scheduler.IsolationScheduler" 来实现独立topology的配置,
然后通过设置"isolation.scheduler.machines"为每个独立的topology设置他所需要的机器数量,例如:
        isolation.scheduler.machines: 
                             "my-topology": 8
                             "tiny-topology": 1
                             "some-other-topology": 3 
被提交到集群的topology没在上面列表中的将不会被独立,注意只有管理员权限可以设置这个,普通用户是不行的。
isolation scheduler 通过在topologies中提供隔离解决了资源竞争问题,这样做的目的是生产环境的topology应该被独立,还在测试或者开发的不应该在这之中,集群中剩下的机器是双重角色,一方面是独立topology的故障转移和非独立topology的运行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值