Não tenho certeza se isso ajuda no seu cenário, mas o DRBD trabalha com volumes primários duplos se você usar um sistema de arquivos de cluster como o GFS2 ou algo parecido.
Estou prestes a configurar um failover para o nosso serviço Kannel usando hardbeat e DRBD. Uma máquina é a principal, quando essa morre / desce, muda para o secundário.
Kannel está usando um diretório de spool para arquivos temporários (track / DLR). Para não perder dados de rastreamento quando o servidor principal fica inativo, os dados estão sendo sincronizados pelo DRBD. Mas com o DRBD, não é possível montar a partição sincronizada em ambos os servidores ao mesmo tempo. Portanto, eu preciso criar um script up / down que (des) monta partições, (re) inicia o Kannel etc para fazer o kannel funcionar no caso de um switch. Isso é possível, mas também um risco potencial ao trocar de servidor primário (o início e a parada do Kannel podem levar algum tempo às vezes).
Uma vez que configurei a instalação descrita acima, o sistema está lidando com muito tráfego e carga de SMS, e é difícil alterá-lo posteriormente. Então, estou investigando outras opções para conseguir o mesmo, a fim de tomar uma decisão estável e sustentável.
Alguém tem alguma opção alternativa?
Obrigado
PS. Eu sei que é possível para o Kannel salvar esses dados de rastreamento / dlr em um banco de dados, mas não podemos usá-los porque também estamos usando outros kannel / processos que não têm isso recurso de banco de dados.
Não tenho certeza se isso ajuda no seu cenário, mas o DRBD trabalha com volumes primários duplos se você usar um sistema de arquivos de cluster como o GFS2 ou algo parecido.
Você terá que engolir e esperar que o Kannel seja desligado durante a migração. Não há nenhuma maneira confiável de saber quando é seguro iniciar o Kannel no outro nó antes de ser desligado no nó de saída - então não há nenhum ponto de virar o DRBD antes do desligamento do Kannel de qualquer maneira (eo tempo para mudar de secundário para primário no DRBD é milissegundos).