Lektor: W tej lekcji
omówimy znaczenie load balancerów.
Teraz load balancery,
znane również jako przełączniki treści,
są używane do dystrybucji przychodzących
żądań na wielu serwerach wewnątrz
formy serwera lub infrastruktury chmury.
Jeśli prowadzisz dużą witrynę lub usługę,
nie możesz zrobić tego wszystkiego na jednym serwerze.
Na przykład, w tym momencie mam kilkaset tysięcy studentów,
którzy biorą udział
w moich kursach i oglądają moje filmy.
Nie ma możliwości, by pojedynczy serwer poradził sobie z tak dużym obciążeniem.
Musimy więc dystrybuować
je na wielu różnych serwerach
na całym świecie.
Ale kiedy student chce odwiedzić moją stronę, nie
musi wybierać konkretnego serwera.
Zamiast tego po prostu idą na trening. com, a nasz load balancer
i przełącznik treści przekierowuje
to żądanie do następnego dostępnego serwera, aby
móc je przetworzyć.
W rzeczywistości mamy mnóstwo różnych serwerów
na całym świecie, aby obsłużyć
wszystkie te różne żądania.
Dokładnie to samo dzieje się z Netflixem,
Hulu, Facebookiem czy Amazonem, ale na
znacznie większą skalę.
Wszystkie te duże strony internetowe muszą korzystać z load
balancera, w przeciwnym razie pojedynczy
serwer po prostu zawiesiłby się pod obciążeniem, a oni sami
ucierpieliby z powodu ataku odmowy usługi ze względu
na popularność ich witryny.
Teraz load balancer działa zasadniczo
jako policjant ruchu,
siedząc przed serwerami i kierując
żądania klienta do serwerów, które są najbardziej
dostępne do spełnienia tych żądań w danym
momencie.
Maksymalizuje to szybkość reagowania na użytkownika
i bardziej efektywnie wykorzystuje
całą istniejącą pojemność serwerów dla wszystkich
żądań użytkowników.
Powodem, dla którego load balancer jest tak ważny,
jest to, że jest to jedna z kluczowych rzeczy, które
możemy zrobić, aby pomóc w obronie przed atakiem typu Denial
of Service lub Distributed Denial of Service Attack.
Czym jest atak typu Denial of Service?
Atak typu Denial of Service polega
na ciągłym zalewaniu systemów ofiary żądaniami
usług, powodując wyczerpanie
pamięci i ostatecznie awarię systemu.
Obecnie jednak większość nowoczesnych
systemów nie może zostać zniszczona przez pojedynczą maszynę.
Zamiast tego atakujący stosują atak DDoS (Distributed
Denial of Service Attack).
W rozproszonym ataku typu Denial of Service,
zamiast pojedynczego napastnika atakującego serwer,
setki lub nawet tysiące maszyn jednocześnie
przeprowadzają atak na serwer, aby zmusić go do przejścia
w tryb offline.
Na przykład w marcu 2018 r. GitHub został zaatakowany
przez największy jak dotąd DDoS, w którym dziesiątki
tysięcy unikalnych punktów końcowych przeprowadziło
skoordynowany atak, aby uderzyć
w ten serwer z gwałtownym wzrostem ruchu, który
wyniósł 1. 35 terabitów na sekundę.
Spowodowało to wyłączenie strony na pięć minut.
Ale prawdziwe pytanie brzmi: jak
przetrwać jeden z tych ataków i zapobiec
wyłączeniu serwerów naszej organizacji?
Cóż, wystarczy spojrzeć na Amazon, aby poznać
niektóre z najlepszych praktyk.
W lutym 2020 r. Amazon został zaatakowany
przez największy jak dotąd DDoS, nawet większy
niż GitHub.
Przeprowadzono skoordynowany
atak na ten serwer, który spowodował wzrost
ruchu mierzony 2. 3 terabity na sekundę, ale ze
względu na dobrą architekturę bezpieczeństwa i zdolność
do skalowania zasobów w celu utrzymania
tego ataku, nie doświadczyli
przestojów podczas ataku, mimo że był on o 70% większy
niż ten, który doprowadził do awarii GitHub.
Pierwsza technika, której użyli,
znana jest jako blackholing lub sinkholing.
Jest to technika, która
identyfikuje wszystkie atakujące adresy
IP i kieruje cały ich ruch do
nieistniejącego serwera przez zerowy interfejs,
skutecznie zatrzymując atak.
Niestety, atakujący zawsze mogą przenieść się na nowy adres
IP i ponownie rozpocząć atak.
Nie zapobiegnie więc DDoS na zawsze, ale
da ci trochę czasu na pracę
nad innymi środkami zaradczymi.
Systemy IPS (Intrusion Prevention Systems) mogą być również
wykorzystywane do identyfikacji
i reagowania na ataki typu Denial of Service.
Może to działać dobrze w przypadku ataków na
małą skalę na sieć, ale
nie będzie miało wystarczającej mocy obliczeniowej, aby
poradzić sobie z atakiem na naprawdę dużą skalę,
takim jak ten, którego celem był Amazon.
Obecnie jedną z najskuteczniejszych metod
jest korzystanie z elastycznej infrastruktury chmurowej,
ponieważ umożliwia ona skalowanie na żądanie w zależności od potrzeb, dzięki
czemu można przetrwać atak.
Problem z tą strategią polega jednak
na tym, że większość dostawców
usług nalicza opłaty w oparciu o pojemność
i wykorzystywane zasoby.
Tak więc w miarę skalowania powoduje
to, że otrzymujemy znacznie większy rachunek
od naszego dostawcy usług w chmurze
i może to być coś, za co nie otrzymujemy
żadnego zwrotu z inwestycji, ponieważ cały
ten ruch nie generował żadnych przychodów dla naszej organizacji, wszystko to
było tylko częścią ataku.
To powiedziawszy, przynajmniej pozostajesz online, aby obsługiwać
swoich płacących klientów.
Staje się więc kwestią tego, czy
możesz sobie pozwolić na przetrwanie
dłużej niż atak DDoS może trwać.