Alta disponibilidade no Vultr com IP flutuante e BGP

O Vultr permite combinar dois de nossos recursos (IPs flutuantes e BGP) para obter alta disponibilidade.

Configuração

Você precisará de duas instâncias no mesmo local e um IP flutuante. Você também precisará abrir um ticket solicitando a configuração do BGP em um ASN privado para IPs flutuantes. (Você também pode usar esse recurso se estiver executando o BGP conosco em um ASN público)

Você também precisará de um daemon BGP, recomendamos o BIRD. O BIRD geralmente está disponível no gerenciador de pacotes do seu sistema operacional.

Usaremos 192.0.2.10/32como nosso exemplo de IP flutuante e 198.51.100.99como o endereço IP de uma de nossas instâncias.

Nota: Você não deve anexar o IP flutuante a nenhuma instância específica através do seu painel de controle. Se um IP for anexado através do painel de controle, a alta disponibilidade não funcionará corretamente.

Configuração de IP

Vamos usar uma interface "fictícia" do Linux para vincular o endereço IP. Você pode criar isso com os seguintes comandos:

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

Confirme se isso foi configurado corretamente:

# 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

Configuração do BIRD

Em seguida, configuraremos o BIRD. Essas instruções variam um pouco entre os sistemas operacionais host, consulte as notas de rodapé na parte inferior desta seção.

Crie um /etc/bird.confarquivo:

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

Você precisará atualizar YOURASe YOURPASSWORDcom o número AS e a senha BGP atribuídos à sua conta. Esta informação pode ser encontrada na guia BGP de uma página de instância no painel de controle do Vultr .

Este arquivo de configuração instruirá o BIRD a procurar a interface dummy1 e a anunciar quaisquer IPs que encontrar na nossa infraestrutura via BGP. Isso significa que, assim que sua instância estiver em execução, você começará a receber tráfego e, se alguma vez travar, o tráfego será interrompido.

Configuração do FreeBSD

Se você estiver usando o FreeBSD como host em vez do Linux, existem algumas diferenças.

  1. O kernel precisa ser recompilado para suporte à assinatura TCP MD5. Essas instruções estão fora do escopo deste artigo. Se o seu kernel BSD não suportar assinaturas TCP MD5, você verá a seguinte saída no log do 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. O arquivo de configuração do BIRD está localizado no /usr/local/etc/bird.confBSD.

Verifique a conectividade BGP

Inicie o serviço BIRD service bird starte aguarde alguns segundos. Verifique se a sessão do BGP foi estabelecida:

# 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 tudo estiver funcionando corretamente, você deverá ver "Estabelecido" ao lado do estado BGP. Um problema comum aqui é ter um firewall bloqueando a porta BGP (TCP 179). Além disso, se essa instância foi implantada antes do Vultr configurar sua sessão do BGP, ela precisará ser reiniciada pelo painel de controle antes que o BGP esteja disponível. Se você ainda estiver com problemas, consulte /var/log/birdmais detalhes.

Teste

Você pode garantir que o BIRD esteja anunciando a rota para o seu IP flutuante com o seguinte:

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

Para confirmar se está funcionando corretamente, desative a interface dummy1 (com ip link set dummy1 down) e repita o show routecomando. O BIRD terá notado que a interface desapareceu e retirará a rota.

Uso de produção

Para garantir que seu site permaneça ativo, convém mais de um servidor executando a mesma configuração de BGP. Se qualquer uma das instâncias cair, o tráfego será redirecionado dinamicamente para uma das outras instâncias. Não há limite para o número de instâncias que você pode executar com esta configuração em um local específico; no entanto, apenas uma delas estará ativa a qualquer momento.

Em alguns de nossos locais, o tráfego será distribuído aleatoriamente entre quaisquer instâncias que você configurou dessa maneira. Eventualmente, todos os locais serão configurados dessa maneira. Se você deseja que uma instância obtenha todo o tráfego, a menos que esteja offline, use prefêndios para direcionar o tráfego.

Por exemplo, se você tiver duas instâncias:

  • Instância A - instância principal, deve receber todo o tráfego normalmente
  • Instância B - instância de backup, deve receber tráfego apenas se a Instância A estiver inativa

Para fazer isso, adicione a seção a seguir à sua configuração do BIRD na instância B da seguinte maneira:

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

Isso garantiria que o tráfego sempre vá para a Instância A, a menos que esteja inativo.

Se você possui uma instância C, que só deve receber tráfego quando A e B estão inativos, basta adicionar outra linha 'bgp_path.prepend' para fazer isso.

Configuração IPv6

Esse processo também funcionará com sub-redes reservadas para IPv6, embora você use "bird6" em vez de "bird" e "birdc6" em vez de "birdc".



Leave a Comment

ISO personalizado em metal desencapado

ISO personalizado em metal desencapado

Introdução No momento, o Vultr não possui um sistema para permitir o upload e a montagem de ISOs personalizados no bare metal. No entanto, isso não o impede

