Budowa klastra domowego - analiza sprzętu i kosztów [zamknięte]


14

Czy ktoś zna jakieś linki / książki / cokolwiek, co możesz wymyślić, które opisują proces budowy małego klastra domowego (kiedy mówię, że dom , niekoniecznie oznacza utrzymanie w domu - po prostu oznacza, że ​​jest stosunkowo tani i mały) dla cele eksperymentalne, ze szczególnym naciskiem na to, jaki sprzęt byłby dzisiaj odpowiedni, i jakąś analizę kosztów?

Chociaż, jeśli ktoś to zrobił, byłbym wdzięczny za wszystkie doświadczenia, którymi możesz się podzielić.


2
Jakiego rodzaju klaster? Klaster SQL? Farma internetowa? Czy renderujesz farmę? Są to ważne szczegóły przy określaniu sprzętu.
tsilb

1
Obliczenia numeryczne; CFD (nie wchodząc w szczegóły) - równoległy kod fortran.
Rook

Odpowiedzi:


8

Przychodzi mi na myśl Helmer . :)


1
OK, to naprawdę fajna strona i sprawia, że ​​mój biedny, odszedł, klaster DeCeleron 4node wydaje się nieistotny.
Bill B,

Świetna strona! Uwielbiam szafkę IKEA :) (może nie najlepsze rozwiązanie, ale mimo to urocze)
Rook

Aby to wyjaśnić, jest to farma renderująca oparta na procesorze. Jest to 6 czterordzeniowych maszyn Intel umieszczonych w szafce na dokumenty z IKEA (nazwa produktu to Helmer). Najwyraźniej szafka ma z tyłu wykonane otwory (nie przez IKEA), które pozwalają na montaż zasilacza i wentylatora w 6 miejscach.
dlamblin,


3

Sprawdź książki Beowulf Cluster Computing Thomasa Sterlinga (jeden dla systemu Linux i jeden dla systemu Windows). Mówią ci wszystko, co musisz wiedzieć o używaniu MPI, aby twoje węzły mogły ze sobą rozmawiać.

Wspólnie z przyjacielem zbudowaliśmy klaster 8 urządzeń przy użyciu naprawdę kiepskiego sprzętu i uruchomiłem na nich system Windows XP. Były jak skrzynki Pentium I - 90 MHz. Znacznie poniżej specyfikacji wymaganych dla systemu Windows, ale działało dobrze. Uruchomiliśmy na nich również SQL Server 2000 (również znacznie poniżej zalecanych specyfikacji) i przeprowadziliśmy na nich modelowanie wyceny opcji na akcje według Schwarzesa.

Trudno jest zalecić, jaki sprzęt byłby odpowiedni, nie wiedząc, co chcesz zrobić z klastrem. Ale najważniejsze jest to, że możesz zbudować klaster większości czegokolwiek.


Nie uwierzysz, wczoraj zamówiłem dokładnie ten tytuł! Teraz czekam na jego przybycie :) Pentium 90 - wow, to jest stare. Jak to działa, gładkie lub z usterkami? Czy możesz podać porównanie z jakimś nowoczesnym odpowiednikiem? To btw jest właściwie całkiem dobrym pomysłem na to, co próbuję zrobić, ponieważ tego rodzaju sprzęt można obecnie uzyskać praktycznie za darmo (i tak naprawdę martwy). Próbuję go zbudować w celu zrównoleglenia jakiegoś kodu, więc eksperymentuję w tym samym czasie z kodem i częścią sprzętową. To eksperyment uczenia się, aby zobaczyć, jak pójdzie.
Rook

1
Koszt uruchomienia takiego starego sprzętu jest wysoki, jeśli chodzi o moc / pracę; wiele maszyn 90 MHz zużyje dużo prądu elektrycznego do wytworzenia ekwiwalentu pracy bardziej wydajnego pojedynczego urządzenia. Jestem zainteresowany twoim projektem, ale ... pamiętaj, że może być kosztowny w interesujący sposób ... =]
David mówi, że przywróć Monikę

wydajność była w porządku. był to projekt dla szkoły, a nasz sprzęt był tym, czym zajmowała się szkoła. nie przejmowaliśmy się również problemami z zasilaniem, ale miska ryżu ma absolutną rację. były głośnymi potworami.
Nathan DeWitt

@ ricebowl - W tym momencie to nie jest problem. 90 MHz to dobry pomysł, ponieważ mamy je wokół, więc nie ma tam żadnych kosztów. Elec. nie stanowi też problemu, ponieważ firma płaci, energia zużywana przez komputery jest tam nieistotna. W tym momencie uczę się podstaw, w razie potrzeby zawsze można zdobyć nowy sprzęt.
Rook

