こんにちは。k.otsukaです。
Base Database Serviceの新しいバックアップ方式である"Autonomous Recovery Service(自立型リカバリ・サービス)"が2023年2月頃にリリースされました。
今後BaseDBを構築するにあたり、今までのバックアップと結局何が異なり、どのようなサービスなのかという点は知っておくべきかなと思ったので、ざっくりとまとめながらどのようなものなのかを紹介してみます。
目次
利用時の注意
Autonomous Recovery Service(以下、RCV)を利用するための諸注意を紹介します。
1.サービス制限のリクエスト
RCVはサービス制限のリクエストの実施が必要となります。カテゴリに"Autonomous Recovery Service"が追加されているので、「Space Used For Recovery Window(GB)」と「Protected Database Count」を選択し、制限の緩和リクエストをOracleサポートに申請しましょう。
(申請してからおおよそ1週間でRCVが選択できるようになりました)
2.Oracle Databaseのバージョン
RCVは2023年5月現在、19cの場合19.16以上、21cの場合は21.7以上でなければ利用することができません。これからBaseDBを構築する場合は特に意識する必要はありませんが、それ以前にBaseDBを構築し運用を既に開始している場合、Oracle Databaseのバージョンをアップグレードする必要があります。バージョンアップは数時間の利用停止が余儀なくされますので、ご検討の際はご注意ください。
利用までの流れ
RCV利用開始までの流れを紹介します。
1.IAMポリシーの作成
のちに紹介する「リカバリ・サービス・サブネット」作成のために「RECOVERY_SERVICE_SUBNET_CREATE」のポリシーを保持しておく必要があります。本記事ではもっとも簡単なポリシー設定を記載します。厳格にポリシー設定を実施する場合は公式ドキュメントを参考ください。
Allow group 【グループ】 to manage recovery-service-protected-database in tenancy
Allow group 【グループ】 to manage recovery-service-family in tenancy
これに加えて、下記ポリシーもルートコンパートメントに追加する必要があります。
ポリシーが持つ用途については公式ドキュメントをご確認ください。
Allow service database to manage recovery-service-family in tenancy
Allow service database to manage tagnamespace in tenancy
Allow service rcs to manage recovery-service-family in tenancy
Allow service rcs to manage virtual-network-family in tenancy
2.リカバリ・サービス・サブネット(RSS)の作成
ポリシー設定後、リカバリ・サービス・サブネット(Recovery Service Subnet)を作成します。当サブネットは「サイダーが/24のプライベートサブネットであること」、「RCV対象BaseDBと兼用もしくはRSS専用であること」が推奨されています。加えてセキュリティ・リストでBaseDBが存在するVCNサイダーに対して「8005ポート/TCP」「2484ポート/TCP」のイングレスルールを設定する必要があります。
ナビゲーションメニュー ⇒ [Oracle Database] ⇒ [データベース・バックアップ] ⇒ [リカバリ・サービス・サブネット]と画面を移動し、[リカバリ・サービス・サブネットの登録]ボタンから推奨構成のサブネットを対象にRSSを作成しましょう。
3.RCVの設定
BaseDBの自動バックアップの構成画面より「オブジェクト・ストレージ」から「自立型リカバリ・サービス」に保存先を変更することでRCVの方式でBaseDBのバックアップが実施されるようになります。
変更時に保護ポリシーを設定する必要があります。デフォルトでは4種類のポリシーが用意されているので要件に合わせて保護ポリシーを選択します。独自のポリシーを作成も可能で、14~95日間から好きな日数を指定することができます。
ポリシー | 保持期間 |
---|---|
Platinum | 95日間 |
Gold | 65日間 |
Silver | 35日間 |
Bronze | 14日間 |
また、[リアルタイム・データ保護]にチェックマークを入れることで、さらに強化されたRCVを使用することができます。それらのバックアップ方式の違いについては次項を参照ください。
バックアップ方式の違い
2023年5月現在、BaseDBには3種類のマネージドバックアップが存在します。内部的には全てRMANバックアップが実行されておりバックアップされている内容も同じようですが、保存先や使われているソリューションに違いがあるようです。公式ドキュメントから要点のみ抜粋してみました。
オブジェクト・ストレージへのバックアップ
これまで利用していたバックアップ方式です。Object Storageをバックアップの保存先として指定されており、特別な設定は不要でワンクリックでバックアップ設定を実施することができます。
現在では、バックアップスケジュールを任意の曜日且つ任意の時間に設定することができるようになったため、以前よりも柔軟且つ簡単にバックアップ/リストアを実施することができます。
特殊な操作をすることで、保存先をローカルディスクや指定のObject Storageに変更することもできます。
リカバリ・サービスを利用したバックアップ(RCV)
今回リリースされた新しいバックアップ方式で、Oracle Databaseのバックアップ/リストア用に構築されたソリューション(Oracle Zero Data Loss Recovery Appliance)を利用したものとなります。従来のバックアップでは、週次のフルバックアップ/日次の増分バックアップを取得していましたが、RCVでは日次の増分バックアップのみとなります。
Object Storageではなく、専用のソリューション内にバックアップファイルやアーカイブREDOログを保存することで、Object Storageへのバックアップ時よりも高速なリストアを実現し、RTO(目標復旧時間)の向上が見込まれます。なお、稼働中のBaseDBとバックアップとのラグは最大で1時間となります。
※ExaCSの場合最大30分
これまでのバックアップよりも若干高価ですが、選ばない手はないと思えるバックアップ方式です。公式ドキュメントも「推奨」と表記しているので、初めの面倒な準備は有るものの、バックアップを選択する際はRCVを選ぶと良いかなと思います。
リカバリ・サービスを拡張したバックアップ(ZRCV)
RCVにリアルタイム・データ保護機能を有効化することでRPO(目標復旧時点)を"ほぼゼロ"にすることを実現したバックアップ方式です。従来のバックアップやRCVよりもさらに高価になりますが、DB更新時に作成されるREDOログをリカバリ・サービスへ"継続的に"転送する機能が追加され、データ損失を最小限に抑えることができるようになります。
料金比較
ざっくりと料金や課金対象などをまとめてみました。バックアップ方式を選ぶ際の参考にしてみてください。
※本表では、長いので従来のバックアップを「OBJ(オブジェクト・ストレージ)」と表記します。
※価格は2023年5月時点のものとなります。
比較対象 | OBJ | RCV | ZRCV |
価格(1GB当たり) | ¥3.57 | ¥4.284 | ¥5.6 |
課金対象 | ・RMANによるバックアップ - Level0(フルバックアップ) - Level1(増分バックアップ) ・アーカイブREDOログ | 左記同様 ※但しフルバックアップは初回のみ | 左記同様 |
バックアップ周期 | 週次フルバックアップ 日次増分バックアップ | 永久に増分バックアップ | 左記同様 |
保存期間 (リカバリ・ウィンドウ) | 7日/15日/30日/45日/60日 | 14日/35日/65日/95日 ※保護ポリシーを作成することで 日数の調整が可能 | 左記同様 |
バックアップ設定 | 簡単 | 少し困難 | 少し困難 |
REDOログのバックアップ頻度 | おおよそ60分 | おおよそ60分 | 継続的に実施 |
おすすめポイント | 価格が安価 | RTOが従来に比べて向上 | RTOに加えRPOも向上 |
まとめ
BaseDBで設定可能なマネージドバックアップについて簡単にまとめてみました。RTOやRPOを意識しない場合は従来のバックアップで良いですが、「復旧時間をなるべく早くしたい」「リストア時のラグを最小限に抑えたい」といった要件が有る場合は、今回紹介したバックアップ方式を検討してみるのも良いかなと思います。
まだ実際には使えていないので、実際に使ってみて注意したほうが良い点があったときには、ブログもしくはTwitterによる発信を考えているので、引き続きよろしくお願いいたします。