nginxの+ keepalivedの(ダブルメイン)

まず、環境

NX1 192.168.40.211  

nginx2 192.168.40.132 

VIP1 192.168.40.223主のkeep1は、keep2からです

VIP2 192.168.40.222主のkeep2は、keep1からです

(ここでは、インストールモードにyumが採用され、疲れではありません)

二、keepalivedのプロフィール

NX1

我々は/etc/keepalived/keepalived.conf

global_defs {

    {notification_email

        ルート@ localhostを

    }

    notification_email_from keepalivedの@ localhostの

    SMTP_SERVER 127.0.0.1

    30 smtp_connect_timeout

    route_id LVS_DEVEL

}

vrrp_script_chk_nginx {

    スクリプト「/etc/keepalived/ck_ng.sh」

    区間2

    重量2

}

#1 VIP1

vrrp_instance VI_1 {

    状態MASTER

    インタフェースens33

    lvs_sync_daemon_interface ens33

    virtual_router_id 151

    優先順位100

    advert_int 5

    nopreempt

    認証{

        AUTH_TYPE PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.40.223

    }

    track_script {

        chk_nginx

    }

}

#1 VIP2

vrrp_instance VI_2 {

    状態のバックアップ

    インタフェースens33

    lvs_sync_daemon_interface ens33

    virtual_router_id 152

    優先順位90

    advert_int 5

    nopreempt

    認証{

        AUTH_TYPE PASS

        auth_pass 2222

    }

    virtual_ipaddress {

        192.168.40.222

    }

    track_script {

        chk_nginx

    }

}


 

nginx2

#vi /etc/keepalived/keepalived.conf

global_defs {

    {notification_email

        [email protected]

    }

    notification_email_from [email protected]

    SMTP_SERVER 127.0.0.1

    30 smtp_connect_timeout

    route_id LVS_DEVEL

}

vrrp_script_chk_nginx {

    スクリプト「/etc/keepalived/ck_ng.sh」

    区間2

    重量2

}

#1 VIP1

vrrp_instance VI_1 {

    状態のバックアップ

    インタフェースens33

    lvs_sync_daemon_interface ens33

    virtual_router_id 151

    優先順位90

    advert_int 5

    nopreempt

    認証{

        AUTH_TYPE PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.40.223

    }

    track_script {

        chk_nginx

    }

}

#1 VIP2

vrrp_instance VI_2 {

    状態MASTER

    インタフェースens33

    lvs_sync_daemon_interface ens33

    virtual_router_id 152

    優先順位100

    advert_int 5

    nopreempt

    認証{

        AUTH_TYPE PASS

        auth_pass 2222

    }

    virtual_ipaddress {

        192.168.40.222

    }

    track_script {

        chk_nginx

    }

}

三、nginxの検出スクリプト(2台の織機など)

#vi /etc/keepalived/ck_ng.sh

#!/ binに/ bashの

#チェックnginxのプロセスが存在します

カウンタ= $(psの-C nginxの--no-見出し|トイレ-l)

もし[ "$ {カウンタ}" = "0"]。それから

5秒間の停止、nginxのを開始しようとした後に#が再び検出されました

    サービスnginxの開始

    睡眠5

    カウンタ= $(psの-C nginxの--no-見出し|トイレ-l)

    もし[ "$ {カウンタ}" = "0"]。それから

スタートアップが成功しなかった場合は#、キープアライブトリガースイッチオーバーを殺します

        サービスkeepalivedの停止

    されます

されます

#chmod + X /etc/keepalived/ck_ng.sh

第四に、テスト

[ルートlocalhostの@〜]#1のIP A(nginx1)

....

2:ens33 <UPブロードキャスト、マルチキャスト、LOWER_UP> UP状態pfifo_fast MTU 1500なqdisc QLEN 1000年

    リンク/エーテル00:0C:29:17:C0:DB BRD FF:FF:FF:FF:FF:FF

    INET 192.168.40.211/24 BRD 192.168.40.255スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET 192.168.40.223/32スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET6 FE80 :: 20C:29ff:fe17:c0db / 64スコープリンク

       valid_lftは永遠に永遠にpreferred_lft

[ルートlocalhostの@〜]#1のIP A(nginx2)

....

2:ens33 <UPブロードキャスト、マルチキャスト、LOWER_UP> UP状態pfifo_fast MTU 1500なqdisc QLEN 1000年

    リンク/エーテル00:0C:29:5E:BA:A3 BRD FF:FF:FF:FF:FF:FF

    INET 192.168.40.132/24 BRD 192.168.40.255スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET 192.168.40.222/32スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET6 FE80 :: 20C:29ff:fe5e:baa3 / 64スコープリンク

       valid_lftは永遠に永遠にpreferred_lft

次のようにkeepalivedの停止nginx1は、この時点でnginx1は、VIPのnginx2に転送されます

[ルート@ localhostの〜]#IP A

....

2:ens33 <UPブロードキャスト、マルチキャスト、LOWER_UP> UP状態pfifo_fast MTU 1500なqdisc QLEN 1000年

    リンク/エーテル00:0C:29:5E:BA:A3 BRD FF:FF:FF:FF:FF:FF

    INET 192.168.40.132 / 24 BRD 192.168.40.255スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET 192.168.40.222 / 32スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET 192.168.40.223 / 32スコープグローバルens33

       valid_lftは永遠に永遠にpreferred_lft

    INET6 FE80 :: 20C:29ff:fe5e:baa3 / 64スコープリンク

       valid_lftは永遠に永遠にpreferred_lft

これらのマシンのいずれかに行くために、2つの仮想IPが正常でした

おすすめ

転載: www.cnblogs.com/zjz20/p/11563885.html