1 / 23

手軽に作る高可用 Linux サーバ ~自宅でも楽々クラスタリング ver.α1 ~

手軽に作る高可用 Linux サーバ ~自宅でも楽々クラスタリング ver.α1 ~. 2009/10/19 NeGi の中の人. 目的. 手間(お金)をかけずに Linux をクラスタ化 してみる。 Heartbeat とか keepalived とか良く わからない人向け Active-Standby は MOTTAINAI!! という人向け. 材料. CentOS5.3(x86-64) 3 台 @Hyper-V 物理的にあると邪魔なので、仮想化で。 VRRP やってくれる中の人 (vrrpd) 負荷分散やってくれる中の人 (HAProxy).

Download Presentation

手軽に作る高可用 Linux サーバ ~自宅でも楽々クラスタリング ver.α1 ~

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 手軽に作る高可用Linuxサーバ~自宅でも楽々クラスタリング ver.α1~ 2009/10/19 NeGiの中の人

  2. 目的 • 手間(お金)をかけずにLinuxをクラスタ化してみる。 • Heartbeatとかkeepalivedとか良くわからない人向け • Active-StandbyはMOTTAINAI!!という人向け

  3. 材料 • CentOS5.3(x86-64) 3台@Hyper-V物理的にあると邪魔なので、仮想化で。 • VRRPやってくれる中の人(vrrpd) • 負荷分散やってくれる中の人(HAProxy)

  4. Linux(CentOS)な理由 • Solarisでvrrpdのビルドが通らないから・・・ • デストリで一番触っているのがRHEL(CentOS)だから。 • Hyper-Vは一応2008R2のやつです。

  5. VRRPでの冗長化(利点) • 設定が簡単やることは、VIP・VRIDを決めてプライオリティをどう付けるかだけ。(認証もありますけど、今回はスルー) • 入手も簡単既にvrrpdというソフトウェアがある。http://sourceforge.net/projects/vrrpd/

  6. VRRPでの冗長化(欠点) • 冗長化されるのはL3までvrrpdはL4~7の動きを見て代表ルータを変更してくれない。 • 代表ルータで受け取られたパケットは代表ルータでしか処理されない。負荷分散がされない・・・待機系のリソースがMOTTAINAI!!※代表ルータ=vrrpd実行中のLinuxサーバ

  7. 負荷分散されない・・・ 201 NW-Application × c-node1 101 NW-Application × c-node2 1 NW-Application End-User c-node3 VRRP

  8. HAProxyの紹介 • HAProxyって何?死活/条件分岐対応のロードバランサーらしい・・・ • 何処で手に入るの?Internetに転がっています。(GPL v2)http://haproxy.1wt.eu/

  9. HAProxyの機能 Port8081 Port80 HAProxy Port8082 1. 任意のサーバとポートに バランシング可能!! 自サーバにループバックしてもいい。 2. バランシング先が障害があると・・・ バランシングのリストから除外!! 3. 状態監視のWeb画面まで至れり尽くせり。 Port8081 Port8082 Port8081 Port8082

  10. VRRPとの相性が良い理由 • 代表ルータに届いたパケットを、自身以外のサーバに分散できます。 • よってどの代表ルータに届いても、クラスタを構成する全サーバへ均等に処理が振られます。

  11. HAProxyを使うと・・・ 201 NW-Application HAProxy c-node1 101 NW-Application HAProxy c-node2 1 NW-Application HAProxy End-User c-node3 VRRP

  12. 全ノードが正常状態 /etc/haproxy.cfg listen stats bind :8888 stats uri / http://c-node1.example.jp:8888/

  13. c-node2が落ちたら? 201 NW-Application HAProxy × c-node1 101 NW-Application HAProxy c-node2 1 NW-Application HAProxy End-User c-node3 VRRP

  14. c-node2で異常を検知 黄色はWARNです。 異常はあるが、再確認中です。 http://c-node1.example.jp:8888/

  15. c-node2をリストから切り離し 赤色になるとCRITです。 負荷分散の対象候補から外れます。 http://c-node1.example.jp:8888/

  16. c-node1が落ちたら? × 201 NW-Application HAProxy c-node1 101 NW-Application HAProxy c-node2 1 NW-Application HAProxy End-User c-node3 VRRP

  17. c-node1をリストから切り離し 代表ルータ(VRRP)はc-node2に。 c-node2/3の負荷分散で継続します。 http://c-node2.example.jp:8888/ ↑c-node1のWebは見えないので・・・

  18. NWアプリだけが落ちたら? × 201 NW-Application HAProxy NW-Application × c-node1 101 NW-Application HAProxy NW-Application c-node2 1 NW-Application × HAProxy End-User NW-Application c-node3 VRRP

  19. 残っているサービスで継続 http://c-node1.example.jp:8888/

  20. HAProxyのリカバリ動作 • 気にする必要は無い。サーバやサービスが稼動すれば勝手に戻してくれます。 • 待機側のHAProxyも死活監視している。つまり代表ルータ(VRRP)さえ変われば残っているサービスポート/サーバは決まっている。

  21. 留意/注意事項 • HAProxyの状態情報はHAProxy間で共有されません。HAProxyはグループやドメインとしては動きません。スタンドアロンです。 • HAProxy同士という概念が無いので、HAProxyはフェイルオーバ出来ません。

  22. まとめ1 • L3はvrrpdに任せればOK • L4~7はHAProxyでどうでしょう?(HTTP位しか試してませんが・・・ • HAProxyはクラスタのキモNagiosとかでしっかり監視を!!

  23. まとめ2 • L2以下はbondingしておいた方が良さそう。vrrpdが短期のUP/DOWNに弱い? • HAProxyはIPv6も対応しているらしい。誰か頑張ってください・・・ • HAProxyのDocumentの和訳も誰か頑張って欲しいなぁ・・・

More Related