プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Serverクラスタの管理
12
c
(12.2.1.3.0)
E90317-02
次へ
目次
タイトルおよび著作権情報
はじめに
ドキュメントのアクセシビリティについて
表記規則
1
概要とロードマップ
ドキュメントのスコープと対象読者
このドキュメントの手引き
関連ドキュメント
このリリースでのクラスタリングの新機能と変更点
2
WebLogic Serverのクラスタリングの理解
WebLogic Serverクラスタとは
動的クラスタとは
クラスタとドメインの関係
クラスタリングの利点とは
クラスタの重要な機能とは
クラスタリング可能なオブジェクトの種類
サーブレットとJSP
EJBとRMIオブジェクト
JMSとクラスタリング
バッチ・アプリケーション
クラスタリングできないオブジェクトの種類
3
クラスタでの通信
WebLogic Serverのクラスタ・メッセージング・プロトコルの選択
IPマルチキャストの使用
マルチキャストとクラスタの構成
クラスタがWAN内の複数のサブネットにまたがる場合
ファイアウォールがマルチキャスト通信を遮断することがある
クラスタのマルチキャスト・アドレスを他のアプリケーションと共有しない
マルチキャスト・ストームが起こったら
ユニキャストを使用した1対多通信
WebLogic Serverユニキャスト・グループ
グループへのサーバー・インスタンスの割当て
ユニキャストの構成
ユニキャストを使用する場合の考慮事項
ユニキャストかマルチキャストかを選択する際の考慮事項
IPソケットを使用したピア・ツー・ピア通信
pure-Javaとネイティブ・ソケット・リーダーの実装の比較
Javaソケット実装用にリーダー・スレッドを構成する
ソケットの使用数を確定する
ソケット経由のクライアント通信
クラスタ全体のJNDIネーミング・サービス
WebLogic Serverによるクラスタ全体のJNDIツリー作成の仕組み
JNDI名の競合が発生する仕組み
均一なデプロイメントによってクラスタ・レベルのJNDIの競合を回避する
WebLogic ServerによるJNDIツリー更新の仕組み
クライアントとクラスタ全体のJNDIツリーとの対話
4
クラスタの構成の理解
クラスタの構成とconfig.xml
管理サーバーの役割
管理サーバーに障害が発生した場合
動的構成の仕組み
クラスタ化構成でのアプリケーションのデプロイメント
デプロイメント方法
2フェーズ・デプロイメントの概要
デプロイメントの第1フェーズ
デプロイメントの第2フェーズ
クラスタへのデプロイメントのガイドライン
WebLogic Serverがサポートする「緩和されたデプロイメント」ルール
部分的なクラスタへのデプロイメントの許可
WebLogic Serverの完全なクラスタへのデプロイメント
固定サービスを複数の管理対象サーバーにデプロイ可能
クラスタを構成する方法
5
クラスタでのロード・バランシング
サーブレットとJSPのロード・バランシング
プロキシ・プラグインによるロード・バランシング
プロキシ・プラグインによるセッションの接続とフェイルオーバーの仕組み
外部ロード・バランサによるHTTPセッションのロード・バランシング
ロード・バランサの構成要件
ロード・バランサとWebLogicセッションCookie
関連するプログラミングの考慮事項
ロード・バランサでのセッション接続およびフェイルオーバーの仕組み
EJBとRMIオブジェクトのロード・バランシング
ラウンドロビン・ロード・バランシング
重みベースのロード・バランシング
ランダム・ロード・バランシング
サーバー・アフィニティ・ロード・バランシング・アルゴリズム
サーバー・アフィニティと初期コンテキスト
サーバー・アフィニティとCSIv2を使用したIIOPクライアント認証
ラウンドロビン・アフィニティ、重みベース・アフィニティ、およびランダム・アフィニティ
サーバー・アフィニティの例
クラスタ化オブジェクトのパラメータ・ベースのルーティング
連結されたオブジェクトの最適化
トランザクションの連結
XAトランザクション・クラスタ・アフィニティ
JMSのロード・バランシング
分散JMS宛先のサーバー・アフィニティ
クライアント接続の初期コンテキスト・アフィニティとサーバー・アフィニティ
6
クラスタのフェイルオーバーとレプリケーション
WebLogic Serverで障害を検出する仕組み
IPソケットを使用した障害検出
WebLogic Serverの「ハートビート」
サーブレットとJSPのレプリケーションとフェイルオーバー
HTTPセッション状態のレプリケーション
HTTPセッション状態のレプリケーションに関する要件
サポート対象のサーバー・ソフトウェアとプロキシ・ソフトウェア
ロード・バランサの要件
クラスタ化されるサーブレットおよびJSPのプログラミング上の考慮事項
レプリケーション・グループの使用
クラスタ化サーブレットとJSPへのプロキシ経由のアクセス
プロキシ接続の手順
URL書換えを利用したセッション・レプリカの追跡
プロキシ・フェイルオーバーのプロセス
クラスタ化サーブレットとJSPへのロード・バランシング・ハードウェアを利用したアクセス
ロード・バランシング・ハードウェアを利用した接続
ロード・バランシング・ハードウェアを利用したフェイルオーバー
MAN/WAN内のクラスタ間でのセッション状態レプリケーション
クラスタ間レプリケーションのネットワーク要件
グローバル・ロード・バランサ
ローカル・ロード・バランサ
レプリケーション
フェイルオーバー
クラスタ間レプリケーションの構成要件
クラスタ間でのセッション状態レプリケーションの構成
レプリケーション・チャネルの構成
MANでのHTTPセッション状態のレプリケーション
MAN内でのレプリケーション
MANにおけるフェイルオーバーのシナリオ
MANでのレプリケーション、ロード・バランサ、セッションの固定
WANでのHTTPセッション状態のレプリケーション
WAN内でのレプリケーション
WANにおけるフェイルオーバーのシナリオ
WANでのセッション状態レプリケーション用のデータベースの構成
EJBとRMIのレプリケーションとフェイルオーバー
レプリカ対応スタブによるオブジェクトのクラスタリング
各種のEJBでのクラスタリング・サポート
クラスタ化EJBHomes
クラスタ化されたEJBObject
ステートレス・セッションBean
ステートフル・セッションBean
ステートフル・セッションEJBのフェイルオーバー
エンティティEJB
エンティティBeanとEJBハンドルのフェイルオーバー
RMIオブジェクトのクラスタリング・サポート
オブジェクト・デプロイメントの必要条件
他のフェイルオーバーの例外
7
サーバー全体の移行
サーバーおよびサービスの移行の理解
移行関連の用語
リース
リースを使用する機能
リースの種類
使用するリースの種類の決定
高可用性データベース・リース
RACクラスタ上でのデータベース・リースによるサーバーの移行
非データベースのコンセンサス・リース
サーバー全体の自動移行
サーバー全体の自動移行の準備
サーバー全体の自動移行の構成
状態データ用高可用性ストレージの使用
サーバーの移行プロセスと通信
移行可能サーバーのあるクラスタの起動プロセス
サーバー全体の自動移行のプロセス
サーバー全体の手動移行のプロセス
サーバー全体の移行における管理サーバーの役割
クラスタでの移行可能サーバーの動作
サーバー全体の移行におけるノード・マネージャの役割
サーバー全体の移行におけるクラスタ・マスターの役割
動的クラスタおよび複合クラスタでのサーバー全体の移行
動的クラスタでのサーバー全体の移行の構成
複合クラスタでのサーバー全体の移行の構成
8
サービスの移行
サービスの移行フレームワークの理解
移行可能サービス
JMS関連サービス
JTAトランザクション・リカバリ・サービス
ユーザー定義のシングルトン・サービス
クラスタ内の移行可能ターゲットの理解
手動および自動のサービス移行ポリシー
手動移行
Exactly-Once
Failure-Recovery
障害が発生したサービスを移行前に再起動するオプション
優先サーバーと候補サーバー
クラスタ内の移行可能ターゲットの例
JMSサーバーのターゲット指定ルール
SAFエージェントのターゲット指定ルール
SAFエージェントの移行可能ターゲットのターゲット指定の変更
メッセージ・スループットを向上させるための移行可能SAFエージェントのターゲット指定方法
サービス品質を安定させるためのSAFエージェントのターゲット指定方法
パス・サービスのターゲット指定ルール
パス・サービスをターゲット指定する場合の特別な考慮事項
カスタム・ストアのターゲット指定ルール
JTAトランザクション・リカバリ・サービス用の移行可能ターゲット
移行処理ツール
管理コンソール
WebLogic Scripting Tool
サービス自動移行インフラストラクチャ
移行可能サービスのリース
データベース・リース
コンセンサス・リース
ノード・マネージャ
サービスの移行時に管理サーバーは不要
サービスのヘルス・モニタリング
JTAトランザクション・リカバリ・サービスのヘルス・モニタリングが自動移行をトリガーする仕組み
JMS関連サービスのヘルス・モニタリングが自動移行をトリガーする仕組み
障害が発生した移行可能サービスのインプレースでの再起動
使用不能サーバーからのサービスの移行
JMSとJTAのサービスの自動移行の相互作用
移行前の要件
JMSサービスで使用できるカスタム・ストア
JTAで使用できるデフォルト・ファイル・ストア
サーバーの状態とサービスの手動移行
JMS関連サービスの自動移行を構成する手順
ステップ1: 管理対象サーバーとノード・マネージャを構成する
ステップ2: 移行リース基盤を構成する
ステップ3: 移行可能ターゲットを構成する
移行可能サーバーを自動的な移行可能ターゲットとして構成する
新しい移行可能ターゲットを作成する
ユーザー優先サーバーを選択する
サービス移行ポリシーを選択する
制約付き候補サーバーを選択する(オプション)
移行前/移行後スクリプトを指定する(オプション)
インプレースでの再起動オプションを指定する(オプション)
ステップ4: カスタム・ストアを構成およびターゲット指定する
ステップ5: 宛先および接続ファクトリの構成
ステップ6: JMSサービスをターゲット指定する
SAFエージェントまたはパス・サービスをターゲット指定する場合の特別な考慮事項
ステップ7: 変更した移行ポリシーで管理サーバーと管理対象サーバーを再起動する
ステップ8: JMSサービスを元のサーバーに手動で戻す
ステップ9: JMS移行のテスト
JMS移行の構成のベスト・プラクティス
JMS関連サービスの手動移行を構成する手順
JTAトランザクション・リカバリ・サービスの自動移行を構成する手順
ステップ1: 管理対象サーバーとノード・マネージャを構成する
ステップ2: 移行基盤を構成する
ステップ3: JTAの自動移行を有効にする
自動JTA移行ポリシーの選択
候補サーバーを選択する(オプション)
移行前/移行後スクリプトを指定する(オプション)
ステップ4: トランザクション・リカバリ・サービスの移行用にデフォルト永続ストアを構成する
ステップ5: 変更した移行ポリシーで管理サーバーと管理対象サーバーを再起動する
ステップ6: トランザクション・リカバリ・サービスを自動フェイルバックによって元のサーバーに戻す
JTAトランザクション・リカバリ・サービスの手動移行
ユーザー定義のシングルトン・サービスの自動移行
シングルトン・サービスの移行の概要
シングルトン・マスター
移行の失敗
シングルトン・サービス・インタフェースの実装
シングルトン・サービスのデプロイと移行動作の構成
アプリケーション内にシングルトン・サービスをパッケージ化してデプロイする
シングルトン・サービスをWebLogic Serverにスタンドアロン・サービスとしてデプロイする
シングルトン・サービスの移行を構成する
9
クラスタ・アーキテクチャ
アーキテクチャとクラスタ関連の用語
アーキテクチャ
Webアプリケーションの層
組合せ層アーキテクチャ
非武装地帯(DMZ)
ロード・バランサ
プロキシ・プラグイン
推奨基本アーキテクチャ
組合せ層アーキテクチャを使用しない状況
推奨複数層アーキテクチャ
ハードウェアとソフトウェアの物理レイヤー
Web/プレゼンテーション・レイヤー
オブジェクト・レイヤー
複数層アーキテクチャの利点
複数層アーキテクチャでのクラスタ化オブジェクトのロード・バランシング
複数層アーキテクチャの構成に関する考慮事項
IPソケットの使用数
ハードウェア・ロード・バランサ
複数層アーキテクチャに関する制限
連結の最適化が行われない
ファイアウォールに関する制限
推奨プロキシ・アーキテクチャ
2層プロキシ・アーキテクチャ
ハードウェアとソフトウェアの物理レイヤー
Webレイヤー
サーブレット/オブジェクト・レイヤー
複数層プロキシ・アーキテクチャ
プロキシ・アーキテクチャの利点
プロキシ・アーキテクチャの制限
プロキシ・プラグインとロード・バランサ
クラスタ・アーキテクチャのセキュリティ・オプション
プロキシ・アーキテクチャの基本ファイアウォール
プロキシ・レイヤーとクラスタの間のファイアウォール
基本ファイアウォール構成のDMZ
ファイアウォールとロード・バランサの組み合わせ
内部クライアントに対するファイアウォールの拡張
共有データベースに対するセキュリティの追加
ファイアウォールが2つある構成のDMZ
10
WebLogicクラスタの設定
開始する前に
構成プロセスについて
クラスタ・アーキテクチャを決定する
ネットワーク・トポロジとセキュリティ・トポロジを検討する
クラスタをインストールするマシンを選択する
マルチCPUマシン上のWebLogic Serverインスタンス
ホスト・マシンのソケット・リーダー実装をチェックする
切断されたWindowsマシン上のクラスタの設定
名前とアドレスを識別する
リスニング・アドレスの問題を回避する
DNS名とIPアドレス
内部DNS名と外部DNS名が異なる場合
localhostの考慮事項
WebLogic Serverリソースへの名前割当て
管理サーバーのアドレスとポート
管理対象サーバーのアドレスとリスニング・ポート
クラスタのマルチキャスト・アドレスとマルチキャスト・ポート
マルチキャストと複数のクラスタ
マルチキャストと複数層クラスタ
クラスタ・アドレス
動的なクラスタ・アドレス
本番環境でクラスタ・アドレスを明示的に定義する
開発およびテスト環境でクラスタ・アドレスを明示的に定義する
単一のマルチホーム・マシンでクラスタ・アドレスを明示的に定義する
クラスタ実装の手順
構成のロードマップ
WebLogic Serverをインストールする
クラスタ化ドメインを作成する
WebLogic Serverクラスタを起動する
ノード・マネージャを構成する
EJBとRMIのロード・バランシング方式を構成する
RMIのタイムアウト値を指定する
分散JMS宛先のサーバー・アフィニティを構成する
パッシブなCookieの永続性をサポートするロード・バランサを構成する
プロキシ・プラグインを構成する
HttpClusterServletを設定する
web.xmlのサンプル
weblogic.xmlのサンプル
プロキシ・サーブレットのデプロイメント・パラメータ
プロキシ・サーバー経由のアプリケーションへのアクセス
レプリケーション・グループを構成する
固定サービスの移行可能ターゲットを構成する
デプロイメント用にアプリケーションをパッケージ化する
アプリケーションをデプロイする
1つのサーバー・インスタンスにデプロイする(固定デプロイメント)
コマンド行からの固定デプロイメント
クラスタのデプロイメントを取り消す
コマンド行からデプロイメントを取り消す
WebLogic Server管理コンソールを使用したデプロイメントの取消し
デプロイ済アプリケーションを表示する
デプロイ済アプリケーションをアンデプロイする
移行可能サービスをデプロイ、アクティブ化、および移行する
移行可能ターゲット・サーバー・インスタンスにJMSをデプロイする
移行可能サービスとしてJTAをアクティブ化する
ターゲット・サーバー・インスタンスに固定サービスを移行する
現在アクティブなホストがない場合の移行
インメモリーHTTPレプリケーションを構成する
構成に関するその他のトピック
IPソケットを構成する
サーバー・インスタンスのホスト・マシン上でネイティブのIPソケット・リーダーを構成する
サーバー・インスタンスのホスト・マシン上のリーダー・スレッドの数を設定する
クライアント・マシン上のリーダー・スレッド数を設定する
マルチキャスト存続時間(TTL)を構成する
マルチキャスト・バッファのサイズを構成する
マルチキャスト・データの暗号化を構成する
マシン名を構成する
複数層アーキテクチャの構成に関する注意
URL書換えを有効にする
11
動的クラスタ
動的クラスタとは
動的クラスタを使用する理由
動的クラスタの仕組み
動的クラスタの作成と構成
サーバー・テンプレートの使用
サーバー固有の属性の計算
サーバー名の計算
リスニング・ポートの計算
マシン名の計算
動的クラスタ内のサーバーの起動と停止
動的クラスタの拡張と縮小
動的クラスタでのサーバー全体の移行の使用
動的クラスタへのアプリケーションのデプロイ
動的クラスタでのWebLogic Webサーバー・プラグインの使用
動的クラスタを使用する際の制限事項と考慮事項
動的クラスタの例
12
Coherenceクラスタの構成と管理
Coherenceクラスタの概要
Coherenceクラスタの設定
Coherenceクラスタ・リソースの定義
スタンドアロンの管理対象Coherenceサーバーの作成
Coherenceデプロイメント層の作成
Coherenceデータ層の構成と管理
Coherenceデータ層の作成
データ層の管理対象Coherenceサーバーの作成
Coherenceアプリケーション層の構成と管理
Coherenceアプリケーション層の作成
アプリケーション層の管理対象Coherenceサーバーの作成
Coherenceプロキシ層の構成と管理
Coherenceプロキシ層の作成
プロキシ層の管理対象Coherenceサーバーの作成
Coherenceプロキシ・サービスの構成
ネーム・サービスの使用
Coherenceクラスタの構成
Coherenceクラスタ・メンバーの追加と削除
クラスタ構成の詳細オプションの設定
クラスタ通信の構成
Coherenceクラスタ・モードの変更
Coherenceクラスタ・トランスポート・プロトコルの変更
キャッシュ構成ファイルのオーバーライド
Coherenceロギングの構成
キャッシュ永続性の構成
キャッシュ・フェデレーションの構成
管理対象Coherenceサーバーの構成
Coherenceクラスタ・メンバーのストレージ設定の構成
Coherenceクラスタ・メンバーのユニキャスト設定の構成
Coherence管理プロキシの削除
Coherenceクラスタ・メンバーのID設定の構成
Coherenceクラスタ・メンバーのロギング・レベルの構成
単一サーバー・クラスタの使用
CoherenceでのWLSTの使用
WLSTによるCoherenceキャッシュの保持
13
クラスタリングのベスト・プラクティス
一般的な設計上の考慮事項
シンプルにする
リモート呼出しを最小限にする
セッションFacadeでリモート呼出しが削減される
転送オブジェクトでリモート呼出しが削減される
分散トランザクションでリモート呼出しが増加する
Webアプリケーション設計の考慮事項
インメモリー・レプリケーションを構成する
多重呼出し不変性に留意して設計する
プログラミングの考慮事項
EJB設計の考慮事項
多重呼出し不変のメソッドを設計する
使用方法および構成のガイドラインに従う
クラスタ関連の構成オプション
クラスタでの状態管理
アプリケーション・デプロイメントの考慮事項
アーキテクチャに関する考慮事項
問題の回避
命名の考慮事項
管理サーバーについての考慮事項
ファイアウォールについての考慮事項
本番環境で使用する前にクラスタのキャパシティを評価する
14
一般的な問題のトラブルシューティング
クラスタを起動する前に
サーバーのバージョン番号のチェック
マルチキャスト・アドレスのチェック
CLASSPATHの値のチェック
クラスタ起動後の作業
コマンドのチェック
ログ・ファイルの生成
Oracle HotSpot VMスレッド・ダンプの取得
ガベージ・コレクションのチェック
utils.MulticastTestの実行
15
マルチキャスト構成のトラブルシューティング
マルチキャスト・アドレスおよびポートの構成の検証
発生する問題
マルチキャスト・アドレスおよびポートの確認
ネットワーク構成の問題の特定
物理的な接続
アドレスの競合
UNIXシステムのnsswitch.confの設定
MulticastTestユーティリティの使用
マルチキャスト機能のチューニング
マルチキャスト・タイムアウト
クラスタ・ハートビート
マルチキャスト送信遅延
オペレーティング・システム・パラメータ
マルチキャスト・ストーム
マルチキャストとマルチホーム・マシン
別々のサブネットでのマルチキャスト
マルチキャストのデバッグ
デバッグ・ユーティリティ
MulticastMonitor
MulticastTest
デバッグ・フラグ
コマンド・ラインでデバッグ・フラグを設定する
WLSTを使用したデバッグ属性の設定
その他の問題
ファイル記述子の問題
マルチキャスト構成のトラブルシューティングに関するその他のリソース
A
WebLogicクラスタのAPI
APIの使用方法
カスタム呼出しルーティングと連結の最適化
B
クラスタに関するBIG-IPハードウェアの構成
C
MAN/WANフェイルオーバーに関するF5ロード・バランサの構成
要件
ローカル・ロード・バランサの構成
仮想サーバーのIPおよびプール
フェイルオーバー・トリガーの仮想サーバーおよびプールの作成
マルチレイヤーの仮想サーバーおよびIPプールの作成
3-DNSグローバル・ハードウェア・ロード・バランサの構成
DNSゾーンの構成
3-DNSによって管理されるBIG-IPアドレスの構成
データ・センターの構成
ワイドIPの構成
WebLogic Serverコンポーネントの構成
D
MAN/WANフェイルオーバーに関するRadwareロード・バランサの構成
要件
ステップ1: 信頼できる委任ゾーンの構成
ステップ2: ファームの仮想IPおよびサーバーの構成
ファームIPの作成
サーバー・ファームのディスパッチ・メソッドの構成
ファーム・サーバーの作成
ステップ3: ポートの多重化の構成
ステップ4: HTTPリダイレクトの構成
ステップ5: セッションIDの永続性の構成
ステップ6: LRPの構成
ステップ7: WebLogic Serverコンポーネントの構成