Mehrere Server verhalten sich wie ein einziger mit der gesamten Hardware? [geschlossen]


11

Mittlerweile habe ich 10 Server für HPC, Power Computing orientiert. Meine Benutzer müssen mehrere Prozesse mit qmake starten. Die Benutzer sind es gewohnt, mit Ubuntu 9.10 zu arbeiten, und die Software aus den Repositorys ist für sie austauschbar.

Ich habe Ubuntu 9.10 auf allen 10 Servern (PXE Rocks) bereitgestellt.

Mittlerweile arbeiten wir mit Parallel-SSH und Cluster-SSH, wodurch auf allen Servern der gleiche Prozess gestartet werden kann. Mit diesen Tools bleiben die Server unabhängig, jedoch mit derselben Software und demselben gestarteten Befehl.

Jetzt möchten wir mit dem nächsten Schritt fortfahren und alle Server als einen einzigen Server mit allen Ressourcen der anderen 9 sehen, als ob es seine Ressourcen wären.

Der Unterschied wäre zeitlich erheblich für die Verarbeitung und auch für die Gestaltung des zu startenden Befehls.

Irgendwelche Ratschläge, welche Software verwendet werden soll, sind sehr nützlich?

Vielen Dank


Um die Art von Cluster zu implementieren, auf die Sie anspielen, muss die Software neu geschrieben werden, damit sie auf einer solchen Plattform ausgeführt werden kann. Ist ein Umschreiben der Software im Geltungsbereich? Wenn nicht, ist mir keine Lösung bekannt, die wie von Ihnen beschrieben funktioniert.
Chris Thorpe

Antworten:


4

Sie sprechen von Single System Image (SSI) . Die häufigste Variante dieses Schemas für Linux wird von MOSIX implementiert . Während es einige Vorteile in Bezug auf die Systemverwaltung bietet, können Prozesse im Allgemeinen nicht über mehrere Knoten verteilt werden, ohne irgendeine Form von MPI zu verwenden . Unabhängig davon, ob Sie einen "Standard" -Cluster verwenden, der auf Gridengine ausgeführt wird, oder Ihre Systeme zu einem einzigen Image zusammenfassen, müssen Sie dennoch die gesamte Software ändern, um mehrere Knoten umfassen zu können.


2

In Bezug auf die Leistung eines Clusters handelt es sich nicht um einen einzelnen Computer. Die Lokalität von fs / memory ist für die Leistung wichtig.

Dinge auf Anwendungsebene zu tun, ist zwar weniger allgemein, aber ressourceneffizienter. Ihr qmake-Beispiel kann durch Einrichten von distcc erheblich beschleunigt werden.


2

Am Ende habe ich Sun Grid Engine verwendet.

Ich habe in einem privaten Wiki dokumentiert und in meinem Blog ausgeschnitten und eingefügt. Ich denke, es kann auch ohne Übersetzung nützlich sein. ;)

Blog-Eintrag : http://suportrecerca.barcelonamedia.org/blog/?p=240

Wenn jemand den Wiki-Code haben möchte, frag ihn einfach hier.

Vielen Dank.


1

Ich habe noch nie einen implementiert, aber es klingt so, als würde ein Beowulf-Cluster für das funktionieren, was Sie versuchen. Ich habe in der Vergangenheit viel darüber gelesen und für einige einfachere Prozesse ist möglicherweise nur eine geringe Neukodierung erforderlich, je nachdem, was Sie erreichen möchten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.