Estou tentando adicionar um endereço IP virtual do pacemaker; com ele, o gateway e as duas VMs que ele atende em diferentes sub-redes. Eu só fiz isso antes com todos os IPs na mesma sub-rede, e preciso de ajuda.
Eu tenho duas VMs em 200.xx.xxx.9 e 200.xx.xxx.10 com as abaixo em /etc/network/interfaces
auto eth0
iface eth0 inet static
address 200.xx.xxx.9
gateway 200.xx.xxx.9
netmask 255.255.255.255
post-up route add yy.yyy.yyy.1 dev eth0
post-up route add default gw yy.yyy.yyy.1
e
auto eth0
iface eth0 inet static
address 200.xx.xxx.10
gateway 200.xx.xxx.10
netmask 255.255.255.255
post-up route add yy.yyy.yyy.1 dev eth0
post-up route add default gw yy.yyy.yyy.1
Ambos estão aparecendo no Pacemaker e aparentemente se comunicando OK. Os parâmetros bindnetaddr nos dois arquivos /etc/corosync/corosync.conf
são:
bindnetaddr: address 200.xx.xxx.9
e
bindnetaddr: address 200.xx.xxx.10
respectivamente.
Se tudo estivesse na mesma sub-rede, esperaria adicionar o IP virtual com algo como:
sudo crm configure primitive eth0_virtual ocf:heartbeat:IPaddr params ip="200.zzz.z.162" nic="eth0" cidr_netmask="24" broadcast="200.zzz.z.255" op monitor interval="10s" timeout="20s"
e enquanto isso aparece como recurso em crm_mon, não está me permitindo acessar uma das VMs através do IP virtual. Claramente há mais, mas o que?
Editar: Após uma sugestão na lista de discussão do ClusterLabs de que isso pode ser um problema de rede subjacente, aqui é onde eu estou:
Estou hospedando o ESXi com o online.net, que fornece IPs adicionais de "failover" que podem ser atribuídos a minhas VMs hospedadas. Eu tenho três; 200.xx.xxx.9 e 200.xx.xxx.10 que estou usando para as duas VMs do Ubuntu listadas, e a terceira, 200.zzz.z.162, que estou tentando usar como um recurso ocf_heartbeat_IPaddr agente. De maneira crítica, o online.net exige que você corresponda a cada IP um endereço MAC que corresponda a uma interface em uma VM. Eu fiz isso para os dois primeiros IPs (usando diferentes MAC endereços), mas não para o terceiro. Quando tentei usar um dos endereços MAC existentes com o terceiro IP, obtive imediatamente conectividade com:
Portanto, agora, tenho todos os três IPs e as duas interfaces de VM compartilhando o mesmo endereço MAC. Isso me parece uma idéia muito ruim, mas, na verdade, parece estar funcionando, sem criar nenhum erro de pacote ou problemas com conectividade ou com o cluster de HA ... pelo menos nenhum que eu tenha visto longe, diferente do tráfego marciano sendo registrado. Esta é a configuração ocf: heartbeat: IPaddr que estou usando:
sudo crm configure primitive eth0_virtual ocf:heartbeat:IPaddr params ip="200.zzz.z.162" nic="eth0" cidr_netmask="32" broadcast="200.zzz.z.162" op monitor interval="10s" timeout="20s"