基于WEB的HPC群集节点pipe理

我正在学习我的学校gradle论文。 主要目标是创build基于Web的应用程序,在这个应用程序中,login的用户可以看到空闲和繁忙的节点,打开和closures它们,看看它们正在运行什么过程等等。我发现我可以做这样的事情 – 写一些会运行的cron守护进程每30秒左右一次,每个节点都可以运行ping工具查看是否打开,然后将结果写入某个文件。 然后从我的networking应用程序(我会写在PHP中)我可以读取信息。 这是一个很好的解决scheme吗? 你会如何build议我这样做? 最后,是否有任何现有的解决scheme(它可能不是一个明确的基于ewb的)pipe理集群节点?

在过去,我使用Ganglia进行节点可用性和负载监视。 它不会告诉你哪些作业正在运行,但会显示你的群集的健康状况。

Nagios是我用过的群集中的其他东西,但是它不仅仅是群集监控。 它可以监视进程,磁盘空间,内存和任何你可以脚本或find一个脚本。 这也是基于networking的。

至于工作调度,有几个选项取决于你想如何configuration的东西。 选项包括但不限于:OpenPBS,TORQUE,PBSPro,Maui Cluster Scheduler,SLURM,Sun Grid Engine。 这些都是我意识到中心目前正在使用HPC计划。 维基百科有一个列表,但我不相信所有列出的是HPC调度。 http://en.wikipedia.org/wiki/Job_scheduler

站点:

Ganglia http://ganglia.sourceforge.net/

Nagios http://www.nagios.org/

检查出DRMAA 。 这是作业提交和控制的通用API,正在成为工作负载pipe理器之间的标准。 至于控制节点本身,这是高度依赖于你正在使用的系统。 大多数API都可以使用某种API来与它们进行交互,并执行与使用命令行工具相同的操作。

你的项目听起来很有趣,祝你好运。