Our goal

Nasze zadanie na dzisiaj to ustawienie dwóch serwerów LVS utrzymujących w klastrze wysokiej dostępności dwa wirtualne rutery z adresami zewnętrznymi dla naszych serwisów oraz dwa wirtualne rutery z adresami do komunikacji wewnętrznej.

W przypadku poprawnego działania obu serwerów LVS konfiguracja będzie wyglądała następująco:

  • instancja wirtualnego rutera VI_1 działający na LVS1 w trybie MASTER oraz na LVS2 w trybie BACKUP dla VIP 192.168.50.1 na karcie sieciowej eth1.
  • instancja wirtualnego rutera VI_3 działający na LVS1 w trybie BACKUP oraz na LVS1 w trybie MASTER dla VIP 192.168.50.2 na karcie sieciowej eth1.
  • instancja wirtualnego rutera VI_2 działający na LVS1 w trybie MASTER oraz na LVS2 w trybie BACKUP  dla VIP 192.168.100.1 na karcie sieciowej eth2.
  • instancja wirtualnego rutera VI_4 działający na LVS1 w trybie BACKUP oraz na LVS2 w trybie MASTER dla VIP 192.168.200.1 na karcie sieciowej eth3.

Zwróćmy uwagę, że karty sieciowe na obu LVS są podłączone odpowiednio do tych samych wirtualnych sieci tj.:

  • eth1 na LVS1 oraz eth1 na LVS2 są wpięte do VMNet8,
  • eth1 na LVS1 oraz eth1 na LVS2 są wpięte do VMNet1,
  • eth1 na LVS1 oraz eth1 na LVS2 są wpięte do VMNet12
  • eth1 na LVS1 oraz eth1 na LVS2 są wpięte do VMNet13.

VRRP

Konfiguracja usługi

Przed konfiguracją:

    1. Zainstaluj keepalived

  1. Każdy z dwóch serwerów keepalived powinien mieć 4 karty sieciowe: eth0 dodana domyślnie w VMNet8 (NAT), eth1 w VMNet1, eth2: w VMNet 12, eth3 w VMNet 13.
  2. Dodawanie  karty sieciowej do maszyny wirtualnej (w VMware Player:)
    1. Kliknij w VirtualMachine->VirtualMachineSettings
    2. Wybierz Hardware, oraz kliknij ADD
    3. Wybierze Network Adapter, kliknij Dalej oraz ustaw opcję Host-only
    4. Zatwierdź zmiany (maszyna wymaga restartu)
    5. uruchom ponownie maszynę VMWare

Założenia:

  1. nie zmieniamy konfiguracji eth0
  2. utrzymujemy 2 wirtualne adresy do komunikacji zewnątrznej IP (VIP)  – na interfejsach eth1.
  3. utrzymujemy 2 wirtualne adresy do komunikacji wewnętrznej (na interfejsach eth2 i eth3)
  4. po jednym zewnętrznym VIP utrzmyjemy w ramach instancji VI_1 i VI_3
  5. po jednym wewnętrznym VIP w ramach instancji VI_2 i VI_4.
  6. Serwer LVS1 ustawiamy jako serwer MASTER dla VI_1 i VI_3, oraz jako server BACKUP dla VI_2 i VI_4
  7. Serwer LVS2 ustawiamy jako serwer MASTER dla VI_2 i VI_4, oraz jako server BACKUP dla VI_1 i VI_3
  8. Każda instancja otrzymuje swój virtual_router_id oraz login i hasło poprzez które będą się komunikowały.
  9. Wybór który serwer stanie się serwerem master odbywa się poprzez wybór wyższego priorytetu rutera w ramach instancji
  10. Czas odświeżania (tj. wysyłania pakietów ADV) ustawiamy na 1 sekundę

Na LVS1 wykonujemy:

Następnie w /etc/network/interfaces ustawiamy:

oraz wykonujemy:

 

Dla LVS2 powtarzamy takie same kroki podmieniając jedynie adres na 192.168.47.131 (zamiast 192.168.47.132).

Konfiguracja.
Na serwerze LVS1 w pliku /etc/keepalived/keepalived.conf ustaw konfigurację pierwszego serwera:

Konfiguracja  LVS2:
W pliku /etc/keepalived/keepalived.conf ustaw konfigurację pierwszego serwera:

Wykonujemy nastepujace polecenia:

Możemy sprawdzić czy wszystko się udało sprawdzają ostatnie linie w systemowym logu:

root@asl244:/etc/keepalived# tail -f /var/log/messages

W przypadku poprawnego działania LVS1 i LVS2, stan interfejsów na LVS1 powinien wyglądać następująco (zwróć uwagę na konfigurację pogrubioną czcionką):

natomiast na LVS2 konfiguracja interfejsów wygląda tak:

Przetestuj w następujący sposób:

  1. Wyłącz link na pierwszym serwerze (ip l s dev eth1 down) i poczekaj aż serwer drugi podniesie adres ip, który stał się niedostępny (możesz diagnozować wyświetlając adresy ip – ip a s)
  2. Podnieś link na pierwszym serwerze (ip l s dev eth1 up) i poczekaj aż serwer pierwszy podniesie adres ip)
  3. Wykonaj powyższe dwa kroki pięć razy
  4. Podaj szacunkowy czas oczekiwania na przejęcie przez serwer slave roli serwera master i wykonanie kroku powrotnego
  5. Prześlij prowadzącemu raport z testu (ile pingów zostało utraconych przy każdym przełączaniu).