Alta disponibilità su Vultr con IP mobile e BGP

Vultr ti consente di combinare due delle nostre funzionalità (IP mobili e BGP) al fine di ottenere un'alta disponibilità.

Impostare

Ti occorreranno due istanze nella stessa posizione e un IP mobile. Dovrai anche aprire un ticket che richiede che BGP sia configurato su un ASN privato per IP mobili. (Puoi anche utilizzare questa funzione se esegui BGP con noi su un ASN pubblico)

Avrai bisogno anche di un demone BGP, consigliamo BIRD. BIRD è generalmente disponibile tramite il gestore di pacchetti del sistema operativo.

Useremo 192.0.2.10/32come esempio IP mobile e 198.51.100.99come indirizzo IP di una delle nostre istanze.

Nota: non è necessario collegare l'IP mobile a nessuna istanza particolare tramite il pannello di controllo. Se un IP è collegato tramite il pannello di controllo, l'alta disponibilità non funzionerà correttamente.

Configurazione IP

Utilizzeremo un'interfaccia "fittizia" di Linux per associare l'indirizzo IP. Puoi crearlo con i seguenti comandi:

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

Conferma che questo è stato configurato correttamente:

# 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

Configurazione BIRD

Successivamente, configureremo BIRD. Queste istruzioni variano leggermente tra i sistemi operativi host, vedere le note in fondo a questa sezione.

Crea un /etc/bird.conffile:

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

Dovrai aggiornare YOURASe YOURPASSWORDcon il numero AS e la password BGP assegnati al tuo account. Queste informazioni sono disponibili nella scheda BGP di una pagina di istanza nel pannello di controllo Vultr .

Questo file di configurazione indicherà a BIRD di cercare l'interfaccia dummy1 e pubblicizzerà tutti gli IP che trova sulla nostra infrastruttura tramite BGP. Ciò significa che non appena l'istanza è in esecuzione, inizierai a ricevere il traffico e, in caso di crash, il traffico verrà interrotto.

Configurazione di FreeBSD

Se stai usando FreeBSD come host anziché Linux, ci sono alcune differenze.

  1. Il kernel deve essere ricompilato per il supporto della firma TCP MD5. Queste istruzioni non rientrano nell'ambito di questo articolo. Se il tuo kernel BSD non supporta le firme TCP MD5, vedrai il seguente output nel registro BIRD.

    $ 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. Il file di configurazione BIRD si trova /usr/local/etc/bird.confsu BSD.

Verifica la connettività BGP

Avviare il servizio BIRD service bird starte attendere qualche secondo. Verificare che la sessione BGP sia stata stabilita:

# 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

Se tutto funziona correttamente, dovresti vedere "Stabilito" accanto allo stato BGP. Un problema comune qui è avere un firewall che blocca la porta BGP (TCP 179). Inoltre, se questa istanza è stata distribuita prima che Vultr configurasse la sessione BGP, dovrà essere riavviato tramite il pannello di controllo prima che BGP sia disponibile. Se i problemi persistono, consultare /var/log/birdulteriori dettagli.

analisi

Puoi assicurarti che BIRD stia pubblicizzando il percorso verso il tuo IP mobile con quanto segue:

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

Per confermare che funziona correttamente, è possibile disabilitare l'interfaccia dummy1 (con ip link set dummy1 down), quindi ripetere il show routecomando. BIRD avrà notato che l'interfaccia è scomparsa e ritirerà il percorso.

Utilizzo di produzione

Al fine di garantire che il tuo sito rimanga attivo, si desidera che più di un server esegua la stessa configurazione BGP. Se una delle istanze si interrompe, il traffico verrebbe reindirizzato dinamicamente a una delle altre istanze. Non vi è alcun limite al numero di istanze che è possibile eseguire con questa configurazione in una posizione particolare, tuttavia solo una di esse sarà attiva in un dato momento.

In alcune delle nostre sedi, il traffico verrà distribuito casualmente tra le istanze configurate in questo modo. Alla fine, tutte le posizioni saranno configurate in questo modo. Se desideri che un'istanza riceva tutto il traffico a meno che non sia offline, ti consigliamo di utilizzare le anteprime per indirizzare il traffico.

Ad esempio, se hai due istanze:

  • Istanza A - istanza principale, dovrebbe ricevere tutto il traffico normalmente
  • Istanza B: istanza di backup, dovrebbe ricevere traffico solo se l'istanza A è inattiva

Per fare ciò, aggiungi la seguente sezione alla tua configurazione BIRD sull'istanza B come segue:

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

Ciò garantirebbe che il traffico passerà sempre all'istanza A, a meno che non sia inattivo.

Se hai un'istanza C, che dovrebbe ricevere traffico solo quando A e B sono inattivi, puoi semplicemente aggiungere un'altra riga 'bgp_path.prepend' per farlo.

Configurazione IPv6

Questo processo funzionerà anche con le sottoreti riservate IPv6, sebbene utilizzerai "bird6" invece di "bird" e "birdc6" anziché "birdc".

Lascia un commento

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.