More Related Content
Similar to mod_cluster (20)
mod_cluster
- 1. mod_cluster
Takayoshi Kimura
Senior Software Maintenance Engineer, JBoss
Global Support Service
Red Hat
- 2. mod_cluster とは
● インテリジェントロードバランサ
– バックエンドサーバからフロントエンドプロキシ
へのフィードバック機能のあるロードバランサ
– あとで詳しく
● ふつうのロードバランサ
– ラウンドロビン、ランダムロビン
– プロキシ側で見える情報のみで振り分け
● リクエスト転送数の多いものとかリクエスト転送トラ
フィック量の多いものとか
● 振り分けている HTTP 以外の情報は基本的になし
- 4. 動作要件
● フロントエンドプロキシ
– Apache HTTPD 2.2.8+
● mod_proxy と mod_proxy_ajp に依存
● バックエンド
– JBoss AS
– Tomcat
– JBoss Web
- 5. 機能
● 自動構成
– ノードの追加削除を検出し自動設定
● カスタマイズ自由なサーバサイドロードファク
タ算出
– フロントエンド ( プロキシ ) 側の情報のみで振り分
けするのではなく、振り分け先のバックエンド
サーバから情報を取得
- 6. 機能
● より細かいライフサイクルコントロール
– デプロイされている、いないといった情報もバッ
クエンドサーバから
● HTTP と AJP の両方をサポート
– リクエスト転送は mod_proxy/mod_proxy_ajp
で行う
– 基本 AJP
- 7. デモ
● JBoss AS 6.0.0.M2
– mod_cluster 1.1.0.Beta1 が同梱
● mod_cluster 1.1.0.Beta1 linux x86 bin
- 8. 自動構成 (Advertise)
● プロキシが自分の情報をマルチキャスト
(Advertise) し、バックエンドがそれを元にプ
ロキシへ情報を送信する
● マルチキャストが到達する同一ネットワーク内
のみ使用可能
– マルチキャストが利用できない、もしくは到達し
ないネットワーク構成では手動で構成する必要が
ある
- 9. 自動構成 (Advertise)
HTTP/1.0 200 OK
Date: Wed, 08 Apr 2009 12:26:32 GMT
Sequence: 16
Digest: f2d5f806a53effa6c67973d2ddcdd233
Server: 1b60092e-76f3-49fd-9f99-a51c69c89e2d
X-Manager-Address: 127.0.0.1:6666
X-Manager-Url: /bla
X-Manager-Protocol: http
X-Manager-Host: 10.33.144.3
- 10. MCMP
● Mod Cluster Management Protocol
● バックエンドからプロキシへ、ロードファクタ
やライフサイクルイベントなどの情報伝達に利
用するプロトコル
● フロントエンド側に MCMP を受けるのに利用
する VirtualHost を一つ定義して
mod_manager を有効化する
● プロトロルフォーマットは HTTP リクエストも
どき
- 12. MCMP リクエスト
● CONFIG ● STATUS
● ENABLE-APP ● INFO
● DISABLE-APP ● DUMP
● STOP-APP ● PING
● REMOVE-APP
- 13. バックエンドクラスタモード
● JBoss AS のみサポート
– ModClusterService の代わりに
HAModClusterService を有効化
● 全てのバックエンドから各フロントエンドにバ
ラバラで通信するのではなく、 1 ノードがまと
めて行う
- 14. バックエンドクラスタモード
● non-clustered
http://ordinarythoughts.org/2008/12/27/mod_cluster-nowe-spojrzenie-na-load-balancery/
- 15. バックエンドクラスタモード
● clustered
http://ordinarythoughts.org/2008/12/27/mod_cluster-nowe-spojrzenie-na-load-balancery/
- 16. ロードバランス
● SimpleLoadBalanceFactorProvider
– 固定値のロードファクタを返却
● DynamicLoadBalanceFactorProvider
– 様々なロードメトリクスからロードファクタを算
出して返却
- 17. ロードメトリクス
● AverageSystemLoadMetric
● BusyConnectorsLoadMetric
● SystemMemoryUsageLoadMetric
● HeapMemoryUsageLoadMetric
● RequestCountLoadMetric
- 18. ロードメトリクス
● ReceiveTrafficLoadMetric
● SendTrafficLoadMetric
● ActiveSessionsLoadMetric
● ConnectionPoolUsageMetric
● MBeanAttributeLoadMetric
● MBeanAttributeRatioLoadMetric
- 19. リファレンス
● http://www.jboss.org/mod_cluster/
● http://community.jboss.org/wiki/ModClust
erDesign
● http://anonsvn.jboss.org/repos/mod_clust
er/