Skocz do zawartości
jasne

jak wykorzystac dwa dedyki ?

Polecane posty

Witam.

Szukam rozwiazania ktore pomoze mi utrzymac dostep do uslug i danych w przypadku awarii serwera.

Fajnie by bylo tez abym mogl wykorzystywac moc drugiego serwera ktory stoi bezczynnie teraz...

Obecnie posiadam dwa dedyki. Pierwszy to serwer glowny a drugi to serwer awaryjny. Z pierwszego robi sie codziennie automatycznie kopia zapasowa

i wysyla przez ftp na drugi. W razie awarii pierwszego serwera , Odwarzam backup

Na drugim. Nastepnie zmieniam routig ip failover z serwera pierwszego na drugi...

takie rozwiazanie przestaje byc efektywne, poniewaz ilosc danych na serwerze pierwszym znacznie wzrasta i robienie wraz z przesylaniem duzych backupow czasami po prostu nawala.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tylko koledze chodzi bardziej o to by nie musiał kopiować danych pomiędzy 2 dedyki.

Teoretyzować można tak (zakładając, że masz 2 dedyki u jednego providera)

- zakupujesz jakiegoś SANa i podpinasz pod 2 dedyki

- robisz cluster (ha proxy, albo Redhatowy )

 

Zabezpiecza Cię to na:

- awarię sprzętową jednego dedyka

- awarię segmentu sieci u providera(pod warunkiem, że każdy dedyk jest na innym switchu... itd.)

 

Niestety jeśli będzie awaria łącza do providera, problem z zasilaniem i inne tego typu pierdoły to jest lipa.... :)

Edytowano przez Syndrom (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@Syndrom a jak padnie pojedyńczy SAN to wszystko leży ;).

 

Zakładam, że provider nie bawi się w piaskownicy i wie coś o redundancji :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

A jakaś synchronizacja "live"? W sensie na bieżąco?

 

MySQL ma opcję replikacji, do plików można użyć jakiegoś rsync. Będą aktualizowane nowe pliki/zmienione i po problemie :)

 

Edit:

Przy takim rozwiązaniu łącze będzie mocno użyte raz na początku a później tylko "lekko" podczas synchronizacji.

Edytowano przez Kamikadze (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

2 nodowy cluster na linuxie z wykorzystaniem KVM, DRBD, itp. Jeśli to jakiś serwis www, który używa db, to robisz 2 wirtualki jedna trzyma serwer www druga db i każdy nod ma 1 wirtualkę. Dzięki temu wykorzystujesz zasoby obu serwerów. W razie padu automat stawia virtualki na 1 nodzie.

 

Do tego DRBD i nie musisz nic odtwarzać z backupu. Setup 2 nodowego clustra jest dość prosty, ale zwykłe dedytki z 1 kartą sieciową to za mało.

 

Dokładny opis np. tu: https://alteeve.ca/w/AN!Cluster_Tutorial_2

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ew. tak jak Kamikadze napisał wyżej, do plików rsynca, do mysql replikacje. Postawić można dwie niezależne strony spięte w taki sposób, w DNSach zrobić chociażby RR i wysyłać userów po połowie tu i tu. Jak coś padnie to user najwyżej odczeka kilka sekund dłużej aż DNS go przepnie.

 

Imho to najprostsze rozwiązanie, stosowałem swojego czasu i bardzo sprawnie działało jak na szybki sposób.

Edytowano przez Archi (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dzieki za powyższe rady. Zastanawiam sie tylko czy owe rozwiazania sprostaja przy moim wykorzystaniu serwera. T.j. ponad 150 skrzynek email gdzie ponad polowa userow korzysta z nich przez imap, oklo 50 serwisow www i ok 10 sklepow. W tym okolo 10 serwisow ktore generuja ruch dosc wysoko ok 1000 uu dziennie pobierajac dane z baz mysql o wielkości ok. 500mb-1gb

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

Dzieki za powyższe rady. Zastanawiam sie tylko czy owe rozwiazania sprostaja przy moim wykorzystaniu serwera. T.j. ponad 150 skrzynek email gdzie ponad polowa userow korzysta z nich przez imap, oklo 50 serwisow www i ok 10 sklepow. W tym okolo 10 serwisow ktore generuja ruch dosc wysoko ok 1000 uu dziennie pobierajac dane z baz mysql o wielkości ok. 500mb-1gb

 

Jeżeli wszystko działa na jednym serwerze a drugi jest o zbliżonych parametrach to dlaczego nie? Nie wiem tylko jak z pocztą bo tutaj jakichś replikacji nigdy nie robiłem, ale jeżeli leci po rsync wszystko to powinno hulać :)

 

Pamiętaj że wszystko będzie po staremu tylko w przypadku awarii przejdzie na drugą maszynkę lub tak jak Archi mówi userów rozrzucać po serwerach i w tedy odciążysz sobie jeden serwer kosztem drugiego a co za tym idzie mniej zasobów będą używać użytkownicy jednego serwera.

 

To tak jak np. z basenem. Wpuścić 10 osób do dwóch basenów po połowie zapewni lepszy komfort niż do jednego :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Poczta to nic innego niż pojedyncze pliki maile w katalogach userów czy tam /var/spool, rsync właśnie bardzo dobrze zadziała bo 1 mail to koszt kilku kilobajtów.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys

Jakie to wszystko proste patrząc po powyższych wpisach ;)

Haproxy to przecież tylko loadbalancer TCP, a DRBD obsłuży jedynie "raid po sieci" i co dalej ?

 

Nie da się optymalnie rozłożyć ruchu na dwa hosty z HA, a zostaje praca w trybie master - > slave.

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Można pomyśleć o jakiejś maszynie wcześniej lub nawet "mocnym vpsie" który tylko by rozkładał ruch na te 2 maszyny. Oczywiście musiałby być najlepiej po "lanie" wpięty bezpośrednio w tym samym segmencie sieciowym.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Szkoda ze nie napisałeś co tam siedzi od razu. Musiałbyś zobaczyć co powoduje jakie obciążenie i równomiernie rozłożyć to na dwa hosty. Ale nie wiem czy to nie będzie przerost formy nad treścią. Narobisz się jak szalony, będzie potrzebna dodatkowa inwestycja a efekt wcale nie musi być wspaniały.

 

Poczta przez rsync może się słabo replikować, bo w dzisiejszych czasach niektórzy lubią wysylać sobie pocztą filmy HD :). Ale jak jest jakieś ograniczenie na wielkość maila, to czemu nie.

 

Jeśli masz tam tyle usług, to żeby to dobrze zrobić musiałbyś najpierw to przemyśleć, potem dobrze zaprojektować a potem tak samo dobrze wdrożyć.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys

Ok, dokładasz kolejne dwa hosty ładujesz tam jakiegoś pacemarker'a i masz super LB HA.

Tylko po co i za co ? ;)

 

User chciał użyć drugiego hosta by nie stał bezczynnie ( slave ), a pracował i brał na siebie obciążenie.

Olewając już tą pocztę, to teraz co będzie wydajniejsze jakieś DRBD w trybie master - master czy DRBD master - slave do przechowywania plików i replikacją w oparciu np. o Percone ?

Oczywiście znamy działanie DRBD oraz ograniczenia systemów plików dla tego master - master...

 

Dla dwóch hostów najlepszą konfiguracją jest maszyna aktywna - maszyna pasywna.

Polecał bym zostawić obecną architekturę, jednak poprawiając ją choć o zarysy HA, bo opieranie się na backupie nie jest dobrym pomysłem.

 

 

Choć EDIT

 

Wersja hardcore użycie tego DRBD w trybie master - master, bazy danych w trybie master - master i np. Cloudflare po API do RR ;)

 

Jednak master - slave jest bezpieczniejsze, szybsze przy operacjach plikowych i polecane dla dwóch serwerów ;)

Edytowano przez patrys (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

 

Polecał bym zostawić obecną architekturę, jednak poprawiając ją choć o zarysy HA, bo opieranie się na backupie nie jest dobrym pomysłem.

 

 

Czy dobrze rozumiem ? Mam zostawic tak jak teraz jest czyli przerzucanie backupu z master na slave, do tego dorzucic HAPROXY w celu rozladowania ruchu... ? dodam że backup jest przerzucany raz dziennie a jego odtworzenie na slave trwa okolo 8h... co jest zbyt dlugim czasem w przypadku gdy pada master i musze czekac 8h aby przelaczyc go na slave.... baaa czasami backup wykona sie z bledem bo ilosc danych jest spora i wtedy zostaje bez aktualnego backup.

 

 

Moje cele to:

1. Szybkie przepiecie sie na slave w razie awarii master

2. jak najbardziej aktualny backup

3. opcjonalnie... wykorzystanie zasobow slave aby nie stal bezczynnie...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ten czas to przez wielkość czy przez rodzaj połączenia między serwerami?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

ten czas to przez wielkosc archwiwa backup tar.gz . przelaczenie miedzy serwerem trwa kilka minut przelaczam routowanie IP fail over na serwer slave.

 

Korzystam z panelu directadmin i to wlasnie z wbudowanej obslugi do backupu korzystam. teraz wpadlem na pomysl aby wykulczyc

z backupu dane domen oraz email. do backupu beda wrzucane mysql, ustawienia da i konfiguracje kont. Natomiast

dane domen i email bedę wykonwał przyrostowo za pomocą rsync (kazdy dzien do osbnego folderu na slave serwerze 0,1,2 itd).

 

tym systemem pozbywam sie jednego problemu , mianowicie bledow powstalych przy backupie i wysylaniu na slave duzych plikow tar.gz.

 

dalej niestety mam malo aktualny backup ... Czy mozna jakos rsync ustawic aby pracowal non stop i czy to ma sens ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Robisz pełne czy różnicowe backupy?

 

Baza to lepiej żeby swoimi mechanizmami robiła kopie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
dalej niestety mam malo aktualny backup ... Czy mozna jakos rsync ustawic aby pracowal non stop i czy to ma sens ?

 

Co rozumiesz przez non stop? co 5 min czy co 1 min czy co...?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys

Napisane masz wyżej przecież co możesz zrobić ;)

 

Jest wiele rozwiązań, trzeba dopasować konkretne pod Twój przypadek.

Na pewno są lepsze sposoby na backup niż ten w DirectAdmin jak i na zachowanie na slave aktualnych danych.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Mój backup po komresji wynosi ok 60 GB. rsync zbyt częsty raczej nie jest dobrym pomysłem.... zastanawiam się nad DRBD master master ale nie moge znalezc odpowiedzi na pytanie czy wtedy serwer A będzie posiadał ip 1.2.3.4 a drugi serwer B będzie posiadał np. inne ip 5.6.7.8

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Znaczy chcesz robić drbd przez internet? To się nie uda ...

 

DRBD to tylko po dedykowanym linku najlepiej LACP (bonding). Jeśli te serwery są w różnych DC, to zapomnij o DRBD, bo wersja obsługująca replikację zdalną (nie po LAN) jest płatna.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A dlaczego uważasz, że rsync nie jest dobrym pomysłem? W Twojej sytuacji to najlepsze rozwiązanie bo nie tracisz czasu na pakowanie backupu a następnie jego rozpakowywanie w przypadku przełączania na serwer slave. Rsync będzie trwał znacznie krócej pobierając jedynie te pliki które uległy zmianie od czasu ostatniej synchronizacji. No i też przełączenie na slave nie będzie kwestią 8 godzin a paru minut.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×