(作業中)
1.Oracle SEHAについて
Oracle 19c からSE2RACが廃止となりましたが、
リリースアップデート19.7からHA(High Availability)構成が可能となりました。
・Oracle Database 19.7およびOracle Grid Infrastructure 19.7が必要
・クラスタソフトウェアはOracle Grid Infrastructure リリースアップデート19.7に含まれるOCW(Oracle Clusterware)
・本番サーバ・待機サーバのフェイルオーバー構成
・待機サーバの稼働日数が年間10日以内であれば待機サーバのライセンス不要
参考:HA構成におけるライセンスカウントについて
https://faq.oracle.co.jp/app/answers/detail/a_id/2637/~/ha%E6%A7%8B%E6%88%90%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%A9%E3%82%A4%E3%82%BB%E3%83%B3%E3%82%B9%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6
(オラクル社のライセンスカウントFAQの記載にしたがい、以下、SEHAのノードについて本番サーバ・待機サーバと記載します)
2.NetVaultでOracle SEHAをバックアップするには
以下の2つのパターンが考えられます
①クラスタとみなさず、本番サーバから、OracleシングルインスタンスをOracle Pluginでバックアップ
②SEHAの仮想IP(VIPまたはSCAN)でNetVault仮想クライアントとOracle Cluster Pluginをセットアップし、
通常は本番サーバからバックアップ、フェイルオーバー発生時は待機サーバからバックアップ
しかし、現時点ではOCW(Oracle Clusterware)はNetVaultではクラスタソフトウェアとしてサポートしていませんので、
パターン①をご検討いただくことになります。
以下、パターン①で試してみました。
(1)Oracle19.7でSEHAを構築
(2)本番サーバからNetVaultとOracle Pluginでシングルインスタンスをバックアップ
(3)待機サーバにフェイルオーバーし、待機サーバにNetVaultとOracle Pluginをセットアップ
(4)待機サーバで、本番サーバから取得したバックアップをリストア
3.検証環境
・構成図
・OSおよびソフトウェアのバージョン
3.1 NetVaultサーバ環境
OS: |
Oracle Linux 8.3 |
ホスト名: |
o83test |
NetVault Core: |
13.0.1 |
バックアップストレージ: |
VTL |
3.2 SEHA環境
|
本番サーバ |
OS: |
Oracle Linux 8.3 |
ホスト名: |
O83O198P |
NetVault Core: |
13.0.1 |
Oracle Plugin: |
12.3 |
Database |
オラクル社 Oracle 19c (19.7.2.0) |
Cluster Software |
オラクル社 Grid InfraStructure 19.7.2.0 (OCW) |
|
待機サーバ |
OS: |
Oracle Linux 8.3 |
ホスト名: |
O83O198S |
NetVault Core: |
13.0.1 |
Oracle Plugin: |
12.3 |
Database |
オラクル社 Oracle 19c (19.7.2.0) |
Cluster Software |
オラクル社 Grid InfraStructure 19.7.2.0 (OCW) |
4.検証内容
(1)Oracle19.7でSEHAを構築
・SEHAの構築については以下を参考にしました
Installing Standard Edition High Availability Database Software on Local File System
https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/installing-seha-on-local-file-system.html
Oracle Grid Infrastructureをセットアップし、ASMで共有ディスクを構築しますが
dbcaではRACではなくSingle Instance Database Installationでシングルインスタンスを作成します。
したがって基本的にシングル構成のDBとして扱えます
(2)本番サーバからNetVaultとOracle Pluginでシングルインスタンスをバックアップ
簡単設定ガイドを参考に、バックアップサーバ、本番サーバにNetVaultをインストールし、バックアップサーバに本番サーバをNetVaultクライアントとして登録します。
バックアップサーバ(Oracle Linux8.3)にNetVault Server 13.0.1(Linux版Pure64)をインストールしました。 | |
本番サーバ(Oracle Linux8.3)にNetVault Client 13.0.1(Linux版Pure64)をインストールしました | |
バックアップサーバにバックアップデバイスとしてVTLを作成します | |
クライアント管理で本番サーバ(o83o198p)をクライアントとして登録します。 | |
Oracle Pluginのインストール | |
Oracle 側の事前設定 https://www.quest.com/community/jp-ja/w/data-protection-wiki/961/oracle |
|
Oracle Pluginの設定 https://www.quest.com/community/jp-ja/w/data-protection-wiki/960/oracle-plug-in |
|
フルバックアップジョブを作成 | |
(3)待機サーバにフェイルオーバーし、待機サーバにNetVaultとOracle Pluginをセットアップ
srvctlで待機サーバにフェイルオーバー
前項(2)と同じように、待機サーバにNetVaultクライアントとOracle Pluginをインストール・設定し
確認のためフルバックアップジョブを作成・実行
(4)待機サーバ側で、本番サーバから取得したバックアップをリストア
本番サーバから取得したバックアップを選択してリストアジョブを実行
4-1 | リストアジョブの作成 |
4-2 |
本番サーバO83O198Pのバックアップジョブを選択 |
4-3 | プラグインオプションの編集 USERS表領域のみなので、テーブルスペース/データファイルのリストアを選択 ![]() 「リストアを行う前に、リストア対象のテーブルスペースをオフラインにします」をチェック 「リストア完了後に、リストア対象のテーブルスペースをオンラインにします」をチェック ![]() 完全なリカバリーをしますを選択して、OKをクリック ![]() |
4-4 | リストアジョブ作成画面に戻るので クライアント指定に、待機サーバからリストアするように待機サーバO83O198sを指定する ![]() |
4-5 | 保存&実行ボタンをクリックし、リストアジョブを実行する![]() |
4-6 | リストアジョブが正常終了することを確認する![]() |
5.暫定的な考察
以上の結果から
本番サーバで通常時バックアップしておき、待機サーバでのOracle稼働は年間10日以下ルールを適用してOracleライセンスコストを下げ
本番サーバ障害時は待機サーバでは10日以内のみ一時的にバックアップ、および必要に応じて本番サーバで取得したバックアップをリストア
するような運用が可能になると言えるのではないでしょうか。
応用としてHinemosなどの運用管理ツールとの連携案
本番サーバ、待機サーバにそれぞれNetVaultクライアントとOracle Pluginをセットアップしておき、
バックアップジョブをトリガジョブとして作って、
運用管理ツールから起動しておくようにすれば
運用管理ツールで本番・待機サーバどちらでOracleインスタンスが動いているか監視し
運用管理ツールから稼働しているサーバ側のトリガジョブを起動するという運用も可能ではないでしょうか。
- 本ドキュメントは、検証作業や検証結果についてまとめたものを紹介しているものであり、本ドキュメントに関する内容について、クエスト・ソフトウェア株式会社が動作を保証するものではありません。各ソフトウェアのバージョンおよび環境等の違いにより動作しない場合も想定されますので、導入の際には事前に検証をされることを推奨いたします。
- 記載されている会社名および製品名などは該当する各社の商標または登録商標です。
- 本手順で説明している他社製品の操作詳細については、各社のマニュアル等をご参照ください。
作成:2021年1月