Daemon de sincronização com salvaguardas

1

Eu habilitei a opção lvs_sync_daemon_interface , mas parece que o daemon de sincronização não está funcionando

Nó ativo:

[MASTER:~]# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination
TCP 00:37  SYN_RECV    192.168.1.20:55746 192.168.1.10:80    192.168.1.15:80

nó passivo:

[BACKUP:~]# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination

Configuração:

! Configuration File for keepalived

global_defs {
    lvs_id lb1 #lb2 on backup server
}

vrrp_sync_group VG1 {
        group {
            LB1
        }
}

vrrp_instance LB1 {
    state BACKUP #BACKUP on backup server
    interface eth0
    lvs_sync_daemon_interface eth0
    virtual_router_id 50
    priority 2 #1 on backup server
    nopreempt
    advert_int 1
    smtp_alert
        authentication {
            auth_type PASS
            auth_pass $PASSWORD
    }
        virtual_ipaddress {
            192.168.1.10
        }
}

virtual_server 192.168.1.10 80
    delay_loop 5
    lb_algo wlc
    lb_kind DR
    protocol TCP
    ha_suspend
    sorry_server 127.0.0.1

        real_server 192.168.1.15 80 {
            weight 1
            inhibit_on_failure
                HTTP_GET {
                    url {
                 path /
                 status_code 200
                    }
                    connect_timeout 5
                    nb_get_retry 3
                    delay_before_retry 1
                    connect_port 80
                fwmark 80
                }
        }

        real_server 192.168.1.16 80 {
            weight 1
            inhibit_on_failure
                HTTP_GET {
                    url {
                         path /
                         status_code 200
                        }
                    connect_timeout 5
                    nb_get_retry 3
                    delay_before_retry 1
                    connect_port 80
                fwmark 80
                }
        }
}

Sistema: CentOS 6.5, Keepalived v1.2.7 (02 / 21,2013)

Atualização: Sáb 5 de julho 08:44:36 BST 2014:

[MASTER]# ps -elf | grep [i]pvs
1 S root     11207     2  0  80   0 -     0 sync_t 08:41 ?        00:00:00 [ipvs_syncmaster]

[BACKUP]# ps -elf | grep [i]pvs
1 S root      6231     2  0  80   0 -     0 sync_t 08:41 ?        00:00:00 [ipvs_syncbackup]
    
por HTF 30.06.2014 / 10:14

1 resposta

1

Já passou algum tempo desde que eu joguei com lvs e sync, mas eu comecei a solucionar problemas sem usar keepalive para iniciantes e apenas trabalhar com o próprio ipvs.

Na documentação do lvs :

No balanceador de carga principal, execute

primary_director:# ipvsadm --start-daemon=master --mcast-interface=eth0

Nos balanceadores de carga de backup, execute

backup_director:# ipvsadm --start-daemon=backup --mcast-interface=eth0

Para parar o daemon, execute

director:# ipvsadm --stop-daemon

Observe que o principal fala com o backup por multicast. Você precisará garantir que esse tráfego possa fluir do principal para o backup. Tente permitir multicast via iptables filtragem no backup para testar para iniciantes.

Configure e veja se você obtém alguma saída do comando ipvsadm -Lnc no backup.

Além disso, observe que não há nenhum processo de ipvs em si. Pense no ipvs como uma interface de kernel gerenciada pelo programa userspace ipvsadm .

Você também deve verificar se o mestre e o backup estão configurados com o mesmo syncid. Isso é especificado com a opção --syncid para os comandos ipvsadm acima. Se estes forem definidos de maneira diferente, o backup ignorará tudo o que receber do mestre.

    
por 08.07.2014 / 09:00