【发布时间】:2013-04-22 20:23:08
【问题描述】:
我有多个服务器,它们通过 cron-tab 调度在 JAVA 中运行相同的后端进程。
早些时候,我只有一台服务器来安排所有作业。这更容易管理。
现在,随着服务器数量的增加和在具有相同代码库的所有服务器上运行相同的进程,我想在所有机器上安排相同的 cron 作业。
我遇到了问题,因为如果有单个更改,我必须面对很多麻烦并手动更改/更新所有服务器。
谁能告诉我一些从一个共同点管理多台服务器上的调度的方法? 是否有任何工具/库/API 等来处理这种情况?
到目前为止,我正在所有服务器上更新/复制(使用 SCP)JAR,然后通过单独登录到每个服务器来重新启动所有进程。
到目前为止,我更喜欢如果我不必更改我的 JAVA 代码来管理这个(在日志运行中,我可以想到那个)。
但是,如果我可以创建一个小型 JAVA 应用程序(使用 Quartz)或者甚至是一个 shell 脚本来处理调度,我会去做。
我想明确一点,在所有服务器上更新 JAR 不是我的问题,我正在为此设置构建脚本(ANT)。
我关心的是所有服务器的通用调度代码。
有没有办法在一台服务器上安排作业,在远程服务器上启动作业?如果发生这种情况,我只需要在一台服务器上管理调度。我也不需要担心时钟同步问题..
【问题讨论】:
-
Quartz 调度器可以在这里提供帮助吗?
-
您的意思是,如果您可以更改代码,您必须将 jar(类)放在所有服务器上......对吗?
-
更新问题以回答您的疑问..
-
用ansible怎么样?