O corosync 1.4 suporta IPs públicos?

1

Estou criando um cluster baseado em nuvem; por enquanto, estou usando o uni cast para conectar-me a outros nós do pacemaker / corosync. Consegui criar um cluster usando IPs privados. Para criar um cluster de região cruzada, queria usar o IP público. Eu tentei usar uma configuração genérica, dando IP público para memberaddr e IP público do nó para bindnetaddr. Algo parecido com isto

  interface {

           member {
             memberaddr: <public ip 1>
           }
           member {
              memberaddr: <public ip 2>
           }
           member {
              memberaddr: <public ip 3>
           }
           ringnumber: 0
           bindnetaddr: <current nodes public Ip>
           mcastport: 5405
           ttl: 1
  }
  transport: udpu

Isso não está funcionando. Estou fazendo algo errado ? todas as referências que eu poderia encontrar são para o corosync 2.x

Obrigado

    
por nwarriorch 12.10.2016 / 02:02

2 respostas

0

Eu quase me esqueci disso, se alguém está tentando fazer com que o corosync 1.4 trabalhe na nuvem com IPs públicos. O Corosync se conecta às interfaces de acordo com o endereço encadeado que você forneceu e gera um endereço vinculado que seria o endereço da sua interface.

Pelo que entendi, ele está transmitindo esse IP para todos os nós que, por sua vez, respondem a esse endereço em vez de ao endereço de onde recebeu o pacote.

por isso, se o seu IP público não estiver na caixa como está em algumas nuvens, talvez não seja possível usar o Corosync como está no ip público

    
por 21.10.2016 / 23:18
0

Se a configuração do Corosync funcionou para sua rede privada, ela também deve funcionar para sua rede pública. Gostaria de verificar se existem regras de firewall que permitem que as portas UDP 5404 e 5405 se comuniquem entre nós.

Além disso, bindnetaddr não é necessariamente um endereço IP; está procurando por um endereço de rede. Apenas certifique-se de estar usando o endereço de rede correto para sua máscara de rede.

Na página do manual do Corosync.conf:

bindnetaddr
          This specifies the network address the corosync executive should
          bind to.

          bindnetaddr should be an IP address configured on the system, or
          a network address.

          For example, if the local interface is 192.168.5.92 with netmask
          255.255.255.0, you should set  bindnetaddr  to  192.168.5.92  or
          192.168.5.0.   If  the local interface is 192.168.5.92 with net‐
          mask  255.255.255.192,  set  bindnetaddr  to   192.168.5.92   or
          192.168.5.64, and so forth.

          This  may also be an IPV6 address, in which case IPV6 networking
          will be used.  In this case, the exact address must be specified
          and  there  is  no  automatic selection of the network interface
          within a specific subnet as with IPv4.

          If IPv6 networking is used, the nodeid field in nodelist must be
          specified.
    
por 12.10.2016 / 18:51