Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
witam
co byście polecili, jaki zestaw, do stworzenia niezawodnego systemu.
mam dwa fizycznie identyczne serwery. te dwa serwery mają serwować widziany jako jeden system/host.
system ten ma być furtką na świat, do którego wpięte są 2 łącza ze światem i 3 łącza do wewnątrz. chce uniknąć sytuacji, że jeśli jeden system padnie z rożnych powodów to nie będzie to nawet zauważone.
rozważałem użycie heartbeat, ale w tym rozwiązaniu jeden serwer "leży odłogiem". wiem, że można podzielić usługi ale, w tym systemie będzie tylko jedna usługa - routing, no i jakiś traffic control dla priorytetu ruchu. mi zależy, żeby system traktował fizyczne maszyny jak jedną.
rozważałem również LVS ale, mam tylko dwie maszyny i więcej nie będzie.
Jak z dwóch fizycznych maszyn mogę zrobić jedną logiczną?
Będę wdzięczny za sugestie i jakieś materiały.
Pozdrawiam
Offline
Albo nie umiesz pisać po polsku albo ja nie rozumiem :) Na taki cytat:
chce uniknąć sytuacji, że jeśli jeden system padnie z rożnych powodów to nie będzie to nawet zauważone.
Mogę odpowiedzieć: postaw jeden serwer, drugi wyłącz, jak padnie będzie to zauważone tak jak chcesz. Jeśli o to chodzi to żaden heartbeat czy LVS nie są potrzebne.
Offline
no może trochę zakręciłem :)
chcę uniknąć sytuacji, że jeśli jeden z serwerów padnie np. z powodu awarii zasilania to klient nie może zauważyć że coś nie działa. system ma pracować ciągle.
czyli 2 fizyczne "komputery" "spięte" w jeden logiczny system.
Offline
Chyba chodzi ci o klaster niezawodnościowy: http://pl.wikipedia.org/wiki/Klaster_komputerowy#Typy_klastr.C3.B3w?
Offline
Tracerneo napisał(-a):
Chyba chodzi ci o klaster niezawodnościowy
no tak, można powiedzieć że klaster niezawodnościowy. Tylko nie chce aby któraś z fizycznych maszyn "leżała odłogiem" i czekała na awarię drugiego. Można powiedzieć, że chciałbym podwoić wydajność fizycznej maszyny (sieciówek również) i jednocześnie zabezpieczyć się przed fizycznym/systemowym padem którejś z maszyn.
Offline
Ale co właściwie te maszyny mają robić? Tylko kierować ruchem? Masz "niezawodnościowe" protokoły routingu. O to chodzi? Czy chcesz klaster do wszystkiego, co nie wiem czy jest osiągalne, na tyle się nie znam, zwykle każdą usługę raczej trzeba oddzielnie pod tym kątem konfigurować. Czyli klastrujemy bazę danych, serwer www, itd.
Offline
OT: pytanie: czy da się mając różne maszyny, spiąć je tak, by na jednej z nich mieć w przybliżeniu sumaryczną moc wszystkich pospinanych. Tzn. żeby tak jak się ma procek dwurdzeniowy, to widzi się dwa procki (niby) to tak samo z dodatkowymi komputerami (prockami/ramem)? I nie chodzi mi o przekazywanie zadań na inne maszyny.
Offline
kamikaze napisał(-a):
Ale co właściwie te maszyny mają robić? Tylko kierować ruchem? Masz "niezawodnościowe" protokoły routingu. O to chodzi? Czy chcesz klaster do wszystkiego, co nie wiem czy jest osiągalne, na tyle się nie znam, zwykle każdą usługę raczej trzeba oddzielnie pod tym kątem konfigurować. Czyli klastrujemy bazę danych, serwer www, itd.
dokładnie te dwie maszyny mają pracować jako brama, system do routingu. na nim ma pracować quagga (bgpd i ospfd). na interfejsach wychodzących do lan maja być odpalony traffic control. To wszystkie usługi jakie mają pracować na tym systemie.
w drugiej konfiguracji chciałbym zrobić "niezawodny" koncentrator PPPoE, również z dwóch maszyn.
Offline
Zakładam, że chodzi o to, że jak jeden serwer padnie, to drugi przejmie jego robotę, po cichutku, bez sensacji, żeby administrator nie dostał po uszach (albo premii).
Jeżeli serwer ma parzyć kawę i robić kanapki, to będzie problem, nie znam żadnego programu do zaimplementowania takich funkcji w samym serwerze, bez dodatkowego robota.
Jeśli natomiast ma robić to, co zazwyczaj robią routery i serwery, to w najprostszym wariancie zainteresuj się tym: http://packages.debian.org/search?suite=squ … carp
Sznurek:
http://xn.pinkhamster.net/blog/tech/mail/hi … html
To by było na tyle
;-)
Ostatnio edytowany przez Jacekalex (2011-02-21 20:20:23)
Offline
paoolo napisał(-a):
OT: pytanie: czy da się mając różne maszyny, spiąć je tak, by na jednej z nich mieć w przybliżeniu sumaryczną moc wszystkich pospinanych. Tzn. żeby tak jak się ma procek dwurdzeniowy, to widzi się dwa procki (niby) to tak samo z dodatkowymi komputerami (prockami/ramem)? I nie chodzi mi o przekazywanie zadań na inne maszyny.
o to właśnie chodzi.
Offline
@Nicram: to może być z tym problem :)
Ale można to nazwać w przybliżeniu grid'em. Chyba.
coś, tylko jakby to było znacznie mniejsze to bym sprawdził, a maszyny nie są ultra szybkie.
Ostatnio edytowany przez paoolo (2011-02-21 21:16:16)
Offline
paoolo napisał(-a):
@Nicram: to może być z tym problem :)
Ale można to nazwać w przybliżeniu grid'em. Chyba.
coś, tylko jakby to było znacznie mniejsze to bym sprawdził, a maszyny nie są ultra szybkie.
hmm, ten pelikan brzmi ciekawie.
Offline
Nicram napisał(-a):
paoolo napisał(-a):
OT: pytanie: czy da się mając różne maszyny, spiąć je tak, by na jednej z nich mieć w przybliżeniu sumaryczną moc wszystkich pospinanych. Tzn. żeby tak jak się ma procek dwurdzeniowy, to widzi się dwa procki (niby) to tak samo z dodatkowymi komputerami (prockami/ramem)? I nie chodzi mi o przekazywanie zadań na inne maszyny.
o to właśnie chodzi.
No ja nie wiem czy o to chodzi. Chcesz robić tylko routing i niby sumaryczna moc obu maszyn ma ci przepychać dane na interfejsie sieciowym jednej z nich? W przypadku softu do jakichś obliczeń lub wystawiającego jakąś aplikację klastrowaną to ma jeszcze sens, ale do routingu ruchu sieciowego? Jakoś nie widzę tego, że dwie sieciówki na różnych kompach działają jako jedna ;] Możesz co najwyżej załatwić nieprzerwane działanie twoim 3 sieciom zmyślnym routingiem, mając swoje 2 połączenia do internetu. W razie działania obu linków ruch by się rozchodził zależnie od ustawienia korzystnej trasy, w razie działania jednego wszystkie sieci się na niego przepinają. Z tym, że jedna maszyna wystarczy. Nie wiem jakby komputery klienckie miały sobie przełączać same bramę gdybyś to miał na dwóch, w końcu nie są routerami. To tyle co mi się wydaje, może ktoś ma więcej doświadczenia i może zna jednak jakieś lepsze rozwiązanie.
Offline
Jeszcze trafiłem na LinuxPMI (kontynuacja openMosix), ale ja to myślę w kontekście wykorzystania maszyn, które same nie uciągną, ale w kupie już tak :)
Offline
Co tu kombinować, w Lennym Vrrrd, w Squeeze Ucarp, rozwiązanie dokładnie do tego, żeby klient nie zauważył padu serwera, a druga maszyna przejęła obsługę żądania.
Offline
kamikaze napisał(-a):
Z tym, że jedna maszyna wystarczy.
a jak ta maszyna padnie ?
bo, zbiegiem okoliczności, padły oba zasilacze lub niespodziewanie pojawi się kernel panic. Właśnie przed taką sytuacją chcę się zabezpieczyć.
Offline
Jeżeli te serwery mają być poprostu bramkami na świat dla jakiś sieci to najlepiej będzie skorzystać z heartbeata lub keepalived + conntrackd. Część sieci wewnętrzych zakończyć na jednym, część na drugim, analogicznie z połączeniami ze światem. Adresy będące "bramkami" dla lanów zrobić wirtualne, podobnie z adresami do świata. W wyniku tego mamy tak, że pół sieci chodzi przez jeden, połowa przez drugi, a jak coś się wysypie to wszystko będzie chodzić przez jeden. Osobiście uważam jednak, że lepiej mieć prostszą konfigurację i serwer leżący odłogiem, niż bardziej zbalansowaną i jednocześnie bardziej skomplikowaną = bardziej podatną na awarię i trudniejszą do debugowania.
Offline
Nicram napisał(-a):
kamikaze napisał(-a):
Z tym, że jedna maszyna wystarczy.
a jak ta maszyna padnie ?
bo, zbiegiem okoliczności, padły oba zasilacze lub niespodziewanie pojawi się kernel panic. Właśnie przed taką sytuacją chcę się zabezpieczyć.
To możesz ewentualnie odpalić ten drugi który ma zdublowaną konfigurację. Jednakowe konfiguracje nie będą działać w jednej sieci, choćby konflikt adresów IP. Chyba, że postawisz przed tym jakiś balancer (router) sprzętowy, którego prawdopodobieństwo padnięcia jest niskie. Wydaje mi się, że więcej nie zdziałasz, to router brzegowy. Więc albo balancer, albo dwie takie same maszyny, jedna czeka nic nie robiąc. Wchodzi do działania jak pada druga, chyba niezłe wyjście. Jak chcesz obie naraz to albo balancer (router) albo jak napisał kuchar cześć sieci do jednej maszyny część do drugiej. Bo tu widzę rozglądasz się też za klastrami, ale to raczej nie do routingu.
Offline
DRBD + Heartbeat w trybie Active-Active
Offline
kamikaze napisał(-a):
Więc albo balancer, albo dwie takie same maszyny, jedna czeka nic nie robiąc. Wchodzi do działania jak pada druga, chyba niezłe wyjście. Jak chcesz obie naraz to albo balancer (router) albo jak napisał kuchar cześć sieci do jednej maszyny część do drugiej. Bo tu widzę rozglądasz się też za klastrami, ale to raczej nie do routingu.
Też tak sobie czytam różne arty i dochodzę do wniosku, że nie osiągnę tego co chcę.
Dzięki waszym sugestią zrobię dwie bliźniacze maszyny z rozdzielonymi bramami. Do tego dorzucę CARP i powinno działać.
Wielkie dzięki za zainteresowanie.
Pozdrawiam wszystkich.
Nicram
Offline
<OFTOP>
Na przyszłość zapamiętaj starą prawdę: krótkie zwięzłe i precyzyjne pytanie = krótka zwięzła i precyzyjna odpowiedź.
W ogóle jakie pytanie, taka odpowiedź.
Tu masz wyjaśnienie.
Bo zapętlajac pytanie, zapętliłeś też odpowiedzi, i z tego masz cały stos propozycji w stylu DRBD, Heartbeat, LVS, podczas, gdy do routera i dhcp wystarczy ucarp, do serwerów poczty częściowo też (tam trzeba zrobić synchronizację skrzynek pocztowych na obu serwerach ), przy http sposób konfiguracji zależy - jaka usługa http tam działa, mam na myśli typ strony/cmsa + kwestia, czy są dodawane pliki, co z plikami sesji, itp.
Ale to są przypadki, które trzeba traktować indywidualnie i myśleć przy tym.
</OFTOP>
To by było na tyle
;-)
Ostatnio edytowany przez Jacekalex (2011-02-22 09:29:31)
Offline
Jacekalex: dzięki za sugestie.
Wiem, zakręciłem nieco :/
Offline