Storm基础(二)调度器(Scheduler)

原文链接:http://storm.apache.org/releases/1.0.2/Storm-Scheduler.html

本人原创翻译,转载请注明出处

Storm现在有四种内建的调度器: DefaultScheduler, IsolationScheduler, MultitenantScheduler, ResourceAwareScheduler。

可插拔(Pluggable)调度器

你可以实现自己的调度器来替代默认调度器,自定义给workers分配executors的方式。在你的storm.yaml文件中用"storm.scheduler"来配置,并且你的调度器必须实现IScheduler接口。

孤立(Isolation)调度器

孤立调度器使多个topologies可以简单、安全的共享一个集群。孤立调度器可以使你指定哪个topology应该被孤立,这类被孤立的topology会运行在集群中专用的一组服务器上,其他topology都不会在这些服务器上。专用服务器上的资源会全部分配给孤立topology,如果这些服务器上有其他非孤立topology,那么非孤立topology的运行资源也会被剥夺。为孤立topology分配完资源之后,剩下的资源将由剩下的非孤立topology共享。

要配置孤立调度器首先要在Nimbus的配置中把"storm.scheduler"设置为"org.apache.storm.scheduler.IsolationScheduler"。然后,通过"isolation.scheduler.machines"选项来指定每个topology分配几个服务器。例如:

isolation.scheduler.machines: 
    "my-topology": 8
    "tiny-topology": 1
    "some-other-topology": 3

没在这里列出的topology就不是孤立topology。Storm的普通用户无权修改孤立配置,只有集群管理员有这个权利。
孤立调度器解决了多租约(multi-tenancy)问题——避免topologies之间的资源竞争。生产环境的topologies应该进行孤立配置,开发和测试时则不必。集群中剩下的服务器扮演了孤立topologies失效备援(failover)和运行非孤立topologies两个角色。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • YarnYarn产生背景:Yarn直接来自于MR1.0MR1.0 问题:采用的是master slave结构,ma...
    时待吾阅读 11,190评论 2 23
  • 目录 场景假设 调优步骤和方法 Storm 的部分特性 Storm 并行度 Storm 消息机制 Storm UI...
    mtide阅读 17,236评论 30 60
  • 原文链接Storm Tutorial 本人原创翻译,转载请注明出处 这个教程内容包含如何创建topologies及...
    quiterr阅读 5,604评论 0 6
  • Strom集群结构是有一个主节点(nimbus)和多个工作节点(supervisor)组成的主从结构,主节点通过配...
    看山远兮阅读 7,961评论 0 7
  • CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂...
    范小饭_阅读 3,408评论 1 10

友情链接更多精彩内容