AWSでLVSをつかってロードバランシングしてみる 第2回
前回はAWSのVPC上でLVSとWebサーバを同じネットワークに設置して実験してみましたが安定しませんでした。(前回 https://qiita.com/superdry/items/83286545061354f20d17 )
構成
今回はWebサーバを10.0.2.0/24のネットワークに設置します。LVSは10.0.0.0/24のネットワークに設置しますがネットワークインタフェースを2枚にして片方は10.0.2.0/24のネットワークにつながるようにします。
WebSV1
10.0.2.0/24のサブネット側にインスタンスを作成します。
LVSのeth1のIPアドレスをデフォルトゲートウェイにします。
その他(httpdのインストールなど)は前回と同じです。
WebSV2
WebSV1と同様です。
LVS
LVSのネットワークインタフェースを2枚にする方法は
インスタンス作成時のstep3でネットワークインターフェースの欄でデバイスの追加を押下します。
eth0は10.0.0.0/24のサブネット、eth1は10.0.2.0/24のサブネットにします。
前回同様、送信元送信先チェックを外さなければなりませんがeth0はインスタンス画面のアクションから「ネットワーキング」→「送信元送信先変更チェック」で無効化できます。
しかし、eth1の方は有効化されたままですので個別にやらなければなりません。eth1のネットワークインタフェースIDをメモって置いて、ネットワークインターフェース画面でネットワークインタフェースIDで検索してアクションから「送信元送信先変更チェック」で無効化できます。(嵌ったところ)
eth1の設定ファイルであるifcfg-eth1は自動的に作成されるものだと思っていましたがそうではありませんでした。作成してあげないと機能しないので作成します。
DEVICE="eth1"
BOOTPROTO="static"
ONBOOT="yes"
BROADCAST=10.0.2.255
NETMASK=255.255.255.0
NETWORK=10.0.2.0
IPADDR=10.0.2.75
# systemctl restart network
前回同様ipvsadmをインストールします。(前回 https://qiita.com/superdry/items/83286545061354f20d17 )
ipvsadmでLVSの設定をします。
# ipvsadm -C
ipvsadm -A -t 10.0.0.162:80 -s rr
ipvsadm -a -t 10.0.0.162:80 -r 10.0.2.137:80 -m
ipvsadm -a -t 10.0.0.162:80 -r 10.0.2.107:80 -m
# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP ip-10-0-0-162.ap-northeast-1 rr
-> 10.0.2.107:http Masq 1 0 0
-> 10.0.2.137:http Masq 1 0 0
LVSのeth0に関連付けられたElasticIP(グローバルIP)を指定してwebブラウザーでアクセスしてみます。
なんとか安定しました。戻りパケットがLVSに行ったり、VPCのルータに行ったりせずに安定してLVS経由で返されていると思われます。tcpdumpは今回やってませんが。
ただし、ブラウザーをリロードしてもWeb1→Web2→Web1のように綺麗に切り替わりません。Webサーバとかブラウザーのキャッシュの設定かもしれません。でも前回のように見れなくなることはありません。
Author And Source
この問題について(AWSでLVSをつかってロードバランシングしてみる 第2回), 我々は、より多くの情報をここで見つけました https://qiita.com/superdry/items/5992f4da6148637c2359著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .