Vysoká dostupnosť na Vultr s plávajúcou IP a BGP

Vultr vám umožňuje kombinovať dve naše funkcie (plávajúce IP adresy a BGP), aby ste dosiahli vysokú dostupnosť.

Nastaviť

Budete potrebovať dve inštancie na rovnakom mieste a plávajúcu adresu IP. Budete tiež musieť otvoriť lístok so žiadosťou o nastavenie BGP na súkromnom ASN pre plávajúce IP adresy. (Túto funkciu môžete použiť aj vtedy, ak s nami prevádzkujete BGP na verejnom ASN)

Budete potrebovať aj BGP démona, odporúčame BIRD. BIRD je zvyčajne dostupný prostredníctvom správcu balíkov vášho operačného systému.

192.0.2.10/32Ako náš príklad použijeme plávajúcu IP a 198.51.100.99ako IP adresu jednej z našich inštancií.

Poznámka: Plávajúcu adresu IP by ste nemali pripájať k žiadnej konkrétnej inštancii prostredníctvom ovládacieho panela. Ak je IP pripojená cez ovládací panel, vysoká dostupnosť nebude správne fungovať.

Konfigurácia IP

Budeme používať „fiktívne“ rozhranie Linuxu na viazanie adresy IP. Môžete to vytvoriť pomocou nasledujúcich príkazov:

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

Potvrďte, že to bolo správne nakonfigurované:

# 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

Konfigurácia BIRD

Ďalej nakonfigurujeme BIRD. Tieto pokyny sa medzi hostiteľskými operačnými systémami mierne líšia, pozrite si poznámky pod čiarou v spodnej časti tejto časti.

Vytvorte /etc/bird.confsúbor:

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>>";
}

Budete musieť aktualizovať YOURASas YOURPASSWORDčíslom AS a heslom BGP priradeným k vášmu účtu. Tieto informácie možno nájsť na karte BGP na stránke inštancie v ovládacom paneli Vultr .

Tento konfiguračný súbor povie BIRDu, aby vyhľadal rozhranie dummy1 a inzeroval všetky adresy IP, ktoré nájde, našej infraštruktúre prostredníctvom BGP. To znamená, že akonáhle je vaša inštancia spustená, začnete prijímať návštevnosť a ak niekedy dôjde k zlyhaniu, premávka sa zastaví.

Konfigurácia FreeBSD

Ak používate FreeBSD ako hostiteľa namiesto Linuxu, existuje niekoľko rozdielov.

  1. Pre podporu podpisu TCP MD5 je potrebné prekompilovať jadro. Tieto pokyny sú mimo rozsahu tohto článku. Ak vaše jadro BSD nepodporuje podpisy TCP MD5, v protokole BIRD uvidíte nasledujúci výstup.

    $ 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. Konfiguračný súbor BIRD sa nachádza /usr/local/etc/bird.confna BSD.

Overte pripojenie BGP

Spustite službu BIRD service bird starta počkajte niekoľko sekúnd. Skontrolujte, či bola nadviazaná relácia 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

Ak všetko funguje správne, vedľa stavu BGP by sa malo zobraziť „Zavedené“. Bežným problémom je, že brána firewall blokuje port BGP (TCP 179). Ak bola táto inštancia nasadená predtým, ako Vultr nastavil vašu reláciu BGP, bude potrebné ju reštartovať cez ovládací panel, kým bude BGP k dispozícii. Ak máte stále problémy, pozrite sa na /var/log/birdďalšie podrobnosti.

Testovanie

Môžete sa uistiť, že BIRD inzeruje cestu k vašej plávajúcej IP pomocou nasledujúceho:

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

Aby ste sa uistili, že to funguje správne, môžete vypnúť rozhranie dummy1 (pomocou ip link set dummy1 down) a potom show routepríkaz zopakovať . BIRD si všimne, že rozhranie zmizlo a stiahne trasu.

Výrobné využitie

Ak chcete zabezpečiť, aby vaša stránka zostala v prevádzke, mali by ste chcieť, aby rovnakú konfiguráciu BGP bežal viac ako jeden server. Ak niektorá z inštancií vypadne, návštevnosť sa dynamicky presmeruje na jednu z iných inštancií. Počet inštancií, ktoré môžete spustiť s touto konfiguráciou na konkrétnom mieste, nie je obmedzený, avšak v danom čase bude aktívna iba jedna z nich.

V niektorých našich lokalitách bude návštevnosť distribuovaná náhodne medzi všetky inštancie, ktoré ste takto nakonfigurovali. Nakoniec budú všetky miesta nakonfigurované týmto spôsobom. Ak chcete, aby jedna inštancia získala všetku návštevnosť, pokiaľ nie je offline, na riadenie návštevnosti by ste mali použiť predpony.

Napríklad, ak máte dva prípady:

  • Inštancia A – hlavná inštancia by mala normálne prijímať všetku komunikáciu
  • Inštancia B – záložná inštancia, by mala prijímať prenos iba vtedy, ak je inštancia A mimo prevádzky

Aby ste to dosiahli, pridajte nasledujúcu časť do svojej konfigurácie BIRD na inštancii B takto:

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

Tým by sa zabezpečilo, že premávka bude vždy smerovať k inštancii A, pokiaľ neklesne.

Ak máte inštanciu C, ktorá by mala prijímať návštevnosť iba vtedy, keď sú A a B nefunkčné, môžete na to jednoducho pridať ďalší riadok „bgp_path.prepend“.

Nastavenie IPv6

Tento proces bude fungovať aj s podsieťami vyhradenými pre protokol IPv6, aj keď použijete „bird6“ namiesto „bird“ a „birdc6“ namiesto „birdc“.

Zanechať komentár

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac