Badałem rozwiązania wysokiej dostępności (HA) dla MySQL między centrami danych.
W przypadku serwerów znajdujących się w tym samym środowisku fizycznym wolałem dual master z pulsem (pływający VIP), stosując aktywne pasywne podejście. Bicie serca dotyczy zarówno połączenia szeregowego, jak i połączenia Ethernet.
Ostatecznie moim celem jest utrzymanie tego samego poziomu dostępności, ale między centrami danych. Chcę dynamicznie przełączać awaryjnie między dwoma centrami danych bez ręcznej interwencji i nadal zachować integralność danych.
Na górze będzie BGP. Klastry internetowe w obu lokalizacjach, które mogłyby potencjalnie prowadzić do baz danych między obiema stronami. Jeśli połączenie internetowe zostanie przerwane w witrynie 1, klienci przekierowują stronę 2 do klastra internetowego, a następnie do bazy danych w witrynie 1, jeśli połączenie między tymi witrynami będzie nadal aktywne.
W tym scenariuszu, z powodu braku fizycznego połączenia (szeregowego), istnieje większe prawdopodobieństwo podzielenia mózgu. Gdyby sieć WAN uległa awarii między obiema stronami, VIP znalazłby się na obu stronach, gdzie różne nieprzyjemne scenariusze mogłyby wprowadzić desynchronizację.
Innym potencjalnym problemem, jaki widzę, jest trudność skalowania tej infrastruktury do trzeciego centrum danych w przyszłości.
Warstwa sieciowa nie jest skupiona. Na tym etapie architektura jest elastyczna. Ponownie, moim celem jest rozwiązanie do zachowania integralności danych, a także automatycznego przełączania awaryjnego z bazami danych MySQL. Prawdopodobnie zaprojektowałbym resztę wokół tego.
Czy możesz polecić sprawdzone rozwiązanie dla MySQL HA między dwoma fizycznie zróżnicowanymi witrynami?
Dziękujemy za poświęcenie czasu na przeczytanie tego. Z niecierpliwością czekam na twoje rekomendacje.