Criamos uma rede social de interesse especial e precisamos configurar agora a configuração adequada do servidor para os servidores de webapp.
Temos para o servidor físico webapp 5 disponível (2xE5645 CPU, 24 GB RAM, RAID, 4x Gbit NIC), um dos cinco servidores precisa fornecer a API para nossos visitantes móveis (iOS , Android). Nosso webapp precisa de PHP, APC, Memcached e MySQL.
Também temos mais 4 servidores físicos internos (2xE5620, 12 GB RAM, RAID, 4x Gbit NIC):
-
Servidor de envio de cometas (servidor personalizado para o bate-papo)
-
Servidor de fila / correio (beanstalkd)
-
servidor estático (servidor web G-WAN) com 2xDAS com 12x2TB (total 40 TB no Raid 6)
-
Servidor web Apache dedicado para HTTPS (esse servidor também pode ser usado para o cluster LB se a página segura SSL for colocada no cluster LB, está melhor?).
Para começar, queremos apenas ter o servidor webapp em LB / HA, porque não temos mais servidores disponíveis no momento.
E o último é um servidor de baixo custo (X3430, 4 GB de RAM, RAID, 2x Gbit NIC) que é usado para monitorar todo o hardware.
Temos 2x comutador Gbit de 48 portas HP Procurve 2900 gerenciado.
Todos os equipamentos acima permanecem no nosso Rack em um centro de rede.
Nós usamos o RHEL 6 em todos os servidores.
Eu tenho muitas ideias, mas não sei ao certo qual será o melhor caminho.
Minha direção é a maneira de instalar o servidor web HA Proxy e Apache em duas caixas, ter em duas caixas o MySQL DB Server e em um tanto o Apache quanto o MySQL para o API / Webservice.
Para usar um dos switch para a rede privada, onde todo o servidor será conectado e usado para comunicação interna (MySQL, transferência de arquivos após o upload).
É útil conectar várias portas NIC por servidor ao Comutador?
O HA Proxy é o melhor caminho para o nosso caso? Ou seria melhor usar nginx em 2 ou 3 caixas e usá-lo para balanceamento de carga e serviço PHP e ter LVS ou algo similar para a parte HA?
Estou aberto para todas as soluções e o servidor 5 + 1 pode ser usado flexível.
Obrigado por qualquer ajuda.
UPDATE:
Depois de mais pesquisas, acho que seria difícil encontrar uma solução para ter HA para todos os servidores.
Minha ideia real para a configuração é:
nginx como proxy para balanceamento de carga (usarei uma das caixas de especificações do meio)
3 Apache webserver na rede privada
2 MySQL Server Master / Slave em rede privada
Na solução acima, o Servidor Web Apache também hospedará o site SSL para pagamento, não tenho certeza se o nginx pode manipular o certificado SSL para esses servidores de back-end diferentes.
UPDATE 2:
Eu fiz mais pesquisas, Redhat oferece um Add-On para balanceamento de carga baseado em LVS.
link
Este Addon parece bem, mas eu ainda não sei qual é o caminho certo? É melhor ir com um nginx na frente ou com LVS ou algo assim? Alguém me disse que eu posso usar o HP Procurve 2900 Switch existente para balanceamento de carga simples também ...