Como criar registros DNS ou PTR reversos no painel de controle do Vultr

Como criar registros DNS ou PTR reversos no painel de controle do Vultr

Introdução ao DNS reverso do Vultr Para adicionar um registro PTR ou DNS reverso para o endereço IP da sua instância, você precisa seguir as etapas descritas abaixo:

Corrigindo o tempo no Windows Server

Corrigindo o tempo no Windows Server

Por padrão, um Vultr VPS com Windows Server 2012 tem seu horário do sistema definido para o fuso horário UTC. Você pode alterar o fuso horário como desejar, mas alterá-lo t

Automatizando as atualizações do Ubuntu 16 com scripts de inicialização do Vultr

Automatizando as atualizações do Ubuntu 16 com scripts de inicialização do Vultr

O Ubuntu 16 e versões mais recentes executam tarefas periódicas relacionadas ao apt (como atualizar a lista de pacotes e aplicar atualizações autônomas) usando um timer do systemd. Thi

Como restaurar um instantâneo

Como restaurar um instantâneo

Os instantâneos são uma maneira eficaz de fazer um backup completo do seu servidor. Você não poderá restaurar arquivos individuais, mas todo o servidor. Thi

Introdução ao Cloud-Init

Introdução ao Cloud-Init

O Cloud-init é um projeto de código aberto compatível com a maioria das distribuições Linux. Instâncias do Vultr criadas antes de 2017 tinham esse software instalado por padrão. º

Exemplo de carta de autorização para anúncios do BGP

Exemplo de carta de autorização para anúncios do BGP

Use o modelo a seguir ao solicitar autorização para anúncios do BGP. CARTA DE AUTORIZAÇÃO [DATA] A quem possa interessar, Thi

Configurando rede privada

Configurando rede privada

Se você estiver atribuindo uma rede privada a uma máquina existente (ou implantando seu próprio sistema operacional), precisará configurar os endereços IP no privat

Instale Nginx + PHP FPM + Cache + MySQL no Ubuntu 12.04

Instale Nginx + PHP FPM + Cache + MySQL no Ubuntu 12.04

Provavelmente muitas pessoas usarão seus VPS Vultr como servidores da web, uma boa opção seria o Nginx como servidor da web. Neste tópico, vou descrever o

Vultr Block Storage

Vultr Block Storage

A tecnologia Vultrs Cloud Block Storage permite montar armazenamento escalável de alto desempenho em sua instância, tornando o gerenciamento de espaço significativamente mais

Executando o CoreOS em um Vultr VPS

Executando o CoreOS em um Vultr VPS

Leia: O Vultr agora oferece o CoreOS na página de pedidos - Este guia explica como configurar o CoreOS manualmente. Estas instruções orientarão você na execução

Requisitos para o upload de um ISO do sistema operacional para o Vultr

Requisitos para o upload de um ISO do sistema operacional para o Vultr

O Vultr oferece uma ampla variedade de sistemas operacionais para você escolher. Às vezes, no entanto, convém fazer upload de seu próprio ISO do sistema operacional personalizado, como o Kal

Adicione um endereço IPv4 secundário ao seu VPS

Adicione um endereço IPv4 secundário ao seu VPS

Este tutorial explica como configurar um endereço IPv4 adicional no seu Vultr VPS. Vamos assumir o seguinte: O endereço IP principal do seu VPS é 1.2.3.4.

RPKI

RPKI

RPKI (Resource Public Key Infrastructure) é uma maneira de ajudar a impedir o seqüestro de BGP. Ele usa assinaturas criptográficas para validar que um ASN é permitido t

Habilitar áudio do Windows em uma instância do Windows Server

Habilitar áudio do Windows em uma instância do Windows Server

Nota: Este guia funcionará para instâncias do Windows 2012 R2 e Windows 2016. Servidores Windows, por padrão, não têm o serviço Windows Audio ativado.

Clonando um servidor virtual com o Vultr

Clonando um servidor virtual com o Vultr

Ocasionalmente, você precisará clonar um servidor virtual para fins de dimensionamento ou para alterar a região do servidor, por exemplo. No Vultr, isso é fácil, um

Como acessar o seu Vultr VPS

Como acessar o seu Vultr VPS

O Vultr fornece várias maneiras diferentes de acessar seu VPS para configurar, instalar e usar. Credenciais de acesso As credenciais de acesso padrão para o seu sistema VPS

ISO personalizado do Windows com drivers VirtIO

ISO personalizado do Windows com drivers VirtIO

Construindo a ISO do Windows (somente versões do servidor) Obtenha os drivers binários VirtIO mais recentes para Windows, compactados como um arquivo ISO, para

Reparando um VPS do Windows após instalar atualizações de driver

Reparando um VPS do Windows após instalar atualizações de driver

A Microsoft lançou recentemente drivers via Windows Update que podem impedir que as instâncias do Vultr VPS executando o Windows sejam inicializadas corretamente. Esses drivers são chamados:

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.