はじめに

こんにちは!
2019年新卒で入社した「たくみ」です。

今回は、Oracle Cloud Infrastructure(OCI)の
ブロック・ボリュームのバックアップ・ポリシーについてご紹介します!

下記の記事にて、ブロック・ボリュームのバックアップ及びリストアについてご紹介しておりますが、
今回はポリシーを用いて、バックアップを定期的に自動で取得する方法についてご紹介したいと思います!

関連記事はこちら↓
OCI ブート・ボリュームのバックアップ・リストア

バックアップ・ポリシーについて

ブロック・ボリュームのバックアップ・ポリシーですが、大きく分けて下記の2種類あります。

  • ユーザー定義
    スケジュール・タイプ(バックアップ頻度)や保持期間等を自分でカスタマイズできるポリシーです。
  • Oracle定義
    Oracleによって事前に定義されたポリシーです。
    直接変更することはできませんが、複製することで、Oracle定義バックアップ・ポリシーをベースとした、
    ユーザー定義バックアップ・ポリシーを作成することも可能です!

これらのバックアップ・ポリシーをブロック・ボリュームに割り当てることで、使用可能となります。
それぞれについて見ていきましょう!

ユーザー定義バックアップ・ポリシー

こちらは読んで字のごとく、
ユーザーが自分でバックアップ頻度や保持期間を定義できるバックアップ・ポリシーになります。

スケジュール

ユーザー定義バックアップ・ポリシーを作成したら、スケジュールを作成し、
バックアップ頻度や保持期間を定義します。
まず、スケジュール・タイプ(バックアップ頻度)についてですが、以下の4種類の中から選択できます!

  • 毎日
    バックアップを毎日取得します。取得する時間(1時間単位)を指定できます。
    例:02:00
  • 毎週
    バックアップを週次で取得します。毎週、バックアップを取得する曜日と該当日の取得時間を指定できます。
    例:月曜日 02:00
  • 毎月
    バックアップを月次で取得します。毎月、バックアップを取得する日と該当日の取得時間を指定できます。
    例:(毎月)10日 02:00
  • 毎年
    バックアップを年次で取得します。毎年、バックアップを取得する月日、該当日の取得時間を指定できます。
    例:(毎年)1月10日 02:00

次に保持期間を指定できます。
こちらの期間はスケジュール・タイプに基づいて指定できます。
例 スケジュール・タイプが毎週の場合:1週間、2週間…. 保存。

次にバックアップ・タイプを指定します。
完全増分の2種類ありますが、実はデータ・リカバリの目的では、これらに機能的な違いはありません。
こちらについては、また別記事でご紹介しますね!

最後にタイム・ゾーンです。
スケジュール・タイプで指定した時刻のタイム・ゾーンについて、
UTCリージョナル・データ・センター時間のどちらかを選択できます。
リージョナル・データ・センター時間は、使用しているリージョンの時刻になりますので、
東京や大阪リージョンを使用している場合、基本的にはこちらの方が良いかと思います!

Oracle定義バックアップ・ポリシー

こちらはOracleによってックアップ頻度や保持時間が事前定義されたバックアップ・ポリシーになります!
先述の通り、直接変更することはできませんが、
複製して、ユーザー定義バックアップ・ポリシーのベースにすることは可能です!

種類は以下の3種類です!

  • ブロンズ・ポリシー
    以下のスケジュールが設定されてます。
    • スケジュール1
      スケジュール・タイプ:毎年 1月1日 0:00
      保持時間      :5年
      バックアップ・タイプ:増分
      タイム・ゾーン   :リージョナル
    • スケジュール2
      スケジュール・タイプ:毎月 1日 0:00
      保持時間      :12ヶ月
      バックアップ・タイプ:増分
      タイム・ゾーン   :リージョナル
  • シルバー・ポリシー
    ブロンズ・ポリシーに含まれているスケジュールに加え、
    下記スケジュールが設定されています。
    • スケジュール3
      スケジュール・タイプ:毎週 月曜日 0:00
      保持時間      :4週間
      バックアップ・タイプ:増分
      タイム・ゾーン   :リージョナル
  • ゴールド・ポリシー
    シルバー・ポリシーに含まれているスケジュールに加え、
    下記スケジュールが設定されています。
    • スケジュール4
      スケジュール・タイプ:毎日 0:00
      保持時間      :1週間(7日)
      バックアップ・タイプ:増分
      タイム・ゾーン   :リージョナル

その他機能

その他、バックアップ・ポリシーでは以下のことができます!

既存のバックアップ・ポリシーの複製

何度か言及しておりますが、既存バックアップ・ポリシーを複製することができます!
複製することで、Oracle定義バックアップ・ポリシーをベースとしたユーザー定義バックアップ・ポリシーを作成可能です!

リージョン間での
ボリューム・バックアップ・コピーのスケジューリング

