第2回 クラウドサーバ勉強会に参加してきた
第2回クラウドサーバ勉強会に参加してきました。
今回はXOOPS初心者勉強会の横でやってたのですがほとんどの時間関係ないことやってたのであまり出来ませんでしたorz
そんな訳であまり時間かけずにできそうだったLVSの設定をちょこっとだけやってみた位ですが一応ログ残しておきます。
サーバ
今回はLVSを1台とwebを2台さくらのクラウドで用意しました。
その際にスイッチネットワークを1つ作成し、LVSのeth1とwebのeth0をそのネットワークに当てています。
ルーターの設定
今回はグローバルIP勿体無い気がしたのでNATでやってみたのでグローバルIPを持っているLVSからローカルIPしかないwebサーバが外部につながるようにします。
とりあえずシンプルに、iptablesの設定クリアしてから他のネットワーク内のサーバが外部に接続できるようにします。
iptables -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
これでデフォルトゲートウェイをLVSにしたwebサーバでdigとか実行すると結果が返ってきてネットにちゃんと繋がってるのがわかると思います。
今回LVSのローカルIPが192.168.1.11なのでwebサーバのgatewayをLVSに設定します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
これでwebサーバがLVSを通してネットに繋がるようになっていると思います。
LVSの設定
LVSにipvsadmを入れて設定します。まず、分散させるIP:portを登録し、分散対象のサーバを追加していきます。
-s rrでラウンドロビンに設定し、-mでNATにしています。なので、この2つのパラメータを変更すれば他の方法で分散することができるようになります。
ipvsadm -A -t {LVS_IP}:80 -s rr
ipvsadm -a -t {LVS_IP}:80 -r 192.168.1.51:80 -m
ipvsadm -a -t {LVS_IP}:80 -r 192.168.1.52:80 -m
ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 133.242.52.61:80 rr
-> 192.168.1.51:80 Masq 1 1 1
-> 192.168.1.52:80 Masq 1 2 1
これでブラウザから133.242.52.61にアクセスするとweb1とweb2に振り分けられていることが確認できます。
終わり
今回このくらいしかできなかったので結構テキトーです。
本当はもう1台LVSを用意してLVSが片方落ちても大丈夫にしてみたりとかしたかったのですが……