在服务器群集上部署Java应用程序的最佳方法?

时间:2009-01-26 22:08:16

标签: java deployment cluster-computing

我有一个包含32个服务器的集群,我需要一个工具来将Java服务(打包为Jar文件)分发到每台计算机并远程启动服务。该集群由Linux(Suse 10)服务器组成,每个刀片有8个核心。该应用程序是一个使用Oracle Coherence的数据网格。这样做的最佳工具是什么?

5 个答案:

答案 0 :(得分:3)

I asked something similar once,似乎Java并行处理框架可能就是您所需要的:

http://www.jppf.org/

来自网站:

  

JPPF是一个开源网格计算   用Java编写的平台   易于并行运行的应用程序,   并通过订单加快执行速度   数量级。写一次,部署一次,   到处执行!

答案 1 :(得分:1)

查看OpenMOLE:http://www.openmole.org/

此工具使您可以将计算工作流分发到多个资源:从多核机器到群集和计算网格。

它有很好的文档记录,可以通过groovy代码或GUI进行控制。

使用OpenMOLE可以很容易地在群集上分发jar。

答案 2 :(得分:0)

您的服务是否打包为EJB? JBoss在集群方面做得相当不错。

答案 3 :(得分:0)

使用Bit Torrent。在群集上使用Peer to Peer共享样式可以真正提高部署速度。

答案 4 :(得分:-1)

这取决于您拥有的操作系​​统以及网络上的安全设置。

如果您可以使用NFS或Windows Share,我建议您将软件放在所有计算机都可以看到的NFS驱动器上。这样你就可以从一个副本中运行它们。

如果你有远程shell或安全远程shell,你可以编写一个脚本,在每台机器上运行相同的命令,例如在所有机器上启动,或在所有机器上停止。

如果您有Windows,则可能需要在每台计算机上设置服务。如果你有linux,你可能想要为每台机器添加一个启动/关闭脚本。

当您拥有多台计算机时,拥有一个监视所有服务正在运行的工具,在一个地方收集日志和错误和/或允许您从GUI启动/停止它们可能会很有用。有很多工具可以做到这一点,不确定哪些是最好的。