Sincronizando instâncias do Amazon EC2

2

Eu quero que o Corosync e o Pacemaker façam a sincronização entre dois servidores, os servidores são, duas (ou mais) instâncias do EC2, com o Ubuntu 16.04 instalado. Eu estava fazendo isso seguindo este artigo , mas Estou preso no passo de private_binding_IP_address eu pesquiso pela internet mas sem sorte, o que eu quero saber é o seguinte:

  • O Corosync e o Pacemaker funcionam com o Ubuntu 16.04?
  • O Corosync e o Pacemaker funcionam com instâncias do Amazon EC2 (Ubuntu)?
  • Como fazer isso (sincronizar dois ou mais Amazon EC2s juntos)?

Obrigado

UPDATE : o objetivo principal da criação do cluster de alta disponibilidade do EC2 é que eu quero instalar dois ou mais servidores NextCloud em instâncias do EC2 para armazenamento e banco de dados, posso configurar o NextCloud para usar, S3 bucket como armazenamento primário e RDS para banco de dados, para todas as instâncias do EC2. as instâncias do NextCloud já estão instaladas e configuradas para um bucket do S3 e um RDS, agora para sincronizar os dois EC2s que eu segui o artigo mas estou preso na etapa Configurar o cluster do Corosync Não consigo obter o bindnetaddr que é um endereço IP de ligação , Eu corri o comando ifconfig -a em ambos os servidores, mas os dois IP especificados no artigo não eram os mesmos

UPDATE2 Vi o AWS artigo o problema é que este artigo descreve como criar HA entre EC2s, o que significa que uma instância é ativa e a outra é espera , o que preciso fazer é tornar todas as instâncias ativas no tempo saneo não uma ativa e as outras em standby, você pode dizer sync no nível do aplicativo, assumir se eu tiver três servidores NextCloud um usuário pode enviar pedidos para os três servidores NextCloud e as solicitações são processadas pelos três servidores. Eu cansei do ELB da AWS (Elastic Load Balancer), mas ele estava se comportando da mesma forma descrita no artigo da AWS, por isso mudei para o Corosync e o Pacemaker, mas não consegui descobrir como usar o Corosync para EC2s

    
por ibr 01.02.2018 / 15:31

1 resposta

3

Does Corosync and Pacemaker work with Ubuntu 16.04?

Sim. Pacotes do Ubuntu Corosync e Pacemaker for Xenial (16.04), que podem ser instalados com um simples comando: # apt install corosync pacemaker

Does Corosync and Pacemaker work with Amazon EC2 (Ubuntu) instances?

Tecnicamente, sim, mas há muitos casos importantes que você deve saber. A maior preocupação que tenho é o desempenho / confiabilidade da rede entre as instâncias padrão do EC2.

O Corosync lida com a comunicação entre os nós e detecta quando os nós desaparecem do cluster (falhas de nós, falhas de rede, etc). Como a rede da AWS é uma espécie de caixa preta (da perspectiva do administrador), é difícil avaliar a confiabilidade dessa rede. Em clusters "on-prem", esta rede é geralmente um par de conexões diretas entre nós, ou um switch empilhado, então algo altamente confiável e de alto desempenho. Eu não estou dizendo que a rede da AWS não é confiável ou de alto desempenho, mas é muito compartilhada e certamente mais complexa do que um conjunto de cabos crossover. Quando a rede do Corosync é interrompida, mesmo por apenas 1000ms (1s), ela irá declarar um nó inativo (em um cluster de dois nós, com tempos limite padrão). Espero que isso aconteça de vez em quando e saiba como se recuperar dele.

Dito isso, parece que você pode obter "instâncias de cluster" na AWS, que oferecem uma rede de baixa latência / alto desempenho entre nós. É provável que isso seja o que você deseja usar, pois parece abordar a principal preocupação que tenho.

Independentemente das instâncias escolhidas, o Pacemaker deve ser configurado com o STONITH ativado, para garantir que, quando um nó ficar offline ou sua rede for interrompida, ele seja protegido do resto do cluster. STONITH é uma forma de Fencing que usa um nó de cluster em um estado desconhecido e o coloca em um estado conhecido: desligado. O STONITH é ignorado na maioria dos tutoriais que você encontra on-line porque depende muito do seu ambiente / hardware / hipervisor, mas é uma das partes mais importantes de um cluster de HA configurado adequadamente.

Parece haver um novo agente fence para o AWS no git do ClusterLab: link

How to do that (sync two or more Amazon EC2s together)?

Essa parte é um pouco ambígua demais para responder com precisão. Você está falando sobre a sincronização de diretórios, bancos de dados, volumes ou o que? Se você atualizar sua pergunta para ser mais específica, atualizarei minha resposta;)

    
por 02.02.2018 / 19:34