MOSIX - MOSIX

MOSIX
Deweloper (y) Amnon Barak
Wersja stabilna
4.4.4 / 24 października 2017 r . ; 3 lata temu  ( 24.10.2017 )
System operacyjny Linux
Rodzaj Oprogramowanie klastra
Licencja posiadać
Stronie internetowej www .mosix .cs .huji .ac .il / index .html

MOSIX to zastrzeżony rozproszony system operacyjny . Chociaż wczesne wersje były oparte na starszych systemach UNIX , od 1999 roku koncentrują się na klastrach i siatkach Linuksa . W klastrze / gridzie MOSIX nie ma potrzeby modyfikowania ani łączenia aplikacji z żadną biblioteką, kopiowania plików lub logowania do zdalnych węzłów, ani nawet przypisywania procesów do różnych węzłów - wszystko odbywa się automatycznie, jak w SMP .

Historia

MOSIX był badany i rozwijany od 1977 roku na Uniwersytecie Hebrajskim w Jerozolimie przez zespół badawczy prof. Amnona Baraka. Do tej pory opracowano dziesięć głównych wersji. Pierwsza wersja, nazwana MOS, dla systemu operacyjnego Multicomputer (1981–83) była oparta na systemie Bell Lab Seventh Edition Unix i działała na klastrze komputerów PDP-11 . Późniejsze wersje były oparte na systemie Unix System V Release 2 (1987–89) i działały na klastrze komputerów opartych na VAX i NS32332 , a następnie wersja na bazie BSD / OS (1991–93) dla klastra komputerów 486 / Pentium . Od 1999 roku MOSIX jest dostosowany do Linuksa dla platform x86 .

MOSIX2

Druga wersja MOSIX, zwana MOSIX2, kompatybilna z jądrem Linux-2.6 i 3.0. MOSIX2 jest zaimplementowany jako warstwa wirtualizacji systemu operacyjnego , która zapewnia użytkownikom i aplikacjom pojedynczy obraz systemu ze środowiskiem wykonawczym Linux. Pozwala aplikacjom działać w zdalnych węzłach tak, jakby działały lokalnie. Użytkownicy uruchamiają swoje zwykłe (sekwencyjne i równoległe) aplikacje, podczas gdy MOSIX w przejrzysty i automatyczny sposób wyszukuje zasoby i migruje procesy między węzłami, aby poprawić ogólną wydajność.

MOSIX2 może zarządzać klastrem i wieloma klastrami ( siecią ), a także stacjami roboczymi i innymi współdzielonymi zasobami. Elastyczne zarządzanie siecią umożliwia właścicielom klastrów współdzielenie zasobów obliczeniowych, przy jednoczesnym zachowaniu ich autonomii w stosunku do własnych klastrów i możliwości odłączania ich węzłów od sieci w dowolnym momencie, bez zakłócania już działających programów.

Siatka MOSIX może rozciągać się na czas nieokreślony, o ile istnieje zaufanie między właścicielami klastrów. Musi to obejmować gwarancje, że aplikacje gościa nie zostaną zmodyfikowane podczas działania w klastrach zdalnych i że żadne wrogie komputery nie będą mogły być podłączone do sieci lokalnej. Obecnie wymagania te są standardem w klastrach i siatkach organizacyjnych.

MOSIX2 może działać w trybie natywnym lub na maszynie wirtualnej (VM). W trybie natywnym, wydajność jest lepsza, ale to wymaga modyfikacji do bazy jądra Linux , natomiast VM można uruchomić na górze każdej niezmodyfikowanej system operacyjny, który obsługuje wirtualizacji, w tym Microsoft Windows , Linux i Mac OS X .

MOSIX2 jest najbardziej odpowiedni do uruchamiania aplikacji wymagających dużej mocy obliczeniowej z niską lub umiarkowaną ilością danych wejściowych / wyjściowych (I / O). Testy MOSIX2 pokazują, że wydajność kilku takich aplikacji w sieci kampusowej 1 Gbit / s jest prawie identyczna jak w przypadku pojedynczego klastra.

