Oracle Data Guardの構築と フェイルオーバー実行例 · •Oracle Data Guard Broker...
Transcript of Oracle Data Guardの構築と フェイルオーバー実行例 · •Oracle Data Guard Broker...
Oracle Data Guardの構築とフェイルオーバー実行例日本オラクル株式会社
Copyright© 2011, Oracle. All rights reserved. 2
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
Copyright© 2011, Oracle. All rights reserved.
<Insert Picture Here>
Agenda
• Data Guardの動作要件
• Data Guard構築
• スイッチ・オーバーの実行
• ファスト・スタート・フェイルオーバーの実行
3
Copyright© 2011, Oracle. All rights reserved.
Data Guardの動作要件
ハードウェアおよびオペレーティング・システムの要件
• ハードウェアおよびOS要件は、データベースと同じです
• Oracle Database 11gから、プライマリ・システムとスタンバイ・システムを、異なるハードウェアおよびOS上に構成することも可能です
• ハードウェアのメーカー及び機種
• ハードウェアの構成
• CPU の種類
• OS(たとえばWindowsとLinux)およびOSのバージョン
• OSのバイナリ(32-bit/64-bit)
• プライマリとスタンバイで異なるスペックのマシンを使用することも可能です
• ただし、スペックの差が大きい場合、スペックの低いマシンの処理がボトルネックとなり、ログ適用の遅延や、ロール切り替え時のパフォーマンス劣化などの問題が起きる場合があります
4
プラットフォーム混在のサポートおよび制限事項については、以下の情報をご参照くださいMy Oracle Support(http://support.oracle.com)フィジカル・スタンバイに対するサポートおよび制限事項:Note 413484.1ロジカル・スタンバイに対するサポートおよび制限事項:1085687.1
Copyright© 2011, Oracle. All rights reserved.
Data Guardの動作要件
Oracleソフトウェア要件
• Oracle Data Guardは、Oracle Database Enterprise Editionの機能です
• プライマリとスタンバイで、以下はすべて同じである必要があります
• エディション(Oracle Database Enterprise Edition)
• バージョンおよびPSR
• 個別パッチ(DatabaseのORACLE_HOMEに適用しているもの)
ただし、プライマリでのみRACを使用しているなど、同じパッチを適用できない場合は一方にのみ適用することでも問題はありません
• プライマリとスタンバイの両方または一方のみをRAC構成とすることが可能です
5
Copyright© 2011, Oracle. All rights reserved.
<Insert Picture Here>
Agenda
• Data Guardの動作要件
• Data Guard構築
• スイッチ・オーバーの実行
• ファスト・スタート・フェイルオーバーの実行
6
Copyright© 2011, Oracle. All rights reserved.
Data Guardの管理インタフェース
• Data Guard構成の構成、実装および管理には、次のフレームワークを使用できます
• SQL*Plusコマンドライン・インタフェース
• Oracle Data Guard Broker
• Data Guard Brokerコマンドライン・インタフェース(DGMGRL)
• Oracle Enterprise Manager Grid Control
7
Oracle Data Guard Brokerとは
•Oracle Data Guard Brokerは、Data Guard構成の作成、メンテナンスおよび監視を自動化および集中化する分散管理フレームワークです
•Oracle Data Guard Brokerを利用することにより、プライマリ・データベースとスタンバイ・データベースを統合管理し、作成やメンテナンス作業を単純化することが可能になります
構成ファイル
DMON
構成ファイル
DMON
DGMGRL/EM
Copyright© 2011, Oracle. All rights reserved.
DGMGRL と Enterprise Manager
• Oracle Data Guard Brokerには、以下の2つのインタフェースがあります
• Data Guard Brokerコマンドライン・インタフェース(DGMGRL)
• Oracle Enterprise Manager Grid Control
• DGMGRLまたはEnterprise Managerを使うことにより、以下の作業を簡素化することができます
8
DGMGRL Enterprise Manager
Data Guard構成の作成と有効化Data Guard構成全体の管理スイッチオーバーおよびフェイルオーバー操作ファスト・スタート・フェイルオーバー
左記に加え
プライマリのバックアップからのスタンバイ作成Data Guard構成への新規スタンバイの追加ログ適用レートの監視、診断情報の獲得
集中化したモニタリング・ツールを使用した問題の早期検出
本資料では、管理インタフェースとして Enterprise Managerを使用します
Copyright© 2011, Oracle. All rights reserved.
Data Guard構成の前提条件
• Data Guard構成を構成する前に、以下の構成及び設定が必要です
• プライマリ・マシンおよびスタンバイ・マシンへの、Oracle Databaseソフトウェアのインストール
※管理を簡素化するために、プライマリ・マシンおよびスタンバイ・マシンのディレクトリ構造を同一にすることをお勧めします
• プライマリ・データベースの作成
• プライマリ・データベースをARCHIVE LOGモードに設定
• Oracle Enterprise Managerを使用してData Guardを構築及び運用管理するためには、以下の構成及び設定が必要です
• Oracle Enterprise Manager Grid Controlの構成
• プライマリ・マシンおよびスタンバイ・マシンへの、Management Agentの配布
• プライマリ・マシンおよびスタンバイ・マシンをEnterprise Managerに登録
9
Grid Control構築については、以下のマニュアルをご参照くださいOracle Enterprise Manager Grid Control基本インストレーション・ガイド11gリリース1http://download.oracle.com/docs/cd/E17559_01/install.111/b61019/toc.htm
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
Grid Controlへのアクセス
• Oracle Enterprise Manager Grid Controlにアクセスし、プライマリとして構成するデータベースの管理画面を開きます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成①
• 「可用性」ページを開き、「スタンバイ・データベースの追加」リンクをクリックします
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成②
• 「新規のフィジカル・スタンバイ・データベースの作成」を選択します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成③
• 現在稼働中のデータベースをもとにして(=バックアップして)、スタンバイ・データベースを構築することができます
• 既存のバックアップが存在する場合には、それを利用することもできます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成④
• バックアップのための情報を入力します
Hint優先資格証明で「エラー:NMOがsetuid-rootではありません(UNIXのみ)」というメッセージが表示される場合には、Management Agentホームのroot.shを実行してください
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑤
• スタンバイ・データベースのインスタンス名と、スタンバイ・データベースが稼働するホスト情報を入力します
Hintここで指定するホストは、事前にGrid Conrtolに登録されている必要があります
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑥
• スタンバイ・データベースのデータ・ファイル格納先と、リスナー情報を入力します
Hintプライマリとスタンバイのディレクトリ構造が同一の場合は、「同じ場所」を指定します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑦
• スタンバイ・データベースのデータベース名と、アーカイブ・ログの配置先を指定します
Hintフラッシュ・リカバリ領域におかれたアーカイブ・ログは、Oracleにより自動管理(上書き)されるため、管理コストが節減されます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑧
• 設定した情報を確認し、「終了」ボタンをクリックします
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑨
• 処理の進捗状況を確認します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
スタンバイ・データベースの作成⑩
• スタンバイ・データベースが作成されたことを確認します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
Data Guard管理画面へのアクセス
• 「Data Guard」のページから、保護モードやフェイルオーバーの設定、およびステータスやログ適用状況の確認をすることができます
どこまでのログが適用されているか
転送/REDO適用のタイムラグ
Copyright© 2011, Oracle. All rights reserved.
Enterprise Manager を利用した Data Guardの構築
【補足】Data Guardの保護モード
• Enterprise Managerの画面から、保護モードを変更することが可能です
最大保護 最大可用性 最大パフォーマンス
同期 通常時 同期 同期 非同期
スタンバイ障害時 同期 非同期 非同期
スタンバイ障害時のプライマリ処理
プライマリでの処理停止
プライマリでの処理続行
プライマリでの処理続行
データ損失 複数の障害が発生した場合でもデータ損失ゼロを保証
ネットワーク障害やプライマリ・サイト障害などの単一障害によるデータ損失ゼロを保証
転送遅延によるデータ消失のリスク
Copyright© 2011, Oracle. All rights reserved.
<Insert Picture Here>
Agenda
• Data Guardの動作要件
• Data Guard構築
• スイッチ・オーバーの実行
• ファスト・スタート・フェイルオーバーの実行
23
Copyright© 2011, Oracle. All rights reserved.
Data Guardのスイッチオーバー
• Oracle Enterprise Managerの画面から「スイッチオーバー」および「フェイルオーバー」の作業を実行することができます
• ここでは、スイッチ・オーバーの手順を説明します
24
【補足】スイッチオーバーとフェイルオーバーの違い
スイッチオーバー:計画的なロールの切り替えOSやハードウェアのアップグレード、またはOracle Databaseのローリング・アップグレードなど、予定されたプライマリ・システムのメンテナンスの際に実行されます。スイッチオーバーでは、データが消失しないことが保証されます。
フェイルオーバー:障害などによるロールの引き継ぎプライマリ・データベースに障害が発生した場合に、スタンバイ・データベースがプライマリ・ロールを引き継ぐことです。フェイルオーバーは、プライマリ・データベースで災害などの障害が起き、プライマリ・データベースを適時にリカバリできない場合にのみ実行されます。 フェイルオーバーでは、保護モードによっては、データが消失する場合があります。
P S
スイッチオーバー
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したスイッチオーバー
スイッチオーバーの開始
• 「スイッチ・オーバー」ボタンをクリックします
orcl2がスタンバイ
orcl1がプライマリ
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したスイッチオーバー
スイッチオーバーの実行①
• 確認画面で「はい」をクリックします
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したスイッチオーバー
スイッチオーバーの実行②
• ロールの切り替えおよびスタンバイ・データベースの起動が自動的に進行します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したスイッチオーバー
スイッチオーバーの実行③
• スイッチ・オーバーが完了しました
orcl2がプライマリ
orcl1がスタンバイ
Copyright© 2011, Oracle. All rights reserved.
<Insert Picture Here>
Agenda
• Data Guardの動作要件
• Data Guard構築
• スイッチ・オーバーの実行
• ファスト・スタート・フェイルオーバーの実行
29
Copyright© 2011, Oracle. All rights reserved.
Data Guardのフェイルオーバーのタイプ
• フェイルオーバーには、以下の2種類の実行方法があります
• ファスト・スタート・フェイルオーバー(自動フェイルオーバー)
• Oracle Database 10g Release 2 から利用可能な機能です
• 事前設定に基づき、プライマリ停止時に自動的にフェイルオーバーが実行されるようになります
• 手動操作の必要性を少なくして可用性を高め、管理コストを削減できます
• 監視サーバー(オブザーバ)を用意する必要があります
• 手動フェイルオーバー
• ファスト・スタート・フェイルオーバーの設定をしていない場合でも、従来通り手動によるフェイルオーバーを実行することは可能です
• ここでは、以下の手順を説明します
1. ファスト・スタート・フェイルオーバーの概要
2. ファスト・スタート・フェイルオーバーの有効化
3. プライマリ障害発生時の自動フェイルオーバー
30
P S
フェイルオーバー
Copyright© 2011, Oracle. All rights reserved.
ファスト・スタート・フェイルオーバーの概要
• ファスト・スタート・フェイルオーバーとは
• ブローカーは、設定条件に基づき、フェイルオーバーの必要性を判断し、自動的にフェイルオーバーを開始します
• 元のプライマリ・データベースは、障害の復旧後、オブザーバとの接続が確立すると、自動的に新しいスタンバイ・データベースとして再構成されます
• 再構成では、内部的にFlashback Databaseを使用して、障害発生直前まで
データをフラッシュバックし、ロールをスタンバイに変換します
31
【補足】ファスト・スタート・フェイルオーバーの実行条件
デフォルトでは、設定された時間しきい値内に、オブザーバもスタンバイもプライマリにアクセスできない場合に、ファスト・スタート・フェイルオーバーが実行されます。その他、必要に応じて、ファスト・スタート・フェイルオーバーを発生させる条件(健全性条件)を指定することができます。
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化①
• ファスト・スタート・フェイルオーバーは、現在無効になっています
• 「無効」をクリックして、ファスト・スタート・フェイルオーバーを有効化します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化②
• ファスト・スタート・フェイルオーバーを実現するには、オブザーバを構成する必要があります
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化③
• オブザーバを構成するホストを指定します
Hintオブザーバは別ホストに構成することが推奨されています
可用性を高めるため、複数の場所にオブザーバを配置することもできます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化④
• フェイルオーバーのタイミングや、障害時のプライマリ・データベースの動作を指定することができます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化⑤
• フラッシュバック・ロギングが有効化されていない場合、有効化されます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの有効化⑤
• ファスト・スタート・フェイルオーバーが有効化されます
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行①
• 現在のプライマリ・データベースが「orcl1」であることを確認します
orcl2がスタンバイ
orcl1がプライマリ
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行②
• プライマリ・データベース(orcl1)の障害をシュミレートします
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行③
• 自動的にフェイルオーバーが実行され、スタンバイ・データベース(orcl2)がプライマリ・データベースとして起動します
自動的にプライマリとして起動
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行④
• 新プライマリ(旧スタンバイ)の管理画面にアクセスします
• ステータスの「データベースを回復する必要があります」をクリックします
orcl2がプライマリ
orcl1がスタンバイ
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行⑤
• 「回復」ボタンをクリックします
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行⑥
• 旧プライマリ・データベースの回復作業が自動的に進行します
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行⑦
• 旧プライマリ・データベースが、スタンバイ・データベースとして回復されます
orcl2がプライマリ
orcl1がスタンバイ
Copyright© 2011, Oracle. All rights reserved.
Enterprise Managerを使用したフェイルオーバー
ファスト・スタート・フェイルオーバーの実行⑧
• 旧プライマリ・データベースが、スタンバイ・データベースになったことを確認します
Copyright© 2011, Oracle. All rights reserved.