@Nathan DeWitt - głośność również nie stanowi problemu. Nie mam nic przeciwko temu dźwiękowi (zawsze wydawało mi się to kojące) i nikogo wokół nie ma.
Rook

2

Alternatywą dla posiadania wielu fizycznych węzłów klastra jest tworzenie maszyn wirtualnych. Miałbyś tylko jedną lub dwie rzeczywiste maszyny fizyczne, ale możesz symulować posiadanie o wiele więcej węzłów. To działałoby dobrze do tworzenia, uczenia się i zużywania mniej zasobów (przestrzeń, moc, $$$).

Nie dałoby to wiele z analizy kosztów, ale pozwoliłoby ci zacząć. Typ konfiguracji klastra zależy od rodzaju pracy, którą chcesz dla niego utworzyć. Możesz mieć wiele małych węzłów lub mieć tylko kilka potężnych węzłów. Istnieją także środowiska pamięci współdzielonej i nieudostępnionej, które należy wziąć pod uwagę. Jakiego rodzaju programy równoległe chcesz utworzyć? Im więcej masz fizycznych węzłów, tym więcej miejsca, energii, chłodzenia i wzajemnych połączeń sieciowych musisz wziąć pod uwagę. Czasami wystarczy jeden wielki komputer (a środowiska pamięci wspólnej są łatwiejsze do zaprogramowania dla IMHO).

Niedawno zacząłem grać z budowaniem klastra kilku losowych P4, ubuntu i LAM-MPI. To zdecydowanie było doświadczenie edukacyjne.

W rzeczywistości było to kilka laptopów i wież typu p4, ułożonych w garażu. To było getto, ale chciałem się tylko nauczyć. Właśnie użyłem sieci Ethernet 100 Mbps. Wybrałem ubuntu, ponieważ nie chciałem zajmować się dużą konfiguracją sprzętową pudeł. Ubuntu miało wiele sterowników, których potrzebowałem. Potrzebowałem środowiska linux, ponieważ aplikacje, które dla niego napisałem, były aplikacjami opartymi na języku C z interfejsami MPI. Próbowałem powtórzyć to, czego użyłem wcześniej. To wszystko było inne. sprzęt, nic standardowego. Większość klastrów ma dokładny sprzęt, dzięki czemu można szybko dodawać i usuwać węzły.


Mam do dyspozycji dużą liczbę starych stacji roboczych. Od wczesnych pentium po te do 266 MHz. Pokój i moc Mam mnóstwo. Hałas też nie jest problemem, nie jest blisko ludzi (tak, na wypadek, gdybyś się zastanawiał, nie uważam się za członka rasy ludzkiej :) Nowy sprzęt można zawsze zdobyć później, jeśli zajdzie taka potrzeba, ale na razie staram się unikać niepotrzebnych kosztów, jeśli mogę, grając z nimi. Próbuję zrównoleglić niektóre (nie stare) kody fortranowe (CFD, FVM). W tym momencie najbardziej interesuje mnie montaż sprzętu, zasady działania systemu operacyjnego i ogólne opanowanie rzeczy
Rook

Wirtualizacja jest mało przydatna, jeśli chodzi o obliczenia numeryczne związane z procesorem.
Tadeusz A. Kadłubowski

Jeśli nie pytam za dużo, jak je połączyłeś (nie tylko elementy wewnętrzne, ale gdzie je umieściłeś (duża wieża? Problemy z chłodzeniem?))? Dlaczego ubuntu?
Rook

@Idigas Dodano akapit do mojej odpowiedzi.
Troggy

1

W zależności od tego, co próbujesz zrobić, rozważ stworzenie systemu na klastrze maszyn wirtualnych. Korzystanie z rozwiązania do wirtualizacji systemu operacyjnego, takiego jak OpenVZ lub Virtuozzo lub Parallel Containers firmy Parallel, pozwoli skalować się do ogromnej gęstości w porównaniu z pełną wirtualizacją systemu (np. VirtualBox / VirtualPC / Xen / VMWare). Następnie, gdy trzeba wdrożyć system, aby uzyskać pewną wydajność, uruchom go „w chmurze” na EC2 Amazon lub podobnym.


Miałem nadzieję, że użyję trochę starszego sprzętu, który w tym momencie leżałem, więc wirtualizacja nie jest dla mnie tak atrakcyjna.
Rook


0

Spójrz na skały, które są dystrybucją klastrów, dzięki czemu budowanie klastrów jest naprawdę łatwe. Skaluje także do co najmniej kilku strzeżonych węzłów.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.