Wiele serwerów działa jak jeden z całym sprzętem? [Zamknięte]

12

do tej pory mam 10 serwerów dla HPC, zorientowanych na moc obliczeniową. Moi użytkownicy muszą uruchomić kilka procesów za pomocą qmake. Użytkownicy są przyzwyczajeni do pracy z Ubuntu 9.10, a oprogramowanie z repozytoriów jest dla nich przełączalne.

Wdrożyłem Ubuntu 9.10 na wszystkich 10 serwerach (Skały pxe).

Do tej pory współpracujemy z równoległymi ssh i klastrem-ssh, co pozwala na uruchomienie tego samego procesu na wszystkich serwerach. Dzięki tym narzędziom narzędzia te pozostają niezależne, ale z tym samym oprogramowaniem i tym samym uruchomionym poleceniem.

Teraz chcielibyśmy przejść do następnego kroku i zobaczyć wszystkie serwery jako jeden ze wszystkimi zasobami z pozostałych 9, jakby były jego zasobami.

Różnica byłaby znaczna pod względem czasu przetwarzania, a także czasu na zaprojektowanie polecenia do uruchomienia.

Wszelkie porady dotyczące tego, które oprogramowanie będzie użyteczne, będzie bardzo przydatne?

Dzięki

Marc Riera
źródło
Aby zaimplementować rodzaj klastra, o którym wspominasz, konieczne będzie przepisanie oprogramowania, aby było zaprojektowane do działania na takiej platformie. Czy przepisywanie oprogramowania jest objęte zakresem? Jeśli nie, nie znam rozwiązania, które będzie działać zgodnie z opisem.
Chris Thorpe,

Odpowiedzi:

4

To, o czym mówisz, nazywa się Single System Image (SSI) . Najpopularniejszy wariant tego schematu dla systemu Linux jest implementowany przez MOSIX . Chociaż zapewnia pewne korzyści w zakresie zarządzania systemem, ogólnie procesy nie mogą obejmować wielu węzłów bez użycia jakiejś formy MPI . Zasadniczo niezależnie od tego, czy używasz „standardowego” klastra działającego na gridengine, czy tworzysz system w jednym obrazie, nadal będziesz musiał zmodyfikować całe oprogramowanie, aby móc obejmować wiele węzłów.

Kamil Kisiel
źródło
2

Klaster nie jest wydajnością pojedynczego komputera, lokalizacja fs / pamięci jest ważna dla wydajności.

Robienie rzeczy na poziomie aplikacji, choć mniej ogólne, jest bardziej zasobooszczędne. Twój przykład qmake można znacznie przyspieszyć, konfigurując distcc.

Tobu
źródło
2

na koniec skorzystałem z Sun Grid Engine.

Dokumentowałem na prywatnej wiki, wycinałem i wklejałem na swoim blogu. Myślę, że może to być przydatne nawet bez tłumaczenia. ;)

Wpis na blogu: http://suportrecerca.barcelonamedia.org/blog/?p=240

Jeśli ktoś chce kodu wiki, po prostu zapytaj go tutaj.

Dzięki.

Marc Riera
źródło
1

Nigdy wcześniej go nie wdrożyłem, ale wygląda na to, że klaster beowulf zadziałałby na to, co próbujesz zrobić. W przeszłości dużo czytałem na ten temat, a w przypadku niektórych prostszych procesów może być konieczne niewielkie przekodowanie w zależności od tego, co próbujesz osiągnąć.

einstiien
źródło