Główne cechy

  • Zawiera aspekty obrazu pojedynczego systemu:
    • Użytkownicy mogą logować się w dowolnym węźle i nie muszą wiedzieć, gdzie działają ich programy.
    • Nie ma potrzeby modyfikowania ani łączenia aplikacji ze specjalnymi bibliotekami.
    • Nie ma potrzeby kopiowania plików do zdalnych węzłów.
  • Automatyczne wykrywanie zasobów i dystrybucja obciążenia poprzez migrację procesów:
  • Migracyjne gniazda do bezpośredniej komunikacji między migrowanymi procesami.
  • Bezpieczne środowisko wykonawcze (piaskownica) dla procesów gościa.
  • Kolejkowanie na żywo - zadania w kolejce zachowują swoje pełne, ogólne środowisko Linuksa.
  • Zadania wsadowe.
  • Punkt kontrolny i odzyskiwanie.
  • Narzędzia: automatyczna instalacja i skrypty konfiguracyjne, monitory on-line.

MOSIX dla HPC

MOSIX jest najbardziej odpowiedni do uruchamiania aplikacji HPC z niską lub umiarkowaną liczbą operacji we / wy. Testy MOSIX pokazują, że wydajność kilku takich aplikacji w sieci kampusowej 1 Gbit / s jest prawie identyczna jak w przypadku pojedynczego klastra. Szczególnie nadaje się do:

  • Efektywne wykorzystanie zasobów w całej sieci dzięki automatycznemu wykrywaniu zasobów i równoważeniu obciążenia.
  • Uruchamianie aplikacji z nieprzewidywalnymi wymaganiami dotyczącymi zasobów lub czasem działania.
  • Uruchamianie długich procesów, które są automatycznie wysyłane do węzłów siatki i migrowane z powrotem, gdy te węzły są odłączone od sieci.
  • Łączenie węzłów o różnych prędkościach poprzez migrację procesów między węzłami na podstawie ich odpowiednich prędkości, aktualnego obciążenia i dostępnej pamięci.

Kilka przykładów:

MOSIX4

MOSIX4 został wydany w lipcu 2014. Od wersji 4 MOSIX nie wymaga łatania jądra.

openMosix

Po tym, jak MOSIX stał się oprogramowaniem prawnie zastrzeżonym pod koniec 2001 roku, Moshe Bar rozwidlił ostatnią darmową wersję i 10 lutego 2002 roku rozpoczął projekt openMosix .

15 lipca 2007 r. Bar zdecydował się zakończyć projekt openMosix z dniem 1 marca 2008 r., Twierdząc, że „rosnąca moc i dostępność tanich procesorów wielordzeniowych szybko sprawia, że ​​klastrowanie obrazu pojedynczego systemu (SSI) staje się mniejszym czynnikiem wpływającym na przetwarzanie danych". Plany te zostały ponownie potwierdzone w marcu 2008 roku. Projekt LinuxPMI kontynuuje rozwój poprzedniego kodu openMosix.

Dalsza lektura

MOSIX4

