Wysoka dostępność na Vultr z pływającym IP i BGP

Vultr pozwala połączyć dwie nasze funkcje (zmienne adresy IP i BGP) w celu osiągnięcia wysokiej dostępności.

Ustawiać

Będziesz potrzebował dwóch instancji w tej samej lokalizacji i zmiennego adresu IP. Musisz także otworzyć bilet z prośbą o skonfigurowanie BGP na prywatnym ASN dla pływających adresów IP. (Z tej funkcji można również skorzystać, jeśli korzystasz z BGP na publicznej ASN)

Będziesz także potrzebował demona BGP, zalecamy BIRD. BIRD jest zwykle dostępny w menedżerze pakietów systemu operacyjnego.

192.0.2.10/32Jako przykład użyjemy zmiennego adresu IP i 198.51.100.99adresu IP jednej z naszych instancji.

Uwaga: nie należy dołączać pływającego adresu IP do żadnego konkretnego wystąpienia za pośrednictwem panelu sterowania. Jeśli adres IP jest podłączony za pomocą panelu sterowania, wysoka dostępność nie będzie działać poprawnie.

Konfiguracja IP

Użyjemy „fałszywego” interfejsu Linuksa, aby powiązać adres IP. Możesz to zrobić za pomocą następujących poleceń:

ip link add dev dummy1 type dummy
ip link set dummy1 up
ip addr add dev dummy1 192.0.2.10/32

Potwierdź, że zostało to poprawnie skonfigurowane:

# ip addr show dev dummy1
5: dummy1: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether ba:23:57:2c:ad:bc brd ff:ff:ff:ff:ff:ff
    inet 192.0.2.10/32 scope global dummy1

Konfiguracja BIRD

Następnie skonfigurujemy BIRD. Instrukcje te różnią się nieznacznie w zależności od systemu operacyjnego hosta, patrz przypisy na dole tej sekcji.

Utwórz /etc/bird.confplik:

log "/var/log/bird" all;

router id 198.51.100.99;

protocol device
{
    scan time 60;
}

protocol direct
{
    interface "dummy1";
}

protocol bgp vultr
{
    local as <<YOURAS>>;
    source address 198.51.100.99;
    import none;
    export all;
    graceful restart on;
    next hop self;
    multihop 2;
    neighbor 169.254.169.254 as 64515;
    password "<<YOURPASSWORD>>";
}

Musisz aktualizacji YOURASi YOURPASSWORDnumerem AS i hasło BGP przypisany do konta. Informacje te można znaleźć na karcie BGP strony instancji w panelu sterowania Vultr .

Ten plik konfiguracyjny każe BIRD szukać interfejsu dummy1 i reklamować wszelkie znalezione adresy IP w naszej infrastrukturze za pośrednictwem BGP. Oznacza to, że zaraz po uruchomieniu instancji zaczniesz otrzymywać ruch, a jeśli kiedykolwiek się zawiesi, ruch zostanie zatrzymany.

Konfiguracja FreeBSD

Jeśli używasz FreeBSD jako hosta zamiast Linuksa, istnieje kilka różnic.

  1. Jądro musi zostać ponownie skompilowane w celu obsługi podpisu TCP MD5. Te instrukcje są poza zakresem tego artykułu. Jeśli twoje jądro BSD nie obsługuje podpisów TCP MD5, w dzienniku BIRD zobaczysz następujące dane wyjściowe.

    $ cat /var/log/bird
    2017-12-15 01:35:00 <INFO> Started
    2017-12-15 01:35:00 <ERR> vultr: Socket error: Kernel does not support TCP MD5 signatures
    
  2. Plik konfiguracyjny BIRD znajduje się /usr/local/etc/bird.confna BSD.

Sprawdź łączność BGP

Uruchom usługę BIRD service bird starti poczekaj kilka sekund. Sprawdź, czy ustanowiono sesję BGP:

# birdc show proto all vultr
BIRD 1.5.0 ready.
name     proto    table    state  since       info
vultr    BGP      master   up     2016-01-15  Established
  Preference:     100
  Input filter:   REJECT
  Output filter:  ACCEPT
  Routes:         0 imported, 1 exported, 0 preferred
  Route change stats:     received   rejected   filtered    ignored   accepted
    Import updates:      255919581          0  255919581          0          0
    Import withdraws:      1905513          0        ---  257825094          0
    Export updates:              1          0          0        ---          1
    Export withdraws:            0        ---        ---        ---          0
  BGP state:          Established
    Neighbor address: 169.254.169.254
    Neighbor AS:      YOURAS
    Neighbor ID:      x.x.x.x (Host IP)
    Neighbor caps:    refresh enhanced-refresh restart-able AS4
    Session:          external multihop AS4
    Source address:   198.51.100.99
    Hold timer:       184/240
    Keepalive timer:  30/80