ボリューム・バックアップはリージョン間でコピーすることが可能です!
バックアップ・ポリシーでは、コピー先のリージョンを指定することで、
バックアップのスケジュールに従って、自動でリージョン間コピーがされるようにできます!
こちらは、Oracle定義バックアップ・ポリシーに対しては指定ができませんので、
このバックアップ・ポリシーに対して、この機能を使用したい場合は、
Oracle定義バックアップ・ポリシーを複製する必要があります。

バックアップ・ポリシーの実機検証

ここからは、実機を用いて、バックアップ・ポリシーの設定方法や、
自動的にバックアップが取得される様子についてご紹介します!

早速、バックアップ・ポリシーを作成していきます!

バックアップ・ポリシーの作成

まず、OCI画面の左上にある「≡」から、コンソールメニューを開き、
「ストレージ」>「バックアップ・ポリシー」の順にクリックします。

下記のようなバックアップ・ポリシー一覧画面が出てきます。
Oracle定義バックアップ・ポリシーも確認できますね!
ここで「バックアップ・ポリシーの作成」をクリックして、ポリシーの作成画面に移動します。

バックアップ・ポリシーの作成画面が出てきたら、以下の項目を設定し、
「バックアップ・ポリシーの作成」をクリックします。
  • 名前
    バックアップ・ポリシーの名前を指定します。ここでは「TEST_POLICY」としています。
  • コンパートメント
    バックアップ・ポリシーを作成するコンパートメントを指定します。
  • クロス・リージョン・コピーのターゲット
    リージョン間でのボリューム・バックアップ・コピーをスケジューリングする場合は、
    コピー先のリージョンを指定します。今回はスケジューリングしないので、「なし」となってます。
  • タグ・ネームスペース、タグ・キー、タグ値
    タグを設定する場合は入力します。

無事に作成ができました!
ポリシー名をクリックして、詳細画面に入ります。

スケジュールの作成
バックアップ・ポリシーの詳細画面を見ると、スケジュールが設定されていませんね。
そこで、「スケジュールの追加」をクリックして、設定していきましょう!

スケジュールの追加画面が出てきたら、以下の項目を設定し、
「スケジュールの追加」をクリックします。

  • 「スケジュール・タイプ」
    バックアップの実行頻度を設定します。検証では「毎日」を指定します。
  • 「該当日の時間」
    スケジュール・タイプを毎日にした場合、バックアップを実行する時刻を指定します。
    ここでは「13:00」としています。
  • 「日での保持時間」
    スケジュール・タイプを毎日にした場合、バックアップの保持期間を日単位で指定できます。
    ここでは「1」(日)としています。
  • バックアップ・タイプ
    「増分」としています。
  • タイム・ゾーン
    「リージョナル・データ・センター時間」としています。

無事にスケジュールの追加も完了です!

ブロック・ボリュームへのバックアップ・ポリシーの割り当て

作成したバックアップ・ポリシーですが、
バックアップ対象のブロック・ボリュームに割り当てる必要があります。
そこでブロック・ボリュームの詳細画面から、バックアップ・ポリシーを割り当てていきましょう!

今回は「test_block_volume」に割り当てます。
ブロック・ボリュームの詳細画面の「スケジュール済みバックアップ」を見ると、
バックアップ・ポリシーが「なし」になってますね。
そこで、「編集」をクリックして、バックアップ・ポリシーを割り当てていきます!

ボリュームの編集画面が出てきたら、下にスクロールして、
「バックアップ・ポリシー」の部分を確認します。
「バックアップ・ポリシーの選択」箇所で、先ほど作成したバックアップ・ポリシーを設定し、
「変更の保存」をクリックします!

ブロック・ボリュームの詳細画面を見ると、
バックアップ・ポリシーが設定されていることを確認できますね!
あとは時間になるまで待つだけです!

バックアップの取得

ということで、時間になりました!
早速、バックアップが取得されているか見てみましょう。

バックアップの詳細画面をスクロールして、
左下の「リソース」「ブロック・ボリュームのバックアップ」から確認できます。

ちゃんとバックアップが取得されてますね!
作成日がUTC時間になってますが、日本時間に直す(+9時間)と13時です。
ちゃんと設定した時間に取得されてます!

そして有効期限を見てください!
設定した保持期間通り、有効期限が1日になってますね!
そのまま1日待つと。。。。

「状態」の箇所を見てください!
前日に取得したバックアップが終了済(削除)になって、新たにバックアップが取得されてますね!

無事にスケジューリング通りにローテーションされていることも確認できました!

まとめ

いかがだったでしょうか。
今回はブロック・ボリュームのバックアップ・ポリシーについてご紹介しました。

簡単にバックアップのスケジューリングができるというのが良いですよね!

本記事が実際の作業の参考となりましたら幸いです。
最後までご精読頂きまして、ありがとうございました。

お問い合わせはこちら

投稿者プロフィール

技術チーム
技術チーム
DBひとりでできるもんを盛り上げるべく、技術チームが立ち上がり早8年。ひとりでできるもんと言いつつ、技術者が読んでプッとなるような、極めてピンポイントでマニアックな技術ネタを執筆しています!
最新技術情報や資格情報をチェックしたいアナタ!毎日遊びに来てください。きっとお役に立てます。