Arquitetura de alta disponibilidade para um pequeno negócio

1

Somos uma pequena startup. Em nossa configuração atual, temos um servidor dedicado em um local remoto. Nosso site e aplicativos estão hospedados nesse servidor. Website e alguns aplicativos estão em PHP e o restante são aplicativos java usando Tomcat e JBoss. Nosso servidor de banco de dados é o mysql. Nós backup de dados mysql para o nosso servidor local usando a replicação. Obviamente, a coisa pode dar errado de várias maneiras nesta configuração e eles têm. Tivemos alguns problemas graves de inatividade e outros sustos recentemente.

A nova configuração que temos em mente é a seguinte.

1) Comprando um novo servidor com a mesma configuração que o atual. Configurando isso semelhante ao servidor atual com todos os aplicativos e softwares

2) Fazendo backup ativo para o novo servidor usando o BackupPC. (sincronizando apenas os arquivos que estão sempre mudando, como sites, apps php, jboss e tomcat)

3) Executando um escravo mysql no novo servidor com replicação semi-síncrona

4) Executando o apache / nginx / lighttpd como um proxy reverso em um servidor separado que aponta para o servidor principal.

5) Continue a executar um escravo no servidor local

Em caso de inatividade, podemos apontar o proxy reverso para o servidor secundário. Não queremos fazer o failover automático, porque precisamos garantir que o servidor secundário esteja totalmente sincronizado antes de apontá-lo.

Quais são os prós e contras da abordagem acima? Ou como isso pode ser melhorado? Eu entendo que o proxy reverso será um SPOF. Neste ponto, estamos procurando uma solução econômica. O proxy reverso pode ser um servidor de baixo custo com uma configuração decente?

Eu apenas coloquei isso juntos lendo vários artigos. É possível que alguns dos meus entendimentos estejam errados. Por favor, sinta-se livre para corrigi-los.

    
por Steve 08.02.2012 / 14:54

1 resposta

2

Uma solução fácil e barata que elimina o seu SPOF e a necessidade de um proxy reverso seria definir seu DNS com um valor TTL baixo (por exemplo, 60 segundos) e simplesmente alterar o endereço IP quando você quiser trocar de servidor.

Se você usa um provedor de DNS com suporte a DNS dinâmico (ou Amazon Route 53), pode até escrever um pequeno script que até automatizaria o processo para você.

    
por 09.02.2012 / 01:13