Jeśli wszystko działa poprawnie, obok stanu BGP powinien być widoczny komunikat „Ustanowiony”. Częstym problemem jest tutaj zapora blokująca port BGP (TCP 179). Ponadto, jeśli to wystąpienie zostało wdrożone przed skonfigurowaniem sesji BGP przez Vultr, konieczne będzie jego ponowne uruchomienie za pomocą panelu sterowania, zanim BGP będzie dostępny. Jeśli nadal masz problemy, poszukaj /var/log/birddalszych szczegółów.

Testowanie

Możesz upewnić się, że BIRD reklamuje trasę do twojego pływającego adresu IP, wykonując następujące czynności:

# birdc show route
BIRD 1.5.0 ready.
192.0.2.10/32    dev dummy1 [direct1 2015-12-29] * (240)

Aby potwierdzić, że działa poprawnie, możesz wyłączyć interfejs dummy1 (z ip link set dummy1 down), a następnie powtórzyć show routepolecenie. BIRD zauważy, że interfejs zniknął i cofnie trasę.

Wykorzystanie produkcji

Aby mieć pewność, że Twoja witryna pozostanie bezczynna, potrzebujesz więcej niż jednego serwera z tą samą konfiguracją BGP. Jeśli którakolwiek z instancji ulegnie awarii, ruch zostanie dynamicznie przekierowany do jednej z innych instancji. Nie ma ograniczeń co do liczby instancji, które można uruchomić z tą konfiguracją w określonej lokalizacji, jednak tylko jedna z nich będzie aktywna w danym momencie.

W niektórych naszych lokalizacjach ruch będzie losowo rozdzielany między wszystkie instancje skonfigurowane w ten sposób. Ostatecznie wszystkie lokalizacje zostaną skonfigurowane w ten sposób. Jeśli chcesz, aby jedna instancja przejmowała cały ruch, chyba że jest w trybie offline, możesz użyć prepends do kierowania ruchem.

Na przykład, jeśli masz dwa wystąpienia:

  • Instancja A - główna instancja powinna normalnie odbierać cały ruch
  • Instancja B - instancja zapasowa, powinna otrzymywać ruch tylko wtedy, gdy Instancja A jest wyłączona

Aby to zrobić, dodaj następującą sekcję do konfiguracji BIRD w instancji B w następujący sposób:

export filter {
    bgp_path.prepend(YOURAS);
    accept;
};

Zapewniłoby to, że ruch zawsze będzie kierowany do wystąpienia A, chyba że jest on wyłączony.

Jeśli masz instancję C, która powinna odbierać ruch tylko wtedy, gdy A i B są wyłączone, możesz po prostu dodać kolejną linię „bgp_path.prepend”, aby to osiągnąć.

Konfiguracja IPv6

Ten proces będzie również działał z podsieciami zastrzeżonymi IPv6, chociaż użyjesz „bird6” zamiast „bird” i „birdc6” zamiast „birdc”.



Leave a Comment

Jak uzyskać dostęp do Vultr VPS

Jak uzyskać dostęp do Vultr VPS

Vultr oferuje kilka różnych sposobów uzyskiwania dostępu do VPS w celu konfiguracji, instalacji i użytkowania. Poświadczenia dostępu Domyślne poświadczenia dostępu dla twojego VPS ar

System Windows niestandardowy ISO ze sterownikami VirtIO

System Windows niestandardowy ISO ze sterownikami VirtIO

Budowanie ISO systemu Windows (tylko wersje serwerowe) Pobierz najnowsze binarne sterowniki VirtIO dla Windows, spakowane jako plik ISO, z powrotem

Uruchamianie CoreOS na Vultr VPS

Uruchamianie CoreOS na Vultr VPS

Przeczytaj: Vultr oferuje teraz CoreOS na stronie zamówienia - ten przewodnik wyjaśnia, jak ręcznie skonfigurować CoreOS. Te instrukcje przeprowadzą Cię przez proces biegania

Konfigurowanie BGP na Vultr

Konfigurowanie BGP na Vultr

Funkcja Vultrs BGP pozwala przynieść własną przestrzeń IP i korzystać z niej w dowolnej z naszych lokalizacji. Pierwsze kroki Aby korzystać z BGP, potrzebujesz: Wdrożonego Vulta

Korekta czasu w systemie Windows Server

Korekta czasu w systemie Windows Server

