Eu tenho o seguinte problema ao tentar implementar um cluster de failover de dois nós, usando o Hetzner como provedor de hospedagem.
meu corosync.conf é o seguinte:
# Please read the corosync.conf.5 manual page
compatibility: whitetank
totem {
version: 2
secauth: off
interface {
member {
memberaddr: 144.76.91.XXX
}
member {
memberaddr: 5.9.121.XXX
}
ringnumber: 0
bindnetaddr: 5.9.121.0
mcastport: 5405
ttl: 1
}
transport: udpu
}
logging {
fileline: off
to_logfile: yes
to_syslog: yes
debug: on
logfile: /var/log/cluster/corosync.log
debug: off
timestamp: on
logger_subsys {
subsys: AMF
debug: off
}
}
o problema é que 5.9.121.XXX se liga corretamente (e aparece sob crm_mon para fazer parte do cluster)
udp 0 0 5.9.121.XXX:5405 0.0.0.0:* 8281 / corosync
mas 144.76.91.XXX falha e se liga ao localhost em seu lugar.
udp 0 0 127.0.0.1:5405 0.0.0.0:* 7889 / corosync
A análise dos logs do tcpdump indica que 144.76.91.XXX responde a 5.9.121.XXX com um tipo 3 de ICMP (destination inacessível), código 3 (porta inacessível).
corosync -f a saída será impressa repetidamente:
Jun 24 12:53:28 corosync [TOTEM] O Totem não pode formar um cluster devido a um sistema operacional ou falha de rede. A causa mais comum dessa mensagem é que o firewall local está configurado incorretamente.
O tráfego UDP é ativado entre os 2 hosts, não há firewalls no lugar e estou usando o Debian (portanto, não há SELinux).
Alguma idéia para um trabalho entre esta questão? É possível criar um cluster com duas máquinas em diferentes sub-redes ou eu preciso solicitar servidores dentro da mesma sub-rede?
Agradecemos antecipadamente por qualquer resposta.