Назад | Перейти на главную страницу

предложения синхронизации соединения с HAproxy и keepalived

Мне удалось заставить HAproxy работать в конфигурации аварийного переключения, как это было предложено в architecture.txt документ с использованием keepalived.

Я использовал CentOS 5.5, HAproxy rpm (haproxy-1.3.25-1.el5) из репозитория epel и keepalived rpm (keepalived-1.1.15-0.el5.centos) из репозитория для тестирования CentOS.

Это моя конфигурация keepalived

vrrp_script chk_haproxy {           # Requires keepalived-1.1.13
    script "killall -0 haproxy"     # cheaper than pidof
    interval 2                      # check every 2 seconds
    weight 2                        # add 2 points of prio if OK
}

vrrp_instance VI_1 {
    interface eth0
    state MASTER
    virtual_router_id 51
    priority 101                    # 101 on master, 100 on backup
    virtual_ipaddress {
    10.0.0.30            
    10.0.0.31            
    }
    track_script {
        chk_haproxy
    }
}

Теперь я бы хотел, чтобы мой резервный узел мог принимать на себя фактические соединения, открытые при выходе из строя мастера.

Я слышал, что это можно сделать несколькими способами (conntrackd), используя функции LVS и т. Д. Я хотел бы получить предложения по простейшему и более надежному способу достижения этого, лучше всего использовать доступные rpms.

Спасибо G

lvs_sync_daemon_inteface опция позволяет МАСТЕРУ сохранять состояние соединения и синхронизировать его с РЕЗЕРВНЫМ КОПИЕМ. Попробуй это:

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    lvs_sync_daemon_interface eth0
    virtual_router_id 51
    priority 101                    # 101 on master, 100 on backup
    virtual_ipaddress {
    10.0.0.30            
    10.0.0.31            
    }
    track_script {
        chk_haproxy
    }
}