MOSIX2 dla Linuksa 2.6

  • Meiri E. i Barak A., Parallel Compression of Correlated Files , Proc. IEEE Cluster 2007, Austin, wrzesień 2007.
  • Amar L., Stosser J., Barak A. and Neumann D., Economically Enhanced MOSIX for Market-based Scheduling in Grid OS , Workshop on Economic Models and Algorithms for Grid System (EAMGS 2007), VIII IEEE / ACM Int. Conf. on Grid Computing (Grid 2007), Austin, wrzesień 2007.
  • Amar L., Barak A., Levy E. i Okun M., An On-line Algorithm for Fair-Share Node Allocations in a Cluster . Proc. 7-ty IEEE Int. Symposium on Cluster Computing and the Grid (CCGrid '07), s. 83–91, Rio de Janeiro, maj 2007.
  • Amar L., Barak A., Drezner Z. and Peer I., Gossip Algorithms for Maintaining a Distributed Bulletin Board with Guaranteed Age Properties. TR, 2006.
  • Barak A., Shiloh A. i Amar L., Siatka organizacyjna federacyjnych klastrów MOSIX . Proc. Piąte Międzynarodowe Sympozjum IEEE nt. Cluster Computing and Grid (CCGrid '05), Cardiff, maj 2005.
  • Barak A. i Drezner Z., Gossip-Based Distributed Algorithms for Estimating the Average Load of Scalable Computing Clusters and Grids. Proc. 2004 Int. Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'04), Las Vegas, NV, czerwiec 2004.

MOSIX dla Linuksa 2.2 i 2.4

Książka MOSIX wersja 1

  • Barak A., Guday S. i Wheeler R., The MOSIX Distributed Operating System, Load Balancing for UNIX. Notatki z wykładów z informatyki, tom. 672, Springer-Verlag, maj 1993.

Inny

  • Barak A. i La'adan O., Wielokomputerowy system operacyjny MOSIX do wysokowydajnych obliczeń klastrowych . Journal of Future Generation Computer Systems, tom. 13, nr 4-5, str. 361–372, marzec 1998.
  • Barak A., Laden O. and Yarom Y., NOW MOSIX and its Preemptive Process Migration Scheme. IEEE TCOS, tom. 7, nr 2, str. 5–11, lato 1995.
  • Haban D., Wybranietz D. and Barak A., Monitoring and Management-Support of Distributed Systems, Proc. European Workshop on Progress in Distributed Operating Systems and Distributed System management, s. 110–137, Berlin, kwiecień 1989.
  • Barak A. i Wheeler R., MOSIX: An Integrated Multiprocessor UNIX. Proc. Zima 1989 USENIX Conf., Str. 101–112, San Diego, CA, luty 1989.
  • Barak A., Shiloh A. i Wheeler R., Flood Prevention in the MOSIX Load-Balancing Scheme, IEEE-TCOS Newsletter, Vol. 3, nr 1, str. 24–27, zima 1989.
  • Barak A. and Kornatzky Y., Design Principles of Operating Systems for Large Scale Multicomputers, Proc. Int. Workshop on Experience with Distributed Systems, s. 104–123, Kaiserslautern, wrzesień 1987. Również raport RC 13220, IBM TJ Watson Research Center, Yorktown Heights, NY, październik 1987.
  • Alon N., Barak A. i Manber U., w sprawie rzetelnego rozpowszechniania informacji bez transmisji, Proc. Natl. 7-ty Int. Conf. on Distributed Computing Systems (ICDCS-7), str. 74–81 (najlepsza publikacja konferencyjna), Berlin, wrzesień 1987.
  • Barel A., NSMOS - Port MOS do architektury rodzinnej 32000 National. Proc. 2. Izrael Konf. Systemy komputerowe i oprogramowanie. Eng., Tel-Aviv, maj 1987.
  • Barak A., Drezner Z. and Gurevich Y., On the Number of Active Nodes in a Multicomputer System, Networks, An Int. Journal, Vol. 16, nr 3, str. 275–282, jesień 1986.
  • Barak A. i Paradise GO, MOS - Scaling Up UNIX. Proc. Lato 1986 USENIX Conf., Str. 414–418, Atlanta, GA, czerwiec 1986.
  • Barak A. i Paradise GO, MOS - a Load Balancing UNIX. Proc. Autumn 86 EUUG Conf., S. 273–280, Manchester, wrzesień 1986.
  • Drezner Z. i Barak A., Asynchronous Algorithm for Scattering Information Between the Active Nodes of a Multicomputer System, Journal of Parallel and Distributed Computing, Vol. 3, nr 3, str. 344–351, wrzesień 1986.
  • Barak A. i Shiloh A., Distributed Load-balancing Policy for a Multicomputer. Oprogramowanie - praktyka i doświadczenie, Vol. 15, nr 9, str. 901–913, wrzesień 1985 r.
  • Barak A. i Litman A., MOS - rozproszony system operacyjny z wieloma komputerami. Oprogramowanie - praktyka i doświadczenie, Vol. 15, nr 8, str. 725–737, sierpień 1985.
  • Drezner Z. and Barak A., Efficient Algorithms for Routing Information in a Multicomputer System, Distributed Algorithms on Graphs, Carleton Univ. Press, str. 41–48, Ottawa, sierpień 1985.
  • Barak A., Dynamic Process Control for Distributed Computing, Proc. Natl. 3-rd Int. Conf. on Distributed Computing Systems (ICDCS-3), s. 36–40, Ft. Lauderdale, FL, październik 1982.
  • Barak A., Shapir A., ​​Steinberg G. i Karshmer AI, A Modular, Distributed UNIX. Proc. 14-ty Hawaii Int. Conf. on System Science, str. 740–747, styczeń 1981.
  • Barak A. i Shapir A., ​​UNIX z procesorami satelitarnymi. Oprogramowanie - praktyka i doświadczenie, Vol. 10, nr 5, str. 383–392, maj 1980.

Zobacz też

Uwagi

Linki zewnętrzne