Konfigurowanie publicznego modułu równoważenia obciążenia
Jako architekt rozwiązań dla portalu opieki zdrowotnej musisz dystrybuować obciążenie z przeglądarek klientów na maszynach wirtualnych w obrębie farmy internetowej. Musisz skonfigurować moduł równoważenia obciążenia oraz zrównoważone maszyny wirtualne.
Publiczny moduł równoważenia obciążenia mapuje publiczny adres IP i numer portu ruchu przychodzącego na prywatny adres IP oraz numer portu maszyny wirtualnej i numer portu maszyny wirtualnej w puli zaplecza. Odpowiedzi są następnie zwracane do klienta. Stosując reguły równoważenia obciążenia, można dystrybuować określone typy ruchu między wieloma maszynami wirtualnymi lub usługami.
Tryby dystrybucji
Domyślnie usługa Azure Load Balancer dystrybuuje ruch sieciowy równomiernie między wiele wystąpień maszyn wirtualnych. Jeśli wymagane jest inne zachowanie, dostępne są również następujące tryby dystrybucji:
Skrót krotki z pięcioma krotkami: domyślny tryb dystrybucji dla modułu równoważenia obciążenia to skrót z pięcioma krotkami. Krotka składa się z źródłowego adresu IP, portu źródłowego, docelowego adresu IP, portu docelowego i typu protokołu. Ponieważ port źródłowy jest uwzględniony w skrócie i zmienia się dla każdej sesji, klienci mogą być kierowani do innej maszyny wirtualnej dla każdej sesji.
Koligacja źródłowego adresu IP: ten tryb dystrybucji jest również nazywany koligacją sesji lub koligacją adresu IP klienta. Aby zamapować ruch na dostępne serwery, tryb koligacji źródłowego adresu IP używa skrótu dwukropka (ze źródłowego adresu IP i docelowego adresu IP) lub skrótu z trzema krotkami (z źródłowego adresu IP, docelowego adresu IP i typu protokołu). Skrót gwarantuje, że żądania od określonego klienta są zawsze wysyłane do tej samej maszyny wirtualnej za modułem równoważenia obciążenia.
Wybieranie trybu dystrybucji
W przykładzie healthcare-portal załóżmy, że wymaganiem dewelopera w warstwie prezentacji jest użycie sesji w pamięci do przechowywania profilu zalogowanego użytkownika, gdy użytkownik wchodzi w interakcję z portalem.
W tym scenariuszu moduł równoważenia obciążenia musi zapewnić koligację źródłowego adresu IP w celu obsługi sesji użytkownika. Profil jest przechowywany tylko na maszynie wirtualnej, z którą klient łączy się po raz pierwszy, ponieważ ten adres IP jest kierowany do tego samego serwera. Podczas tworzenia punktu końcowego modułu równoważenia obciążenia należy określić tryb dystrybucji przy użyciu następującego przykładu programu PowerShell:
$lb = Get-AzLoadBalancer -Name MyLb -ResourceGroupName MyResourceGroup
$lb.LoadBalancingRules[0].LoadDistribution = 'sourceIp'
Set-AzLoadBalancer -LoadBalancer $lb
Aby dodać trwałość sesji za pomocą witryny Azure Portal:
W witrynie Azure Portal wybierz zasób usługi Load Balancer.
Na stronie Reguły równoważenia obciążenia w okienku Ustawienia wybierz odpowiednią regułę równoważenia obciążenia.
Na stronie ustawień reguły równoważenia obciążenia zmień wartość trwałości sesji z Brak na Adres IP klienta.
Usługi Load Balancer i Brama usług pulpitu zdalnego
Brama usług pulpitu zdalnego to usługa systemu Windows, która umożliwia klientom w Internecie nawiązywanie połączeń protokołu RDP (Remote Desktop Protocol) przez zapory do serwerów usług pulpitu zdalnego w sieci prywatnej. Domyślny skrót krotki z pięcioma elementami w module Load Balancer jest niezgodny z tą usługą. Jeśli chcesz używać modułu Load Balancer z serwerami Pulpitu zdalnego, użyj koligacji źródłowego adresu IP.
Usługa Load Balancer i przekazywanie multimediów
Innym przypadkiem użycia koligacji źródłowego adresu IP jest przekazywanie multimediów. W wielu implementacjach klient inicjuje sesję za pośrednictwem protokołu TCP (Transmission Control Protocol) i nawiązuje połączenie z docelowym adresem IP. To połączenie pozostaje otwarte w trakcie przekazywania w celu monitorowania postępu, ale plik jest przekazywany za pośrednictwem oddzielnego protokołu UDP (User Datagram Protocol).
Przy użyciu skrótu z pięcioma krotkami moduł równoważenia obciążenia prawdopodobnie wysyła połączenia TCP i UDP z różnymi docelowymi adresami IP, a przekazywanie nie zakończy się pomyślnie. Aby rozwiązać ten problem, użyj koligacji źródłowego adresu IP.