はじめに

みなさん、こんにちは。

Oracle Cloud Infrastructure検証チームです。

今回は、Oracle Cloud Infrastructure(OCI)のコマンドライン・インタフェース(CLI)を使用して、ボリュームバックアップを実施する方法について、ご紹介したいと思います。

事前準備

OCI はブラウザの管理コンソールからサービスの作成・更新・起動・停止といった操作を行っていますが、ブラウザではなくCLIのコマンドラインによるツールとして「OCI CLI」が無償で提供されています。

利用するためには OCI CLI のインストールが必要となります。
今回はボリューム・バックアップのご紹介ですので、インストールされている前提で進めていきます。

ボリューム・バックアップ対象の確認

バックアップを行う上で必要な情報を確認します。

対象ボリュームの種類

  • ブート・ボリューム(oci bv boot-volume-backup create)
  • ブロック・ボリューム(oci bv backup create)

ボリュームの種類によってバックアップコマンドが異なるため、注意が必要です。
今回はブート・ボリュームのバックアップをしたいと思います。

対象インスタンスのブートボリュームのOCID確認

取得するためにブート・ボリュームのIDを確認します。

インスタンスの詳細画面から(コンピュート⇒インスタンス⇒インスタンスの詳細)、下にスクロールすると左側にリソース一覧があるため、「ブート・ボリューム」をクリックするとブート・ボリュームが表示されるため、「ブート・ボリュームの詳細の表示」をクリックします。


「ブート・ボリュームの詳細の表示」をクリックしたあと、ブート・ボリューム情報の下にある「OCID:」の右にあるコピーから取得したいボリュームのIDをコピーすることができます。

バックアップ取得時に使用するため、テキストなどにコピーしておきます。
これで準備は完了です。
実際にバックアップを取得していきましょう。

ボリューム・バックアップ取得

以下のようなコマンドを実行し、バックアップを取得します。
取得する際にサーバの停止は不要です。
オンラインによるバックアップを実施することも可能です。

実行時には下記オプションの指定が必要です。

–boot-volume-id 「2.対象インスタンスのブートボリュームのOCID確認」で確認したOCIDを指定します。

また、任意でオプションが指定できます。今回利用するオプションを紹介します。

–display-name 分かりやすいバックアップ名を指定します。
–type 全体バックアップ場合:FULL
増分バックアップの場合:INCREMENTAL
※初回バックアップの場合「INCREMENTAL」を指定しても全体バックアップとなります。

 

$ oci bv boot-volume-backup create --volume-id <boot_volume_OCID> --display-name <Name> --type <FULL|INCREMENTAL>
[opc@test-instance ~]$ oci bv boot-volume-backup create --boot-volume-id ocid1.bootvolume.oc1.ap-tokyo-1.XXXXX --display-name demo-backup --type FULL
{
  "data": {
    "boot-volume-id": "ocid1.bootvolume.oc1.ap-tokyo-1.XXXXX",
    "compartment-id": "ocid1.compartment.oc1..XXXXX",
    "defined-tags": {
      "Oracle-Tags": {
        "CreatedBy": "oracleidentitycloudservice/XXXXX",
        "CreatedOn": "2022-12-14T10:31:58.287Z"
      }
    },
    "display-name": "demo-backup",
    "expiration-time": null,
    "freeform-tags": {},
    "id": "ocid1.bootvolumebackup.oc1.ap-tokyo-1.XXXXX",
    "image-id": "ocid1.image.oc1.ap-tokyo-1.XXXXX",
    "kms-key-id": null,
    "lifecycle-state": "REQUEST_RECEIVED",
    "size-in-gbs": 50,
    "source-boot-volume-backup-id": null,
    "source-type": "MANUAL",
    "system-tags": {},
    "time-created": "2022-12-14T11:53:34.596000+00:00",
    "time-request-received": "2022-12-14T11:53:34.534000+00:00",
    "type": "FULL",
    "unique-size-in-gbs": 0
  },
  "etag": "5daaf95340df7edbc2e2fe9ae6cc1bf4"
}

ボリューム・バックアップ確認

取得が完了したら以下のコマンドで取得したボリューム・バックアップの確認を実施します。

実行時には「–compartment-id」オプションにOCIDを指定した上で、任意でオプションが指定できます。今回利用するオプションを紹介します。

–display-name ボリューム・バックアップ取得時のバックアップ名を指定します。指定しておくことでバックアップ取得後の確認が容易になります。

“lifecycle-state”が AVAILABLE となっていれば取得完了となっています。

$ oci bv boot-volume-backup list --compartment-id <コンパートメントID> --display-name <バックアップ名>
[opc@test-instance ~]$ oci bv boot-volume-backup list --compartment-id ocid1.compartment.oc1..XXXXX --display-name demo-backup
{
  "data": [
    {
      "boot-volume-id": "ocid1.bootvolume.oc1.ap-tokyo-1.XXXXXX",
      "compartment-id": "ocid1.compartment.oc1..XXXXX",
      "defined-tags": {
        "Oracle-Tags": {
          "CreatedBy": "oracleidentitycloudservice/XXXXX",
          "CreatedOn": "2022-12-14T10:31:58.287Z"
        }
      },
      "display-name": "demo-backup",
      "expiration-time": null,
      "freeform-tags": {},
      "id": "ocid1.bootvolumebackup.oc1.ap-tokyo-1.XXXXX",
      "image-id": "ocid1.image.oc1.ap-tokyo-1.XXXXX",
      "kms-key-id": null,
      "lifecycle-state": "AVAILABLE",
      "size-in-gbs": 50,
      "source-boot-volume-backup-id": null,
      "source-type": "MANUAL",
      "system-tags": {},
      "time-created": "2022-12-14T11:53:37.863000+00:00",
      "time-request-received": "2022-12-14T11:53:34.534000+00:00",
      "type": "FULL",
      "unique-size-in-gbs": 6
    }
  ]
}

おわりに

今回は OCI CLI を使用したボリュームバックアップを試してみましたが、いかがでしたでしょうか?

このように簡単にブートボリューム・ブロックボリュームのバックアップを取得できます。
スクリプト化を行いcron登録などを行うことで、自動化するといったことも可能です。

最後までご覧いただきありがとうございました!

Oracle Cloudをご検討の際は当社までお問い合わせください!

投稿者プロフィール

技術チーム
技術チーム
DBひとりでできるもんを盛り上げるべく、技術チームが立ち上がり早5年。ひとりでできるもんと言いつつ、技術者が読んでプッとなるような、極めてピンポイントでマニアックな技術ネタを執筆していきます!