|
|
 |
 |
データベース・サーバのクラスタ構築では“定番”のクラスタウェアであるHP Serviceguard。しかし、アプリケーション・サーバ(APサーバ)のクラスタ構築においても、HP Serviceguardが優れた能力を発揮できることをご存じだろうか。今回は、「HP ServiceguardをAPサーバと組み合わせると、どのような利点があるのか?」、「APサーバのクラスタ機能とHP Serviceguardはどのように連携させればよいのか?」といった疑問に答えるべく、日本HPと日本オラクルの共同センター「ミッション・クリティカル・サーティファイド・センター(MC3) 」で実施された共同検証の成果をレポートする。
|
|
 |
 |
 |
 |
| Oracle AS+HP Serviceguardでつくる盤石のAPサーバ・前編 |
|
 |
 |
 |
 |
| 2007年12月 |
| テクニカルライター 吉川和巳 |
|
 |
日本HPと日本オラクルの共同検証センター「ミッション・クリティカル・サーティファイド・センター(MC3)」では、Oracle Application Server 10g (以下、Oracle AS)およびHP Serviceguardの組み合わせにより構築したアプリケーション・サーバ(以下、APサーバ)の可用性についての検証を実施した。その結果を紹介する前に、まずはOracle ASに備わる高可用性のアーキテクチャについて説明したのち、それらとHP Serviceguardがどのように連携するのかを解説したい。なお、本特集で説明する検証結果は、MC3のWebサイト にて詳細が公開されているので、そちらも併せて参照していただきたい。
Oracle ASは、その名が示すとおり、オラクルが開発したJava EE対応アプリケーション・サーバ製品である。JDK 5をはじめ、EJB 3.0、JSF 1.1といった最近のJava EE APIをサポートする“いまどき”のAPサーバだ。しかしその最大の特徴は、Oracle RAC との密接な連携による高可用性にある。その動作メカニズムを理解するために、まずはOracle ASの内部構成を見ていこう。
 |
 |
| 図1:Oracle ASの内部構成 |
この図が示すとおり、Oracle ASはHTTPサーバとAPサーバを統合した製品だ。以下にその主要なコンポーネントを示す。
 |
- Oracle HTTP Server(OHS)とmod_oc4j
- Oracle Container for J2EE(OC4J)
- Oracle Process Management and Notification Server(OPMN)
|
 |
Oracle ASのHTTPサーバ機能をつかさどるOHSの実体は、Apache Webサーバにほかならない。では通常のApache Webサーバとは何が異なるかというと、mod_oc4jと呼ばれる特別なモジュールを組み込んでいる点だ。同モジュールは、OHSが受け取ったHTTPリクエストをJava EEコンテナであるOC4Jに転送する。その際mod_oc4jは、クラスタ上の各OC4Jの負荷状態や死活状態に基づいて、HTTPサーバとAPサーバ間の負荷分散とフェイルオーバーを実現する。
一方のOC4Jは、Oracle ASのAPサーバ機能を提供するJava EEコンテナであり、JSPやサーブレット、EJBコンポーネントなどに対する実行環境を提供する。また、HttpSessionやステートフルSessionBeanがメモリ上に保持するセッション情報について、クラスタ上のほかのOC4Jインスタンスとの間でレプリケーションを実施する。これにより、いずれか1つのOC4Jがダウンした場合でも、OHSのmod_oc4jが引き継ぎ先のOC4Jへリクエストを転送することで、ユーザとのセッションを継続できる仕組みである。
では、mod_oc4jはどのようにして「OC4Jのダウン」や「引き継ぎ先のOC4J」を知ることができるのだろうか。その役割を担うのが、図1においてOPMNと記されたコンポーネントである。OPMNは、OHSやOC4Jのプロセスの稼働状況を監視しており、プロセス障害が発生した場合にはクラスタ上のほかのOHSやOC4Jに通知する。その際に実行されるフェイルオーバーやプロセス再起動の処理は、ユーザから透過的に処理されることになる。
 |
 |
| 図2:OPMNによる障害通知 |
つまり、このOPMNが“簡易クラスタウェア”としてOracle ASクラスタの死活管理を統括している仕組みである。 |
 |
 |
 |
| 図3:Oracle AS 10gに備わる高可用性機能 |
このように、Oracle ASがほかのAPサーバ製品とひと味違う点は、ミッション・クリティカル環境での利用を想定した高度な高可用性機能を備えているところだ。図3に示すように、Oracle ASでは、Webサーバ、APサーバ、そしてDBサーバの各層にてクラスタを構成でき、優れた可用性とスケーラビリティを実現する。
つづく後半では、Oracle ASのもうひとつの特徴であるFast Connection Failover(FCF)のメカニズムを説明する。
|
| 本ページの内容は執筆時の情報に基づいており、異なる場合があります。 |
|