Storm0.8.2这个版本的亮点是新的“隔离调度器”,使得在一些拓扑中分享集群变得简单和安全。隔离调度程序允许您指定哪些拓扑应该“孤立”,这意味着它们运行在集群中的一组专用的机器,没有其他的拓扑将运行。这些孤立的拓扑在集群中给定优先级,如果有竞争与non-isolated拓扑,资源将被分配到孤立的拓扑。如果需要得到资源给一个孤立的拓扑,资源将远离non-isolated拓扑。一旦所有隔离拓扑分配,剩余的机器在所有non-isolated共享集群拓扑。在Nimbus配置中你需要配置隔离设置"storm.sheduler"为"backtype.storm.sheduler.IsolationScheduler"。然后,使用"isolation.scheduler.machines"配置确定需要多少机器在一个拓扑中。这个配置是一个拓扑名称映射到机器的数量。例如:
isolation.scheduler.machines:
"my-topology": 8
"tiny-topology": 1
"some-other-topology": 3
任何未列出的集群拓扑提交不会孤立。注意,用户没有办法使得Storm影响他们的隔离设置——这是只允许管理员的集群(这是非常有意的)。
隔离调度器解决多用户共享问题,通过提供完整的隔离拓扑,避免多种拓扑资源争用。它的目的是“生产”环境拓扑应该列在隔离配置, 测试 或开发中的拓扑就不应该了。剩下的机器在集群中扮演双重的角色,对隔离的拓扑故障转移和运行非分隔离拓扑。
隔离调度器解决多用户共享问题,通过提供完整的隔离拓扑,避免多种拓扑资源争用。它的目的是“生产”环境拓扑应该列在隔离配置, 测试 或开发中的拓扑就不应该了。剩下的机器在集群中扮演双重的角色,对隔离的拓扑故障转移和运行非分隔离拓扑。
如有转载,请注明出处:
@ZJU-Tony
1262407491
欢迎拍砖,共同学习!