Proxy de pulsação baseado em CentOS

1

Eu estou olhando para configurar o failover automático para o Apache e MySQL. Estou planejando colocar um pequeno servidor proxy na frente de duas caixas do Apache e duas caixas do MySQL. O Apache irá rsync dados do mestre - > escravo de vez em quando, e o MySQL será configurado em Master / Slave para replicação. Em caso de falha, a (s) caixa (s) de backup pode (m) assumir o controle até que o mestre seja reconstruído.

O servidor proxy na frente será executado apenas como um policial de trânsito com algum tipo de software de heartbeat (não estou procurando balanceamento de carga neste momento). Dessa forma, não tenho que me preocupar em mudar o firewall caso as caixas principais caiam. O Linux-HA é a melhor opção ou há alguma sugestão?

    
por dragonmantank 18.01.2010 / 16:20

2 respostas

2

O Linux HA é um ótimo conjunto de ferramentas. Se você quiser simples, vá com heartbeat 1; heartbeat 2 foi para clusters com mais de 2 nós e configuração XML. 1 é suficiente para a maioria dos casos simples de 2 nós.

Mas, embora eu concorde que ter um proxy na frente do seu aplicativo seja sempre uma boa ideia (executar vários servidores como provenientes de um servidor virtual & c), sua configuração como descreve é como introduzir um novo SPF: proxy.

O que você provavelmente faria melhor no seu caso seria executar os dois servidores em uma configuração ativa-ativa, incluindo serviço web completo e serviço de proxy completo em ambos (!).

Basta configurar o heartbeat para assumir três IPs: o do servidor MySQL ativo, o do servidor da Web ativo e o do proxy ativo (somente o último precisa ser público).

Em seguida, defina o proxy para ir sempre para o IP interno do "servidor da web ativo" e o servidor da web para ir para o IP do "servidor de banco de dados ativo".

Quando você estiver pronto para uma configuração de balanceamento de carga, basta desativar a comutação do IP do servidor Web e colocar os dois servidores Web no grupo de servidores back-end do proxy.

A configuração inicial poderia ser assim:

   Server A (Apache on Port 80)   Server A (Apache Port 8080)    Server A MySQL <-----------
              |                \           |                 \        |                      \
Web <-> Public Proxy IP         >-> Shared Private Web IP     >--> Shared Private MySQL IP    | Mysql Synchronization Link
              |                /           |                 /        |                      /
   Server B (Apache on Port 80)   Server B (Apache Port 8080)    Server B MySQL <-----------

Em seguida, você pode ir diretamente para o balanceamento de carga real (como mencionado para a web) e o clustering do MySQL quando estiver pronto, sem alterações visíveis ao usuário.

O melhor de tudo: ainda colocar seu aplicativo atrás do proxy imediatamente (mesmo que os proxies sejam realmente os mesmos servidores) exporá muitos bugs em seus aplicativos da Web (suposições sobre nomes de host e caminhos na criação de links e c) cedo!

    
por 18.01.2010 / 16:47
0

link

acima do link ajuda você a configurar o Linux HA

    
por 18.01.2010 / 16:25