以集群模式在同一物理节点上运行Storm nimbus和supervisor



我现在有一个2个物理节点的风暴集群。我在节点1上运行storm nimbus在节点2上运行storm supervisor。看起来我所有的拓扑都只在节点2(管理节点)上运行。我是否也应该在node-1上运行supervisor ?

谢谢

你可以,但我不建议你这么做。

在Storm当前的设计中,nimbus是一个单点故障(有解决这个问题的计划),但是在nimbus的同一节点上运行一个监督器更有可能发生一些不好的事情,这对你的Storm集群来说将是灾难性的。

此外,Storm的部分设计是工作节点和主管节点应该能够死亡,而Storm应该能够恢复。如果你使用你的node-1作为管理者,除了它是云服务器,你失去了一些灵活性。

最后,随着集群的增长,你的nimbus服务器将有很多自己的事情要做,你希望它快速运行,这样它就不会减慢你的工作,因为如果你不给它足够的资源,它可能成为一个瓶颈。

如果您希望拓扑在node-1上运行,那么您也应该在node-1上运行Supervisor进程。Nimbus帮助协调supervisor之间的工作,但不执行拓扑的Workers本身。有关详细信息,请参见http://storm.incubator.apache.org/documentation/Tutorial.html

最新更新