Domyślnie Vultr VPS z systemem Windows Server 2012 ma ustawiony czas systemowy na strefę czasową UTC. Możesz zmienić strefę czasową, jak chcesz, ale zmieniając ją t

Dodaj dodatkowy adres IPv4 do swojego VPS

Dodaj dodatkowy adres IPv4 do swojego VPS

W tym samouczku wyjaśniono, jak skonfigurować dodatkowy adres IPv4 w Vultr VPS. Zakładamy, że: Główny adres IP twojego VPS to 1.2.3.4.

Obrazy Ubuntu 16.04 Zgłoś błędy dotyczące usługi metadanych EC2

Obrazy Ubuntu 16.04 Zgłoś błędy dotyczące usługi metadanych EC2

Podczas uruchamiania niektóre starsze instancje Ubuntu 16.04 mogą wyświetlać następujące ostrzeżenie: ************************************ **************************************

Zapora ogniowa Vultr

Zapora ogniowa Vultr

Vultr oferuje internetowe zapory ogniowe, które można włączyć w celu ochrony jednego lub więcej wystąpień obliczeniowych. Posiadanie zestawu reguł zapory dla serwerów

Dostęp do trybu jednego użytkownika (Resetuj hasło roota)

Dostęp do trybu jednego użytkownika (Resetuj hasło roota)

Aby zresetować hasło roota serwera, musisz uruchomić system w trybie pojedynczego użytkownika. Uzyskaj dostęp do swojego serwera w portalu klienta Vultr, a następnie postępuj zgodnie z instrukcjami

Wiele sieci prywatnych

Wiele sieci prywatnych

Vultr wprowadził obsługę wielu sieci prywatnych na początku 2018 r. Ta funkcja jest oferowana jako rozszerzenie standardowej sieci prywatnej. Whe

Przykładowy list autoryzacyjny dla ogłoszeń BGP

Przykładowy list autoryzacyjny dla ogłoszeń BGP

Proszę poprosić o autoryzację dla ogłoszeń BGP przy użyciu następującego szablonu. LIST UPOWAŻNIENIA [DATA] Do kogo może to dotyczyć, Thi

Jak tworzyć rekordy odwrotnego DNS lub PTR w Panelu sterowania Vultr

Jak tworzyć rekordy odwrotnego DNS lub PTR w Panelu sterowania Vultr

Wprowadzenie do Vultr Reverse DNS Aby dodać PTR lub Reverse DNS dla twojego adresu IP instancji, musisz wykonać kroki opisane poniżej:

Zainstaluj Nginx + PHP FPM + Caching + MySQL na Ubuntu 12.04

Zainstaluj Nginx + PHP FPM + Caching + MySQL na Ubuntu 12.04

Prawdopodobnie wiele osób będzie używać Vultr VPS jako serwerów sieciowych, dobrym wyborem byłby Nginx jako serwer sieciowy. W tym temacie opiszę o

Vultr Object Storage

Vultr Object Storage

Pamięć obiektów zgodna z S3 * jest teraz dostępna w chmurze Vultr. Nasza technologia przechowywania obiektów jest niedroga, skalowalna i łatwa do zintegrowania z Tobą

Pojedyncze logowanie

Pojedyncze logowanie

Firmowy system logowania można zintegrować z systemem kont Vultrs za pomocą funkcji rejestracji jednokrotnej (SSO). Jednokrotne logowanie pomaga uprościć zarządzanie hasłami

Podręcznik przenoszenia danych Vultr

Podręcznik przenoszenia danych Vultr

Jak mogę pobrać moje dane w chmurze z Vultr? Przenoszenie danych na platformie Vultr Oferujemy szereg prostych rozwiązań do pobrania

Jak wygenerować klucze SSH?

Jak wygenerować klucze SSH?

Klucz SSH pozwala zalogować się do serwera bez potrzeby podawania hasła. Klucze SSH mogą być automatycznie dodawane do serwerów podczas procesu instalacji.

Jak korzystać z biblioteki Vultr Go, aby uzyskać informacje o serwerze

Jak korzystać z biblioteki Vultr Go, aby uzyskać informacje o serwerze

Wprowadzenie Oficjalna biblioteka Vultr Go może być używana do interakcji z Vultr API. Interfejs API Vultr pozwala kontrolować zasoby powiązane z tobą

Wymagania dotyczące przesyłania ISO systemu operacyjnego do Vultr

Wymagania dotyczące przesyłania ISO systemu operacyjnego do Vultr

Vultr oferuje szeroką gamę systemów operacyjnych do wyboru. Czasami jednak możesz chcieć wgrać własny niestandardowy system operacyjny ISO, taki jak Kal

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.