KeepLived + nginxの高可用性

環境準備

1. VMware;
2. 4台CentOs7虚拟主机:192.168.122.217, 192.168.122.165 3. 系统服务:LVS, Keepalived 4. Web服务器:nginx

ソフトウェアのインストール

        次のように2台の仮想マシンでは、我々は、クラスタを構築します:

192.168.122.217 nginxの-1 + keepalivedの-1
192.168.122.165 nginxの-2 + keepalivedの-2

两台机器安装keeplived和nginx
yumを  インストール -y keepalivedのnginxの

次に、我々はサービスKEEPLIVEを設定します

192.168.122.217の設定

 > /etc/keepalived/keepalived.conf << EOF
設定ファイルのためのkeepalivedの
global_defsは{ 
   ROUTER_ID 192.168122.217 
} 
vrrp_script chk_nginx { 
    スクリプト" /etc/keepalived/check_nginx.sh " 
    間隔2 
    重量 - 20 
} 
VI_1 {vrrp_instance 
    状態マスター
    インターフェースeth0 
    virtual_router_id 251 
    優先順位100 
    advert_int 1 
    mcast_src_ip 192.168122.217
    nopreempt 
    認証{ 
        AUTH_TYPEパス
        auth_pass 11111111 
    } 
    track_script { 
         chk_nginx 
    } 
    virtual_ipaddress { 
        192.168122.50 
    } 
} 
EOF 

## 192.168122.217为节点IP、192.168122 0.50 VIP

192.168.122.165の設定

 > /etc/keepalived/keepalived.conf << EOF
設定ファイルのためのkeepalivedの
global_defsは{ 
   ROUTER_ID 192.168122.165 
} 
vrrp_script chk_nginx { 
    スクリプト" /etc/keepalived/check_nginx.sh " 
    間隔2 
    重量 - 20 
} 
VI_1 {vrrp_instance 
    状態マスター
    インターフェースeth0 
    virtual_router_id 251 
    優先順位100 
    advert_int 1 
    mcast_src_ip 192.168122.165
    nopreempt 
    認証{ 
        AUTH_TYPEパス
        auth_pass 11111111 
    } 
    track_script { 
         chk_nginx 
    } 
    virtual_ipaddress { 
        192.168122.50 
    } 
} 
EOF 

## 192.168122.165为节点IP、192.168122.50 VIP

ヘルスチェックスクリプト、プット/etc/keepalived/check_nginx.shを作成し、2台のマシンが置かれるべき

[ルート@ fefgegregeオプト]#の猫の check_nginx。SHの 
        PORT_PROCESS = ` psの補助| grep -v grepの | grepの nginxの| トイレ - 'L'
         であれば [$ PORT_PROCESS -eq 0 ]; その後、
                エコー nginxのは、エンドを使用していません。
                の出口1 
        Fiの
        エコー nginxのカントのBe空のチェックを!

二つのマシンが起動keeplived

[ルート@ gergergrehre]#systemctlのは有効- 今keepalivedの
から作成されたシンボリックリンク /etc/systemd/system/multi-user.target.wants/keepalived.serviceを/ usr / libに/にsystemd /システム/ keepalived.serviceを。

スタートのping 192.168.122.50(VIP)の完了後

 
[ルート@ hdththt〜]#のpingを 192.168122.50 
PING 192.168122.50192.168122.505684 )データのバイト。
64からバイト192.168122.50:icmp_seq = 1個の TTL = 64  時間 = 1.37 MS
 64からバイト192.168122.50:icmp_seq = 2 TTL = 64  時間 = 0.515 64からバイト192.168122.50:icmp_seq = 3 TTL = 64  時間 = 0.594 64からバイト192.168122.50:icmp_seq = 4 TTL = 64  時間 = 0.831 ミリ秒
 ^ C
 --- 192.168122.50  のping統計---
 4つのパケットは、送信された4は、受信した0%のパケット損失時間3001ms 
RTT分 /平均/最大/ MDEV = 0.515 / 0.829 / 1.376 /0.336 のMS 

#そうでない場合は、その理由を確認してください。PS -ef | grepの成功の開始のためのキープチェック
#は、再起動するには、次のコマンドを実行し、正常に起動しません。VIPは確かに合格正常に起動
systemctlはkeepalivedのを開始します

おすすめ

転載: www.cnblogs.com/jiangwenhui/p/12034633.html