LVSとかkeepalivedとか
用語の整理
- LVS
- これはなに?
- Linux Virtual Serverの略称で、負荷分散装置に求められる基本的な機能を提供する。
- 構成要素
- IPVS(IP Virtual Server)
- 負荷分散機能を提供する
- ipvsadmユーティリティ
- LVSのほとんど全ての設定をipvsadmコマンドで行う
- IPVS(IP Virtual Server)
- 使い方
- LVSでは、実サーバのサービス提供状態を把握することはできない。
- そのため、keepalivedなどと組み合わせて実サーバのサービス監視を行う。
- リンク
- これはなに?
- keepalived
- これはなに?
- ロードバランサ機能を提供するミドルウェア。
- 仕組み
- リンク
- これはなに?
- VRRP
- Virtual Router Redundancy Protocolの略。
- デフォルトゲートウェイなどを冗長化するためのRFC3768で標準化されたプロトコル。
- デフォルトゲートウェイとなる Layer3 デバイスにIPアドレスとMACアドレスを共有させることができるので、PCなどの「デフォルトゲートウェイのパスを冗長化」させることができる。
- 物理的には2台あるルータが論理的(仮想的)には、1台のルータに見せられる。
コマンドメモ
# 確認 # TCP接続の状態がESTABLISHEDになったらActiveConnを増やし、 # その他の状態になったらInActConnを増やしています。 sudo ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.1:80 rr # 外向きのIP -> 192.168.0.10:80 Route 1 0 0 -> 192.168.0.11:80 Route 1 0 0 TCP 10.0.0.1:443 rr # 外向きのIP -> 192.168.0.10:443 Route 1 0 0 -> 192.168.0.11:443 Route 1 0 0 # 192.168.0.12 を足す # -a は addモード # -t は受け口 # -r は転送先 # -m オプションを付けるとForward=Masq(NAT接続)になる。 sudo ipvsadm -a -t 10.0.0.1:80 -r 192.168.0.11:80 ; sudo ipvsadm -e -t 10.0.0.1:443 -r 192.168.0.12:443 # 192.168.0.10のweightを0にする # -e は editモード # -w は重み付け sudo ipvsadm -e -t 10.0.0.1:80 -r 192.168.0.10:80 -w 0; sudo ipvsadm -e -t 10.0.0.1:443 -r 192.168.0.10:443 -w 0