Jakiś czas temu pisałem o pojawieniu się „floating IP” (wybaczcie, ale będę posługiwał się angielskim/oryginalnym określeniem, bo „zmienne/pływające IP” chyba nie do końca oddaje sens usługi) w DigitalOcean, i jest to pierwszy nasz dzisiejszy bohater.
Drugim bohaterem będzie serwis Cloudflare, o którym również pisałem już nieraz, i to w przeróżnych znaczeniach/zastosowaniach – od ochrony serwera/strony, przez szybki serwer DNS, aż po wykorzystanie Cloudflare jako usługi DynDNS/DDNS.
I w sumie w tym wpisie nie będzie nic nowego, ale chciałbym Wam pokazać na konkretnym przykładzie jak połączenie usługi typu „floating IP” w DigitalOcean z Cloudflare (ale mogą to być dowolne inne firmy/podmioty/usługi, które działają na podobnej zasadzie) pozwoliło nam dziś sprawnie i bezpiecznie przeprowadzić „dużą aktualizację” serwera na którym działa Webinsider.
Spis treści w artykule
Duża aktualizacja serwera
Wprawdzie większość aktualizacji serwerów przeprowadzam „na żywo” (oczywiście z wykorzystaniem odpowiednich kopii zapasowych), to są takie sytuacje, gdzie/gdy takie działanie jest albo niemożliwe, albo przynajmniej mocno ryzykowne i jest duża szansa, że podczas ich wykonywania nie uda się zachować ciągłości działania niektórych usług (np. serwer WWW).
Taka sytuacja miała miejsce dzisiaj – uznałem, że pora na serwerze na którym działa m.in. Webinsider.pl zmienić Debiana 7 Wheezy na najnowszą stabilną wersje, czyli Debian 8 Jessie.
Zazwyczaj tak duże zmiany wiążą się nie tylko ze zmianą/aktualizacją plików systemowych, ale i innych pakietów/programów. Np. webserwer Nginx, który w systemie Wheezy występuje w wersji 1.2.*, a w Jessie jest to „już” wersja 1.6.*, a z tą zmianą wiążą się też pewne konieczne zmiany w konfiguracji, choćby związane z obsługą plików PHP.
A to tylko jeden z przykładów – takich „problemów” może być więcej, i pewnie nie da się ich wszystkich wyłapać w testach „na sucho”.
Cloudflare – szybki serwer DNS
Kiedyś, by zachować ciągłość działania usług zazwyczaj robiłem tak, że czekałem na aktualną kopię zapasową (BackUp), ew. gdy sprawa była pilna, a do zaplanowanej pełnej kopii zapasowej było kilka dni korzystałem z migawki, na potrzeby wykonania której „gdzieś w godzinach nocnych, gdy większość z nas śpi” na kilka(naście) minut zatrzymywałem serwer (chyba jedyna moja bolączka z/w DigitalOcean, to to, że nie można tworzyć migawek przy działającym serwerze).
Następnie na bazie tej kopii zapasowej (lub migawki) tworzyłem lustrzany serwer, na który kierowałem tymczasowo wszystkie domeny/usługi korzystające z serwera podstawowego, na który mogłem teraz swobodnie aktualizować/modyfikować.
Oczywiście można serwer pomocniczy (utworzony z kopii zapasowej) zaktualizować, przetestować i gdy wszystko będzie działać jak należy przekierować na/do niego domeny, robiąc z niego główny serwer.
Choć osobiście najczęściej pomocniczy serwer traktuje jako tymczasowy – głównie ze względu na adres IP (niektóre usługi korzystają z adresów IP a nie domen), czy też „nazwę hosta” i adresacje w wirtualnej sieci LAN.
Operacja zmian w systemie DNS (np. zmiana rekordów A dla poszczególnych domen) jest w takich przypadkach kluczowa, i dzięki Cloudflare zazwyczaj trwa od kilkunastu sekund do kilku minut – zależy przez ile domen trzeba się „przeklikać”.
I to jest (kolejne) miejsce w którym świetnie sprawdza się Cloudflare – jako bardzo szybki serwer DNS.
Przy czym pisząc „szybki” nie mam (tylko) na myśli czasów reakcji na zapytania użytkowników chcących się połączyć z naszą stroną/usługa, a czas jaki jest potrzebny na wejście „w życie” zmian, które wprowadzamy w strefie DNS dla danej domeny – właściwie wszystkie zmiany są odwzorowywane natychmiast po ich wprowadzeniu/zatwierdzeniu, a więc np. zmiana serwera na który kieruje domena (rekord A) zaczyna obowiązywać zaraz po jej wprowadzeniu.
Cała operacja w punktach wygląda tak:
- Tworzymy kopie serwera A
- Na bazie kopii serwera A tworzymy serwer B
- Przełączamy domeny/usługi korzystające z serwera A na serwer B
- Aktualizujemy/modyfikujemy serwer A
- Testujemy działanie serwera A (np. kierując na niego wybraną domenę)
- Przełączamy z powrotem domeny/usługi z serwera B na serwer A
Floating IP w DigitalOcean
Dzięki usłudze „Floating IP” w DigitalOcean odpada konieczność zmian adresów IP dla wykorzystywanych domen – po prostu domena (np. rekord A) kieruje nie na IP samego serwera, ale na nasz zmienny/pływający adres IP, pod który w każdej chwili (i w kilak sekund) możemy podpiąć inny serwer – w moim przypadku serwer tymczasowy, utworzony z kopii/migawki głównego serwera.
Nie oznacza to, że nie przyda się możliwość wprowadzania szybkich zmian w strefie DNS jakie daje np. Cloudflare – wręcz przeciwnie, przyda się choćby do testowego przełączenia wybranej domeny/usługi na zaktualizowany/zmodyfikowany serwer podstawowy.
Cała operacja w punktach wygląda tak:
- Tworzymy kopie serwera A
- Na bazie kopii serwera A tworzymy serwer B
- Pod adres „floating IP” podpisany serwer B zamiast serwera A
- Aktualizujemy/modyfikujemy serwer A
- Testujemy działanie serwera A (np. kierując na niego wybraną domenę)
- Pod adres „floating IP” podpisany z powrotem serwer A zamiast serwera B
Niby punktów tyle samo, to jednak pracy dużo mnie – zwłaszcza, jak na dany serwer kieruje więcej domen/usług.
Więcej informacji na temat tej promocji znajdziecie na tej stronie…
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01