LVS + keepalivedの提供のCentOSの7.x

 

[実験環境]

  • CentOSの7.2
  • nginxの 

以下は、テストで使用されるアドレスです。

  • VIP:192.168.136.100
  • LVS-1:192.168.136.170
  • LVS-2:192.168.136.166

[インストール]

両方のノードにインストールされ、LVS、keepalivedの(予め既にインストールnginxの)

yumをインストールipvsadmのkeepalivedの-y

設定する設定スクリプト

Vimのipvsadm.sh

#!/ binに/ bashのの

VIP = 192168136100 
のifconfig LO:0 $ VIP放送$のVIPのネットマスク255255255255 までの
ルートが追加 -host $のVIP用のdevのLOを:0 
エコー" 1 " >は、/ proc / sys / net / IPv4の/ confに/ LO / arp_ignore 
エコー" 2 " >は、/ proc / sys / net / IPv4の/ confに/ LO / arp_announceを
エコー" 1 " >は、/ proc / sys / net / IPv4の/ confに/すべて/ arp_ignore 
エコー2" >は、/ proc / sys / net / IPv4の/ confに/すべて/ arp_announce 
のsysctl -p>を/ dev / null 2 >&1

スクリプトの実行(2つのLVSホスト上でスクリプトを実行)

SH ipvsadm.sh

成功したかどうかを確認します

[ルート@ localhostの/]#のIP
 1LO: <ループバック、UP、LOWER_UP> MTU 65536なqdisc NOQUEUE状態UNKNOWN QLEN 1 
    リンク/ループバック000000000000 BRD 000000000000 
    INET 127001 / 8 スコープホストloが
       永遠に永遠にpreferred_lft valid_lft INET
   192.168.136.100/32 BRD 192.168.136.100の範囲グローバルLO:0 
       valid_lft永遠preferred_lft永遠
    :: inet6の1 / 128個の範囲のホストは
       preferred_lft永遠に永遠にvalid_lft

[設定] keepalivedの

マスターノード(マスター)、ファイルの内容を空

Vimの /etc/keepalived/keepalived.conf  

global_defs { 
  ROUTER_ID LVS_DEVEL 
} 
VI_1 {vrrp_instance 
    状態マスター
    ens33インタフェース
    virtual_router_id 51 
    プライオリティ100 
    advert_int 1つの
    認証{ 
        AUTH_TYPEパス
        auth_pass 1111 
    } 
    virtual_ipaddress { 
        192.168136.100 
    } 
} 

VIRTUAL_SERVER 192.168136.100  80 { 
    delay_loop 6 
    lb_algoのRR 
    lb_kind DRは
    persistence_timeout 0を
    プロトコルTCP 

    real_server 192.168136.170  80 { 
        体重1 
        TCP_CHECK { 
            CONNECT_TIMEOUT 10 
            nb_get_retry 3 
            delay_before_retry 3 
            connect_port 80 
        } 
    } 

    real_server 192.168136.166  80 { 
        体重1 
        TCP_CHECK { 
            CONNECT_TIMEOUT 10 
            nb_get_retry 3 
            delay_before_retry 3
            connect_port 80 
        } 
    } 
}

ノード(バックアップ)からは、ファイルの内容を空にする

Vimの /etc/keepalived/keepalived.conf  

global_defs { 
  ROUTER_ID LVS_DEVEL 
} 
VI_1 {vrrp_instance 
    状態バックアップ
    ens33インタフェース
    virtual_router_id 51 
    優先99 
    advert_int 1つの
    認証{ 
        AUTH_TYPEパス
        auth_pass 1111 
    } 
    virtual_ipaddress { 
        192.168136.100 
    } 
} 

VIRTUAL_SERVER 192.168136.100  80 { 
    delay_loop 6 
    lb_algoのRR 
    lb_kind DRは
    persistence_timeout 0を
    プロトコルTCP 

    real_server 192.168136.170  80 { 
        体重1 
        TCP_CHECK { 
            CONNECT_TIMEOUT 10 
            nb_get_retry 3 
            delay_before_retry 3 
            connect_port 80 
        } 
    } 

    real_server 192.168136.166  80 { 
        体重1 
        TCP_CHECK { 
            CONNECT_TIMEOUT 10 
            nb_get_retry 3 
            delay_before_retry 3
            connect_port 80 
        } 
    } 
}

マスターノードとスレーブノードとの間の差

マスターノード:マスター
スレーブノード:BACKUP 
状態MASTER - > 状態BACKUPの

ノードの優先順位:100 
ノードの優先順位から:99 
優先順位100 - >優先90 

さらに:インタフェースens33なお、前記ens33インタフェース名、その後、ここでホストに合わせて変更

オープンルートの転送

使い捨てオープン:
 エコー " 1 " >は、/ proc / sys / net / IPv4の/ ip_forward 

:永久にオープン
VIMの/ etc / sysctl.confのの
#が追加
net.ipv4.ip_forward = 1つ
の出口の保存

を有効にする#設定を
sysctlを -p

(マスタから順に、第一の開口部の後に)開始keepalivedの

keepalived.serviceを開始systemctl

成功を開くかどうかを確認してください

[ルート@ localhostの/]#のipvsadmの- LN 
IP仮想サーバーのバージョン1.21(サイズ= 4096 
ProtのをlocalAddress:ポートスケジューラ旗
   - > [リモート:ポートフォワード重ActiveConn InActConn 
TCP   192.168136.10080 RR
   - > 192.168136.16680            国道    1       0           0          
  - > 192.168136.17080            ルート    1       0           0      

成功した場合には成功したアクセス試行が自動的に別のサーバーにアクセスしたかどうかを確認するために切り替わります、駅を切断する場合は、ブラウザを開いて、表示するVIPアドレスを入力してください。

 

おすすめ

転載: www.cnblogs.com/willamwang/p/11364972.html