Oracle WebLogic Server 12cR2新機能詳説──第2回 Continuous Availability

Oracle Java & Developers編集部
2016-07-29 16:00:00
  • このエントリーをはてなブックマークに追加

Oracle WebLogic Server 12cR2の第二の目玉となる新機能は「Continuous Availability」だ。同機能により、システムの可用性をさらに高めることが可能となる。

WebLogic Server 12cR2による無停止運用機能の概要

 本企画では、「Oracle WebLogic Server 12c Release 2(R2)」で追加された主な新機能として、次の3つを紹介している。

  • マルチテナントへの対応
  • サービス継続性の強化(WebLogic Server Continuous Availability)
  • Java EE 7への完全準拠およびDevOps対応の拡張

 第2回となる今回は、アプリケーションの無停止運用を実現する新たなオプション機能として「WebLogic Server Continuous Availability(以下、Continuous Availability)」を取り上げる。

 Continuous Availabilityは、Oracle WebLogic Server Enterprise EditionおよびOracle WebLogic Suiteで利用可能なオプション機能であり、これには次の内容が含まれる。

  • WebLogic HA features:Oracle WebLogic Serverの可用性をさらに高めるための機能セット
  • Oracle Coherence Grid Editionへのアップグレード:Oracle Coherence Enterprise Edition、またはOracle WebLogic Suiteのライセンスを有する場合、Oracle Coherence Grid Editionへのアップグレードが可能
  • Oracle Traffic Director(OTD):ゼロ・ダウンタイム・パッチングとライブ・パーティション・マイグレーションを実現
  • Oracle Site Guard:オラクル製品で構成されたスタック全体に対するエンド・ツー・エンドのディザスタ・リカバリの自動化を実現

 Continuous Availabilityを利用することで可能となる運用シナリオとしては、次のようなものが挙げられる。

  • 無停止で簡単にパッチを適用
  • マルチテナント・パーティションをユーザーに影響を与えずに移行
  • マルチデータセンター構成のサポート

※クリックすると拡大画像が見られます

無停止でのパッチ適用を可能にする「ゼロ・ダウンタイム・パッチング」

 Oracle WebLogic Server 12cR2では、サーバを停止することなくパッチを適用する「ゼロ・ダウンタイム・パッチング」機能が追加された。これは全てのサーバを一斉に停止させるのではなく、順番に停止させてパッチを適用していくローリング方式によって実現される。ロールアウトは全体で自動的に行われるのに加えて、フロントエンドからはロードバランサーによって隠蔽されるため、サービス稼働に影響を与えることなくパッチを適用することが可能となる。パッチ適用時にトラブルが発生した際の切り戻しも無停止のままで簡単に行える。


※クリックすると拡大画像が見られます

 具体的には、次の種類のパッチでゼロ・ダウンタイム・パッチングがサポートされている。

  • Oracleホーム:すでにOPatchでアップデートされたOracleホームにOracle WebLogic Serverを移行する方式で実現
  • Javaホーム:新規インストールされたJavaホームにOracle WebLogic Serverを移行する方式で実現
  • アプリケーション:stageモード、non-stageモード、external-stageモードをサポートする
  • ローリング再起動:パッチ適用だけでなく、安全にサーバを再起動させたい場合にも活用できる

マルチテナントの可用性を高める「パーティション・ライブ・マイグレーション」

 Oracle WebLogic Server 12cR2では、ドメインを「ドメイン・パーティション」と呼ばれる領域に区切ることで、1つの環境に複数のテナントを同居させるマルチテナント構成が可能になった。アプリケーションやリソースの管理単位は「リソース・グループ」と呼ばれ、ドメイン・パーティションごとに定義される。

 このマルチテナント構成とContinuous Availabilityを組み合わせて使うことで、起動中のパーティションとリソース・グループを、ユーザーに影響を与えることなく別のクラスタに移動させることができる。「パーティション・ライブ・マイグレーション」と呼ばれるこの機能により、キャパシティの追加、パッチの適用やアップグレード、危険な状態を回避するための緊急停止といった操作をダウンタイムなしで実行することが可能となるのだ。

 パーティション・ライブ・マイグレーションは、新旧ホスト間でのセッションの複製と、OTDによるセッションの振り分け制御によって実現されており、次のような流れで実行される。

  1. Migrate APIが呼び出される
  2. パーティション/リソース・グループが新しいホスト上で起動する
  3. セッションが新しいホストに複製される
  4. OTDに新しいオリジン・サーバ・プールが追加で構成される
  5. 元のホスト上のパーティション/リソース・グループが停止される
  6. 仮想ターゲットのコンフィギュレーションで、対象クラスタは新たなクラスタだけに更新される

 次の図は、リソース・グループのキャパシティを追加する場合のライブ・マイグレーションの実行イメージを表したものだ。最初に、よりキャパシティの大きいクラスタを用意しておき、そこにリソース・グループを移動する。クラスタへのサーバ追加だけでは対応できないようなスケールアップ時に効果を発揮する。


※クリックすると拡大画像が見られます

 次に示す図は、パッチ適用や環境アップデートの際のライブ・マイグレーションの活用イメージである。新たにパッチ適用済みの環境を構築したうえでパーティションを移行することにより、ダウンタイムなしのパッチ適用/アップデートを実現できる。


※クリックすると拡大画像が見られます

 ライブ・マイグレーションは、ハードウェア・トラブルなどの緊急時にも効果を発揮する。下図に示すように、緊急停止する前に他の安全な環境に移行すればよい。リソース・グループごと移行するため、ユーザーに影響を与えずに対処することができる。


※クリックすると拡大画像が見られます

 なお、現行のパーティション・ライブ・マイグレーション機能でサポートされているのは「リソース・グループ単位での同一ドメイン間の移動」であり、Webアプリケーションのみが対象となるが、将来的には全てのアプリケーション・タイプとプロトコルがサポートされる予定だ。また、ドメインをまたいだマイグレーションにも対応するという。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]