Upload
oracle-fusion-middleware
View
3.398
Download
10
Embed Size (px)
DESCRIPTION
主なトピックス: Active GridLinkの機能強化 - SCAN、FCF、RCLBサポート - XAトランザクション・アフィニティ - Webセッション・アフィニティ 耐障害アーキテクチャの改善 - Active GridLinkのData Guardサポート - JDBC TLOGストア
Citation preview
Oracle WebLogic Server 12c 技術概要
~新機能紹介:運用管理編~
日本オラクル株式会社 Fusion Middleware 事業統括本部
シニアセールスコンサルタント 二川 秀智
2012年1月31日
OTNイブニングセミナー
第20回 WebLogic Server勉強会@東京
Copyright© 2012, Oracle. All rights reserved. 2
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
Copyright© 2012, Oracle. All rights reserved.
WebLogic Server の進化
• 常に最新のJava SE/EE標準を実装し製品化
• ミッションクリティカル・システムを支えるための継続的な性能・堅牢性・管理容易性の追求
3
J2EE 1.3 J2SE 1.4.2 コア機能強化 ミッション・クリティカルシステムJ2EE基盤としての機能を確立
J2EE1.4 JavaSE 5 ゼロダウンタイム 計画外停止の最小化に加えて計画停止も最小化。厳しい運用要件にも柔軟に対応
Java EE 5 Java SE 5&6 オラクル製品との連携
• オラクルDB連携 • Enterprise Managerによる一元管理
• インメモリ技術との連携
Java EE 5&6 Java SE 6 オラクル製品との統合、サン製品との連携
• Oracle iASとの統合 • Oracle RACとの親和性強化
• Java技術(JRockit)の強化
• Sun Javaとの連携、統合
Java EE 6 Java SE 7(※) ミッション・クリティカル性の強化
• 最新標準への対応による開発生産性向上
• RAC連携強化: 耐障害性及びスループット向上
• 更なる高速化 • 運用管理性の強化
WebLogic 8.1
WebLogic 9.x
WebLogic 10.x
WebLogic 11g
WebLogic 12c
ミッションクリティカル Java EE基盤
自動チューニング 運用管理性向上
フルレイヤ クラスタリングの完成
オラクル製品群の 本格的な統合
クラウド・スケールの可用性 最先端の開発標準
New!!
※近日サポート予定(2012/1/16現在)
Copyright© 2012, Oracle. All rights reserved.
WebLogic Server 12c New Feature ① Java EE 6フルサポート&開発効率化を支える支援機能
• Java EE 6 完全対応
• 開発生産性を劇的に向上
• より柔軟性の高い機能拡張
• 開発効率・品質のさらなる向上
• 選択可能な豊富な開発環境
• Maven統合可能な連携機能
• クラスローダー解析による品質向上
4
CAT
アプリケーション開発の効率化を実現するJava EEプラットフォーム
Copyright© 2012, Oracle. All rights reserved.
WebLogic Server 12c New Feature ② データベース連携機能強化による高可用性OLTPの実現
• Active Grid Link for RACによる信頼性・性能向上
• DBクラスタを超える高可用性DB環境の実現
• 高可用性DB環境を利用したトランザクション・ログの保護
5
Active Data Guard
and Golden Gate
3X
OL
TP
Coherence
Active GridLink for RAC
Coherence
WebLogic Server
Active GridLink for RAC
WebLogic Server
3X
OL
TP
Oracle Databaseとの連携により堅牢なOLTP環境を提供
Copyright© 2012, Oracle. All rights reserved.
Agenda
• Active GridLinkの機能強化
• SCAN、FCF、RCLBサポート(WLS10.3.4~)
• XAトランザクション・アフィニティ(WLS10.3.4~)
• Webセッション・アフィニティ(WLS12.1.1~)
• 耐障害アーキテクチャの改善
• Active GridLinkのData Guardサポート(WLS10.3.4~)
• JDBC TLOGストア(WLS12.1.1~)
• その他の便利な機能
• RESTful Management Service(WLS12.1.1~)
• サポート対象のコンフィグレーション
6
Copyright© 2012, Oracle. All rights reserved.
Active GridLinkの機能強化
7
•SCAN、FCF、RCLBサポート(WLS10.3.4~)
•XAトランザクション・アフィニティ(WLS10.3.4~)
•Webセッション・アフィニティ(WLS12.1.1~)
Copyright© 2012, Oracle. All rights reserved.
WebLogic Serverのデータソースの3タイプ 汎用データソース、マルチデータソース、GridLinkデータソース
8 8
WebLogic Server
マルチデータソース
データソース1
JNDI Tree
Lookup
DataSource
RAC
非RAC
Servlet
EJB
アプリケーション
データソース Connection
Connection
データソース1
Connection
Connection
データソース2
Connection
Connection
RAC データソース
Connection
Connection
Connection
データソース2
Connection
Connection
Connection
①汎用データソース
②マルチデータソース
③GridLinkデータソース
通称 “Active GridLink”
Copyright© 2012, Oracle. All rights reserved.
WebLogic ServerからRACへの接続方式 マルチ・データソース、GridLink データソース
• 2つの異なる接続方式
1. マルチ・データソース(WebLogic 8.1 PS5~)
• WebLogic Serverで独自に実装された、クラスタ化されたデータベース(RACだけではない)へ接続するための汎用的なデータソース
• WebLogic Server側からの定期的な接続テストによる接続フェイルオーバ
• ラウンドロビンによる接続ロードバランシング
• 複数のDBインスタンスへの個別データソースをグループ化し抽象化
2. GridLink データソース (WebLogic 11gPS3~)
• RACの機能をフル活用したデータソース
• RAC側からイベントを受信し、高速接続フェイルオーバを実現
• RAC側からイベントを受信し、実行時接続ロードバランシングを実現
• 高度なRACインスタンス間のアフィニティ
• シングルデータソース
9
Copyright© 2012, Oracle. All rights reserved.
マルチデータソースでのRAC接続
WebLogic Server
JNDI Tree
Internal Clients
(e.g. Servlets)
Lookup
Data Source
Multi Data Source
for Service A
Data Source
Data Source
RA
C D
ata
base
Serv
ice A
Data Source
Serv
ice A
S
erv
ice A
S
erv
ice
A
Data Source
•サービス毎にマルチデータソースを定義
•サービスを提供するインスタンス毎にデータソース
を定義し、マルチデータソースへメンバとして追加
Multi Data Source for Service B
Data Source
Serv
ice B
S
erv
ice B
Data Source
10
Copyright© 2012, Oracle. All rights reserved.
マルチデータソースでのRAC接続の課題
• 接続設定の煩雑さ
• RACノード数×サービス数だけJDBC接続のコンフィグレーションが必要
• RACの構成変更(ノード追加など)時には手作業での設定変更が必要
• ポーリングによる死活監視の影響
• ポーリングのため死活検知の遅延が発生しやすい
• ポーリングのための負荷(WebLogic側、DB側)がかかる
• RAC側の状況を考慮しない制御
• 静的ラウンドロビンを採用するためRAC側の各マシンの性能や負荷状況に応じた制御が不可能
• 同一マルチデータソース内に限定されたXAトランザクションアフィニティ
• 複数のマルチデータソースがグローバルトランザクションに参加する場合は、XAトランザクションがRACインスタンスを跨ってしまう可能性が高い
11
Copyright© 2012, Oracle. All rights reserved.
Active GridLink for RAC(WLS10.3.4~) RAC特有の機能をフル活用したシングルデータソース
1. 待望のUniversal Connection Pool(UCP)との統合
2. Single Client Access Name(SCAN)に完全対応
3. RACからの通知による高速接続フェールオーバ
(Fast Connection Failover; FCF)
4. RACの負荷状況を考慮した実行時接続ロードバランシング
(Runtime Connection Load Balancing; RCLB)
5. XAトランザクションのRACインスタンス・アフィニティ
6. WebセッションのRACインスタンス・アフィニティ(WLS12.1.1~)
12
GridLink
WebLogic
GridLink
WebLogic
80% 20%
実行時接続ロードバランシング
GridLink
WebLogic
GridLink
WebLogic
XA/Webセッション・アフィニティ
XA or Session
GridLink
WebLogic
GridLink
WebLogic
高速接続フェイルオーバー
Copyright© 2012, Oracle. All rights reserved.
Active GridLink for RACの仕組み WebLogic ServerのデータソースへUCPの機能を統合
• WebLogicデータソースと統合されたUCP(Universal Connection Pool)
が、ONS(Oracle Notification Service)から通知されるRAC側の構成変更/負荷状況のイベントを元に、適切な接続の制御(ロードバランシング、フェールオーバ、アフィニティ)をおこなう
13
ON
S c
lien
t
UCP-RAC モジュール
ONS Daemon
ONS Daemon
WebLogic Server Oracle Database(RAC)
死活・負荷状況通知
GridLinkデータソース
(サービスA用)
インスタンス1
インスタンス2
サービス
A
UCP統合
Copyright© 2012, Oracle. All rights reserved.
Universal Connection Pool (UCP)
• 既存のJDBC接続プール(暗黙接続キャッシュ)に代わる機能として、Oracle Database 11g リリース11.1.0.7.0から提供
• 任意のJDBCドライバによる物理接続をプールすることができるが、特にOracle JDBCドライバによるOracle RACとの接続の場合、ONSからのFANイベント通知を利用して以下の機能を実現
• 高速接続フェールオーバー(FCF)
• 実行時接続ロードバランシング(RCLB)
• トランザクションベースのアフィニティ(XA Affinity)
• Webセッションベースのアフィニティ(Web Session Affinity)
14
UCP統合
ONS (Oracle Notification Service)・・・RACの情報をクライアントや他ONSへ通知する機能
FAN (Fast Application Notification)イベント・・・ONSが発行するRACノードやサービスのUp/Down情報、ロード・バランシング・アドバイザからの負荷の配分率のアドバイス
Copyright© 2012, Oracle. All rights reserved.
WebLogicデータソースとUCPの統合
• UCPはアプリケーションサーバのデータソース機能に組み込んで利用することができる。実際WebLogic 10.3.4でGridLinkデータソースに組み込まれた。
15
GridLink
データソース ojdbcXX.jar
WebLogic のインストールに含まれるもの
ucp.jar
Oracle データベース
ons.jar
UCP統合
Copyright© 2012, Oracle. All rights reserved.
Single Client Access Name(SCAN) 単一の名前で動的なRACインスタンス変更に対応
• あたかもシングルインスタンスであるかのように単一名でRACに接続可能
• ノードの追加や削除時もクライアント側の設定変更は不要
• 接続ロードバランシングの提供
• 接続時フェールオーバーの提供
16
ローカル リスナ RACインスタンス
SCAN リスナ
Oracleクライアント (アプリケーション ・サーバ)
DNSサーバ
scan-vip1:1521
vip1:1521
vip2:1521
vip3:1521
vip4:1521
scan-vip2:1521
scan-vip3:1521
scan:1521
ホスト名 IPアドレス
scan
scan-vip1
scan-vip2
scan-vip3
共有 ストレージ
SE
RV
ICE
SCAN対応
Copyright© 2012, Oracle. All rights reserved.
WebLogic データソースのSCANサポート
17
インスタンス1
インスタンス2
汎用データソース
マルチ・データソース
GridLink データソース
データソース
データソース
ロードバランシング
データソース
種類
SCANアドレスを
接続URLに指定
インスタンス名
の指定
(インスタンス名を指定せずに)
SCANによる接続
ロードバランシング
(インスタンス名を指定せずに)
SCANによる接続時
フェールオーバ
汎用データソース 可能 必要 サポートしない
(特定のインスタンスに
固定されてしまうため)
サポートしない (特定のインスタンスに
固定されてしまうため)
マルチ
データソース 可能
必要 (メンバのデータソース
毎に指定)
サポートしない (マルチデータソースによる
バランシングを利用すべき)
サポートしない (マルチデータソースによる
フェールオーバを利用すべき)
GridLink
データソース 可能 不要
(サービス名のみ指定) サポート サポート
インスタンス固定
インスタンス固定
SCAN対応
Copyright© 2012, Oracle. All rights reserved.
Active GridLink のSCANの利用設定 TNSリスナへの接続設定
18
SCAN名とポートを指定
RAC側の構成変更があってもこの設定の変更は不要
SCAN対応
Copyright© 2012, Oracle. All rights reserved.
Active GridLink のSCANの利用設定 ONSデーモンへの接続設定
19
ONSデーモンの接続先としてもSCAN名を利用できる
ONSのポート番号を指定
RAC側の構成変更があってもこの設定の変更は不要
SCAN対応
Copyright© 2012, Oracle. All rights reserved.
Active GridLink のフェイルオーバ 高速接続フェイルオーバ(FCF)のサポート
• UCPがサブスクライブするRAC/FANイベントを検知してWebLogic
Server のコネクションプールに通知
• RACノードの計画/計画外停止(DOWNイベント)
• RACノードの新規追加や復旧(UPイベント)
• 通知されたイベントを元にWebLogic Server側で制御
• 無効な接続を即座に検知し削除
• ノードの追加や削除を即座に検知し、
アクティブなRACインスタンスへ作業を再配布
GridLink DataSource
Instance2
RAC Database
Instance1
Instance3
Fail-over Handler Thread
Start ONS Subscribe
Handle Event ONS Publish X
X X
X
Universal Connection Pool(UCP)
20
FCF対応
Copyright© 2012, Oracle. All rights reserved.
FCFが有効なシナリオ
21
FCF対応
シナリオ FCFの動作 メリット
計画外停止
ノード停止の通知を受け取ると、すぐに無効なそのノードへの接続を接続プールから破棄し、ソケットも切断。
実行中のトランザクションは即座に例外を受け取るので、TCP/IPタイ
ムアウト待ちによるハングを防ぐことが可能
計画停止 ノード停止の通知を受け取ると、そのノードへの接続をマーキングする。アプリケーションが接続をプールに返却してしてから接続をプールから破棄 。全ての接続がなくなってからノードがシャットダウン。
実行中のトランザクションに影響を与えることなく、RACインスタンス
を停止し、メンテナンスすることが可能
Oracle
インスタンス
の追加
新しく追加されたインスタンスや再起動されたインスタンスをUCPが
認識し、そのインスタンスへの接続を作成。
RACインスタンスの追加や復旧後
はアプリケーションサーバーの再起動なしで接続の再バランシングが可能
Copyright© 2012, Oracle. All rights reserved.
FCFを利用するための設定
• 管理コンソールにてデータソース作成時
• 「FANの有効化」をチェック
• 「ONSホストとポート」にONSの接続先を入力
• RACノード数分を複数指定しても、SCAN名で一括指定してもよい
22
FCF対応
Copyright© 2012, Oracle. All rights reserved.
Active GridLinkの負荷分散 実行時接続ロードバランシング(RCLB)のサポート
• Oracle RACのロード・バランシング・アドバイザが発信するFANイベント(ロード・バランシング・イベント)をONS経由でUCPが受信し、目標(サービスタイムまたはスループット)を最適化する接続先インスタンスを選択
• クラスタの設定変更、アプリケーションのワークロード、過負荷/ハング状態のノードに素早く反応
23
WebLogic
Connection Pool
Application
I’m busy
I’m very busy
I’m idle
30% connections
10% connections
60% connections
RAC Database
Instance1
Instance2
Instance3
RCLB対応
Copyright© 2012, Oracle. All rights reserved.
RCLBが有効なシナリオ
24
RCLB対応
シナリオ RCLBの動作 メリット
性能の異なるマシンの混在
マシン性能にほぼ比例して、すなわち性能の高いマシンに多く、低いマシンには少なく作業が配分される
全体のスループットを最大化することが可能
OLTPとバッチの混在
バッチが実行されているノードへの作業配分を減らし、バッチが実行されていないノードへの作業配分を増やす
バッチ処理によるOLTP処理性能
への影響を最小限に抑えること可能
一部のノードの過負荷
過負荷ノードへは作業を配分せず、負荷の低いノードへ作業を配分
過負荷によるレスポンスタイムの悪化を最小限に抑えることが可能
Copyright© 2012, Oracle. All rights reserved.
• 同一XAトランザクションからの接続要求に対しては同一RACインスタンスから確保した接続を返す(初回の接続はRCLBにより選択)
• Cache Fusionの発生を低減し、キャッシュヒット率向上
• 2フェーズコミットにかかるオーバヘッドを軽減
WebLogic Server
Active GridLinkのトランザクション制御 XAアフィニティ
25
XA Affinity
RAC Database
Instance1
Instance2
Instance3
EJB1 Data Source
WebLogic Server
EJB
EJB3 Data
Source
EJB2 Data Source
EJB4 Data
Source Transaction
Affinity Context
Copyright© 2012, Oracle. All rights reserved.
Active GridLinkのWebセッション制御 Web セッション・アフィニティ(WLS12.1.1~)
• 同一HttpSessionからの接続要求に対しは、できるだけ同一RACインスタンスから確保した接続を返す(初回の接続はRCLBにより選択)
• Cache Fusionの発生を低減し、キャッシュヒット率向上
RAC Database
Instance1
Instance2
Instance3
26
WebLogic Server
Servlet Data Source
JSP
Servlet Data Source
JSP
JSP
HttpSession
Web Session Affinity
Affinity Context
Copyright© 2012, Oracle. All rights reserved.
XA、Webセッション・アフィニティの設定
1. Oracle RAC側の設定(RCLBの有効化)
• CLBの目標を”SHORT”に、RCLBの目標を”THROUGHPUT”または”SERVICE_TIME”に設定したサービスを新規作成し、起動
2. WebLogic Server側の設定
• GridLinkデータソースを作成
• 手順1で作成したサービス名を宛先に設定
• FANを有効化し、ONSの接続先を設定
3. アプリケーション
• アプリケーションの変更は不要で、GridLinkデータソースから接続を取得するだけでよい
• UCPの直接利用では”Affinity Callback”の実装が必要だったが、
GridLinkデータソースは自動でAffinity Contextが設定されるため不要
27
srvctl add service -d orcl -s demosvc -g srvpool1 -j SHORT -B THROUGHPUT
srvctl start service -s demosvc -d orcl
Affinity
Copyright© 2012, Oracle. All rights reserved.
Active GridLink for RAC バージョンごとの機能進化
機能 WebLogicバージョン メリット
SCANサポート 10.3.4 パフォーマンス
運用管理性
FCFサポート 10.3.4 高可用性
RCLBサポート 10.3.4 パフォーマンス
XA Affinity 10.3.4 パフォーマンス
Web Session Affinity 12.1.1 パフォーマンス
Data Guardサポート 10.3.4 高可用性
28
Copyright© 2012, Oracle. All rights reserved.
機能 GridLinkデータソース マルチデータソース
データソースの構成 RAC側のサービスごとにGridLinkデータソースを1つ設定
RAC側のサービス数×ノード数
分の設定が必要
RAC構成変更時の
データソース設定変更
設定変更は不要 設定変更が必要
フェールオーバー RAC側からの通知による高速接続フェールオーバー(FCF)
WLS側からの定期的なポーリン
グによる障害検知のため遅延が発生しやすい
ロードバランシング DB側の負荷を考慮した実行時接続ロードバランシング(RCLB)
DB側の負荷を考慮しない静的ラウンドロビン
接続アフィニティ 複数GridLinkデータソースに跨るXAアフィニティ、Webセッションアフィニティ
同一マルチデータソース内でのXAアフィニティのみ
Data Guardサポート プライマリ側、スタンバイ側に同等構成のRACを配置できる
プライマリ側のRACは1インスタンスしか利用できない
29
GridLinkデータソース vs マルチデータソース
Copyright© 2012, Oracle. All rights reserved.
耐障害アーキテクチャの改善
30
•Active GridLinkのData Guardサポート(WLS10.3.4~)
•JDBC TLOGストア(WLS12.1.1~)
Copyright© 2012, Oracle. All rights reserved.
Active GridLinkのData Guardサポート
• GridLinkデータソースはFCFに対応しているため、プライマリDBの障害時はData Guardによるフェールオーバー完了後のFANイベント通知を受けて、新プライマリDB(元スタンバイDB)へ自動接続することが可能
31
Node1
WebLogic
GridLink データソース
Data
Guard
Data Guard対応
Node2 Node1 Node2 Node1
WebLogic
GridLink データソース
Node2 Node1 Node2
ONS
Service: Order Entry Service: Order Entry
ONS ONS ONS ONS ONS ONS ONS
Primary Standby 新Primary
プライマリ のDBに 障害発生
Copyright© 2012, Oracle. All rights reserved.
Active GridLinkのData Guardサポート 接続記述子
jdbc:oracle:thin:@
(DESCRIPTION_LIST=
(LOAD_BALANCE=off)(FAILOVER=on)
(DESCRIPTION=
(CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
(ADDRESS_LIST=
(LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=TCP)(HOST=Austin-scan)(PORT=1521))
)
(CONNECT_DATA=(SERVICE_NAME=oltpworkload))
)
(DESCRIPTION=
(CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
(ADDRESS_LIST=
(LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=TCP)(HOST=Houston-scan)(PORT=1521))
)
(CONNECT_DATA=(SERVICE_NAME=oltpworkload))
)
)
32
プライマリ側RACのSCANアドレスを指定
スタンバイ側RACのSCANアドレスを指定
Data Guard対応
Copyright© 2012, Oracle. All rights reserved. 33
トランザクション・ログ(TLOG)の重要性
• 2フェーズコミットにおいては、トランザクション・マネージャ(TM)は、現在のトランザクションの状態を安定したストレージ上のTLOGに保存しなければならない
• TM障害からの回復時に、TMはTLOGを利用してインダウト(後述)
なトランザクションを解決する
1. prepare
6.成功
2.OK
3. prepare
4.OK
5.commit
8.commit 9.成功
7.OK
10.OK
TM RM 1 RM 2
書込
削除
TLOG
REDOログ
REDOログ
JDBC TLOG
TLOGは障害からのトランザクションの回復のための重要なログ
Copyright© 2012, Oracle. All rights reserved. 34
インダウト(不明区間)とは
• RMがprepareに対するOKを送ってから、TMからのcommitメッセージが届くまでの区間
• この区間は、RMはTMからの確定要求が来るまでトランザクションを保持し続ける。つまり確定要求が来ない限り、自分からは何もしない。
• この区間でTM障害が発生すると・・・、データベースのリソースはブロックされ続けてしまう。TMが長時間回復せず、各リソースマネージャが独断でヒューリスティックな決定(推定によるコミットorアボート)を行えば、データの不整合が発生しうる。
1. prepare
TM RM 1 RM 2
4.成功
2.OK
1. prepare
2.OK
3.commit
3.commit 4.成功
5.OK
5.OK
インダウト
(不明区間)
インダウト
(不明区間)
各RMはTMからの確定要求が来るまで、リソースのロックを保持し続ける
JDBC TLOG
Copyright© 2012, Oracle. All rights reserved.
JDBC TLOGストア
• 従来はファイルストア(デフォルト・ストア)のみに格納できたトランザクション・ログ(TLOG)を、より信頼性かつ利便性の高いデータベースへ格納できるようにした機能
35
JDBC TLOG
メリット 概要
シンプル 全てのステートデータ(アプリケーション・データ、JMSメッセージ、TLOG)を整合性と同期を保った状態でデータベースへ格納
障害対策 TM障害時も別の正常なマシンでTMを再起動し、データベース上のTLOGへアクセスすることにより、インダウトなトランザクションを迅速に解決し、業務を継続(TLOGのコピーは不要)
災害対策 Data Guardの利用により、災害発生時にもスタンバイサイトで、インダウトなトランザクションを迅速に解決し、業務を継続
Copyright© 2012, Oracle. All rights reserved.
Machine B
JDBC TLOGストアが有効なシナリオ
• サーバ自動移行(WLSクラスタの機能)の簡素化
• 災害対策の簡素化(Data Guardとも連携して)
36
JDBC TLOG
Machine A
WLS
TLOG
Machine B
WLS
Machine A
WLS
-A
TLOG
WLS
-B
Machine B Machine A
WLS
-A
TLOG
WLS
-B
Data Guard
Server Migration
Fail Over スタンバイサイト プライマリサイト
Copyright© 2012, Oracle. All rights reserved.
Oracle RAC
Web Tier
従来の災害対策アーキテクチャ ステートの転送に複数の技術を利用するため同期が困難
Active Site Standby Site
Application Data
Local LB
Web Tier Local LB
Web Tier Local LB
Web Tier
Binaries
Configuration
Middleware Tier
WebLogic WebLogic
WebLogic
Binaries
Configuration
Oracle RAC
Web Tier
Application Data
Local LB
Web Tier Local LB
Web Tier Local LB
Web Tier
Binaries
Configuration
Middleware Tier
WebLogic WebLogic
WebLogic
Binaries
Configuration
Global Load Balancer
Transaction Logs
JMS Messages
Transaction Logs
JMS Messages
File Replication
Datagard or
GoldenGate
File Replication
Instance Instance
Instance
Instance Instance
Instance
37
JDBC TLOG
Copyright© 2012, Oracle. All rights reserved.
Oracle RAC
Web Tier
新しい災害対策アーキテクチャ 全てのステートをDBに格納するため、復旧がシンプル
Active Site Standby Site
Application Data
Local LB
Web Tier Local LB
Web Tier Local LB
Web Tier
Binaries
Configuration
Middleware Tier
WebLogic WebLogic
WebLogic
Binaries
Configuration
Oracle RAC
Web Tier
Application Data
Local LB
Web Tier Local LB
Web Tier Local LB
Web Tier
Binaries
Configuration
Middleware Tier
WebLogic WebLogic
WebLogic
Binaries
Configuration
Global Load Balancer
File Replication
Datagard or
GoldenGate
File Replication
Instance Instance
Instance
Instance Instance
Instance
Transaction Logs
JMS Messages
Transaction Logs
JMS Messages
38
JDBC TLOG
Copyright© 2012, Oracle. All rights reserved.
JDBC TLOGストア設定方法
1. TLOG用JDBCデータソースの作成
• non XAドライバを利用し、かつ、「グローバル・ トランザクションのサポート」を非選択に
(TLOG用データソースへの書き込み自身
はJTAトランザクションには参加させない)
2. トランザクション・ログ・ストア
• ドメイン → サーバ
→ 構成 → サービス
→ トランザクション・ログ・ストア
• タイプ「JDBC」を選択
• 手順1で作成したデータソースを選択
3. 再起動後に自動的にTLOG
格納用のテーブルが作成される
39
JDBC TLOG
Copyright© 2012, Oracle. All rights reserved.
JDBC TLOGストア構成上の注意点
• WebLogicよりも前にTLOG格納先のDBを起動すること
• TLOG用DBが起動していないと、WebLogicの起動に失敗する
• TLOG用のDBは冗長化(RACなど)を推奨
• TLOG用DBが停止すると、WebLogicはTM機能を提供できなくなるので、すべてのグローバルトランザクションは失敗する
40
JDBC TLOG
Copyright© 2012, Oracle. All rights reserved.
その他の便利な機能
41
•RESTful Management Services(WLS12.1.1~)
Copyright© 2012, Oracle. All rights reserved.
RESTful Management Serivce(12.1.1~)
• WebLogic Serverの簡易監視用RESTful Webサービス
• ブラウザ、JavaScript、Ruby、Perl、Java、JavaFXなどから利用可能
• リクエストはHTTP GETのみサポート(ReadOnly)
• レスポンスはHTML/JSON/XMLフォーマットを選択可能(
• リクエストのAcceptヘッダにて切り替え
• Acceptヘッダなし ・・・ HTML
• Accept: application/json ・・・ JSON
• Accept: application/xml ・・・ XML
• WebLogicの管理者権限を持つユーザのみアクセス可能 • Administratorsグループ
• Monitorsグループ
42
Copyright© 2012, Oracle. All rights reserved.
RESTful Management Serivceの有効化
1. 管理コンソールから有効化(デフォルトは無効)
ドメイン → 構成 → 全般 → 詳細 →
“RESTful管理サービスの有効化” をチェック
2. 設定後、WebLogicを再起動
43
Copyright© 2012, Oracle. All rights reserved.
利用可能なRESTfulリソース
44
種類 URL
サーバ http://localhost:7001/management/tenant-monitoring/servers
http://localhost:7001/management/tenant-monitoring/servers?format=full
http://localhost:7001/management/tenant-monitoring/servers/servername
クラスタ http://localhost:7001/management/tenant-monitoring/clusters
http://localhost:7001/management/tenant-monitoring/clusters?format=full
http://localhost:7001/management/tenant-monitoring/clusters/clustername
アプリ
ケーション
http://localhost:7001/management/tenant-monitoring/applications
http://localhost:7001/management/tenant-monitoring/applications?format=full
http://localhost:7001/management/tenant-monitoring/applications/applicationname
データ
ソース
http://localhost:7001/management/tenant-monitoring/datasources
http://localhost:7001/management/tenant-monitoring/datasources?format=full
http://localhost:7001/management/tenant-monitoring/datasources/datasourcename
Copyright© 2012, Oracle. All rights reserved.
レスポンスの例
45
"body":
"items":
["name":"AdminServer",
"state":"RUNNING",
"health":"HEALTH_OK”]
,
"messages“:[]
JSON
<?xml version="1.0" encoding="utf-8"?>
<data><object>
<property name="body“><object>
<property name="items“><array><object>
<property name="name">
<value type="string">AdminServer</value>
</property>
<property name="state">
<value type="string">RUNNING</value>
</property>
<property name="health">
<value type="string">HEALTH_OK</value>
</property>
</object></array></property>
</object></property>
<property name="messages"><array></array></property>
</object></data>
XML HTML
Copyright© 2012, Oracle. All rights reserved.
サポート対象のコンフィグレーション(as of 2012/1)
46
Copyright© 2012, Oracle. All rights reserved.
サポート対象のOS/JDK/DB HW OS(64bit only ) *1 JDK(64bit only) *1 DB(WLSのDB依存機能用) *2
x64 RedHat Linux 5.6~
Oracle Linux 5.6~
SLES 10 SP2~
SLES 11
Oracle JDK 1.6.0_29~
JRockit R28.2.0~
Oracle 11.1.0.7~
Oracle RAC 11.1.0.7
Oracle 11.2.0.3~
Oracle RAC 11.2.0.3~
DB2/UDB 9.5~
DB2 9.7~
SQL Server 2008
SQL Server 2008R2
MySQL5.5
Sybase 15.5~
Windows 2008 R2
Solaris 10 U9~
Solaris 11
Oracle JDK 1.6.0_29~
Windows 7 SP1~
SPARC Solaris 10 U9~
Solaris 11
Power AIX 6.1 TL6~
AIX 7.1 TL0~
IBM JDK 6 SR9 FP2~
47
*1) 開発環境では32bit OS(MAC、Windows XP/VISTA/7、Linux 5)、32bit JDK(Oracle JDK、JRockit)もサポート http://www.oracle.com/technetwork/developer-tools/eclipse/system-requirements-101778.html *2) アプリケーションデータアクセスのみ用途には一定条件を満たすJDBCドライバならば上記以外のDBもサポート http://www.oracle.com/technetwork/middleware/ias/downloads/wls-1211x-certmatrix-1395408.xls ただし、マルチデータソース、GridLinkデータソースを利用の場合、Oracle RACは11gのみをサポート http://docs.oracle.com/cd/E24329_01/web.1211/e24367/oracle_rac.htm#i1080090
※2012年1月31日現在のサポート状況
Copyright© 2012, Oracle. All rights reserved.
まとめ
48
Copyright© 2012, Oracle. All rights reserved.
Why WebLogic Server 12c? 開発生産性と堅牢性を両立する最先端のJava EE基盤
• 3本締めくらいで
49
開発生産性を追求したJava EE 6プラットフォーム
最新仕様Java EE 6への対応による開発生産性向上
Java EE 6の効率的な開発を支援する開発ツールの提供
ミッションクリティカルに求められる信頼性を変わらず提供
Oracle RACとの高度な連携
障害復旧、災害復旧の運用を簡素化
Copyright© 2012, Oracle. All rights reserved.
Copyright© 2012, Oracle. All rights reserved. 51