我正在用 Akka 编写一个分布式研究应用程序,使用一个简单的主节点和多个工作节点拓扑,目的是部署到内部节点集群或企业云中。(当 Akka 2.1 可用时,我会考虑使用集群支持)
我的问题: 将我的代码(以包含 Akka 微内核的文件夹的形式)部署到每个节点上,启动它,让它做它的事情,然后拆除并根据需要重复的最简单/最好的方法是什么?
- 每个工作节点的微内核目录和可执行文件都是相同的,并且只有几 MB。Config 包含他们将连接到的 master 的 IP。
- 我打算手动启动master。
- 弹性不是问题,因为这不是关键业务应用程序,而是私人研究问题。
- 没有重要的数据存储在本地给工人。
- 应用程序完成后,我可能想重新部署一个不同的应用程序而不拆除节点(例如,改进了代码库)。
更新:发现 Condor 节点支持在整机模式下运行的作业。这应该支持将微内核作为作业运行,并且只需要确保工作人员在完成后正确退出。
更新 2:有人提到 Zookeeper 可能很适合这个。希望有经验的人提供意见。