Como implementar o escravo mestre com sobrecarga mínima? [fechadas]

1

Eu tenho 2 máquinas (a máquina linux executa meu aplicativo cpp). Sobre a aplicação: aplicação coletar pacote de NFQUEUE e registrá-los, com base em alguma lógica. A aplicação é simples aplicativo cpp que rodam em loop infinito. o aplicativo precisa suportar largura de banda de 500MbpS. As máquinas não possuem um ip. Eles não são ouvintes visíveis na rede (identifique algum log de lógica de negócios).

Eu quero ter um mestre escravo com um impacto mínimo no desempenho.

Eu quero que todos os pacotes sejam enviados para a máquina A e no caso de aplicação na máquina A pare de trabalhar (eu preciso de seu conselho sobre como é melhor sinalizar que a aplicação pare de funcionar) os pacotes devem ser roteados para a máquina B. Eu não quero conectar as duas máquinas e a solução não pode ser um único ponto de falha. Eu preciso de algo como ignorar que, se os pacotes de falha do dispositivo ainda passar por isso.

Existe alguma maneira de fazer isso no hardware ou na camada de rede inferior (dosnt quer fazer isso na camada 7).

Custo de hardware (o "switch" primário / secundário é limitado a 1500 $).

    
por Avihai Marchiano 17.07.2012 / 18:39

2 respostas

1

tem um comutador com espelhamento de porta que envia tráfego para as duas máquinas o tempo todo. ao mesmo tempo, use ucarp / keepalived / heartbeat para ativar / desativar seu aplicativo no nó ativo. você precisará de alguma forma de comunicação entre seus servidores para sinalizar quem é um nó ativo; você pode deixar fluir através de interface separada [até mesmo cabo crossover entre as duas caixas].

    
por 18.07.2012 / 09:58
1

Use keepalived .

Isso implementará um endereço IP "compartilhado". O IP só será atribuído em um único host de cada vez.

Partindo do seu exemplo, suponha que o host A tenha IP .1 e o host B tenha IP .2 . Você pode fazer o endereço compartilhado .3 . Enquanto A é mestre, ele terá .1 e .3 . Quando a máquina A morre, então .3 fará a transição para B .

    
por 17.07.2012 / 22:11