スナップショットの管理 Block Storage for Classic

Block Storage for Classic のスナップショットの作成、スケジュール設定、管理方法を学び、パフォーマンスへの影響を最小限に抑え、ストレージ容量の消費も最小限に抑えながらデータを保護しましょう。

コンソールでのスナップショットスケジュールの追加

スナップショットは IBM Cloud® Block Storage for Classic の機能の 1 つです。 スナップショットは、特定の時点におけるボリュームの内容を表しています。 スナップショットを使用すると、パフォーマンスに影響を与えることなく、スペース消費量を最小限に抑えて、データを保護できます。

「スナップショットスケジュール」を使用すると、ストレージボリュームの特定時点のリファレンスをどのくらいの頻度で、いつ作成するかを設定できます。 1 つのストレージ・ボリュームにつき、最大 50 個のスナップショットを使用できます。 スケジュールは、 IBM Cloud® コンソール の「 ストレージ 」>「 Block Storage for Classic 」タブから管理します。

初期スケジュールをセットアップする前に、まずスナップショット・スペースを購入する必要があります (ストレージ・ボリュームの初期プロビジョニング時にスナップショット・スペースを購入しなかった場合)。 詳しくは、スナップショットの注文を参照してください。

スナップショット・スケジュールは、時間単位、日単位、週単位の間隔でセットアップでき、それぞれに異なる保存期間を指定できます。 ストレージ・ボリュームごとのスナップショットの最大数は 50 個です。これは時間単位、日単位、週単位のスケジュールによるスナップショットと手動のスナップショットが混在していても構いません。

  1. ストレージ・ボリュームをクリックして、**「アクション」をクリックし、「スナップショット・スケジュールの編集」**をクリックします。
  2. 「スナップショット・スケジュール (Snapshot Schedule)」ウィンドウでは、3 つの異なるスナップショットの頻度から選択できます。 3 つの任意の組み合わせを使用して、包括的なスナップショット・スケジュールを作成します。
    • 毎時
      • スナップショットを実行する 1 時間ごとの分を指定します。 デフォルトは、現在の分です。
      • 最も古いスナップショットが破棄されるまでに保持される、時間単位のスナップショットの数を指定します。
    • 日次
      • スナップショットを取得する時分を指定します。 デフォルトは、現在の時分です。
      • 最も古いスナップショットが破棄されるまでに保持される、時間単位のスナップショットの数を選択します。
    • 毎週
      • スナップショットを取得する曜日、時、および分を指定します。 デフォルトは、現在の曜日、時、および分です。
      • 最も古いスナップショットが破棄されるまでに保持される、週単位のスナップショットの数を選択します。
  3. 保存 をクリックします。 そして、頻度が異なる別のスケジュールを作成することができます。 スケジュールされたスナップショットの総数が 50 を超えると、警告メッセージが表示され、別のスナップショットを保存できなくなります。

取得されたスナップショットのリストは、**「Block Storage for Classic の詳細」ページの「スナップショット」**セクションに表示されます。

CLI からスナップショットのスケジュールを追加する

スナップショットは IBM Cloud® Block Storage for Classic の機能の 1 つです。 スナップショットは、特定の時点におけるボリュームの内容を表しています。 スナップショットを使用すると、パフォーマンスに影響を与えることなく、スペース消費量を最小限に抑えて、データを保護できます。

「スナップショットスケジュール」を使用すると、ストレージボリュームの特定時点のリファレンスをどのくらいの頻度で、いつ作成するかを設定できます。 1 つのストレージ・ボリュームにつき、最大 50 個のスナップショットを使用できます。

初期スケジュールをセットアップする前に、まずスナップショット・スペースを購入する必要があります (ストレージ・ボリュームの初期プロビジョニング時にスナップショット・スペースを購入しなかった場合)。 詳しくは、スナップショットの注文を参照してください。

開始する前に、使用する CLI クライアントを決定します。

IBMCLOUD CLI からのスケジュールの追加

ibmcloud sl block snapshot-enable コマンドを使用して、スナップショット・スケジュールを作成します。 以下の例では、毎週日曜日の午前 2 時にスナップショットを取る週次スケジュールを作成します。 この例では、最大 5 つのスナップショットが保持されます。

$ ibmcloud sl block snapshot-enable 560156918 -s WEEKLY -c 5 -m 0 --hour 2 -d 0
OK
WEEKLY snapshots have been enabled for volume 560156918.

このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl block snapshot-enableを参照してください。

SLCLIからスケジュールを追加する

スナップショットのスケジュールを作成するには、次のコマンドを使用します。

$ slcli block snapshot-enable --help
Usage: slcli block snapshot-enable [OPTIONS] VOLUME_ID
  Enables snapshots for a given volume on the specified schedule
Options:
  --schedule-type TEXT    Snapshot schedule [INTERVAL|HOURLY|DAILY|WEEKLY]
                          [required]
  --retention-count TEXT  Number of snapshots to retain  [required]
  --minute INTEGER        Minute of the day when snapshots should be taken
  --hour INTEGER          Hour of the day when snapshots should be taken
  --day-of-week TEXT      Day of the week when snapshots should be taken
  -h, --help              Show this message and exit.

SLCLI で次のコマンドを使用して、スナップショット・スケジュールのリストを参照することもできます。

$ slcli block snapshot-schedule-list --help
Usage: slcli block snapshot-schedule-list [OPTIONS] VOLUME_ID
Options:
  -h, --help  Show this message and exit.

Terraform を使用したスナップショット・スケジュールの管理

スナップショットは IBM Cloud® Block Storage for Classic の機能の 1 つです。 スナップショットは、特定の時点におけるボリュームの内容を表しています。 スナップショットを使用すると、パフォーマンスに影響を与えることなく、スペース消費量を最小限に抑えて、データを保護できます。

スナップショット・スケジュールを作成するには、 ibm_storage_block リソースを使用し、 snapshot_schedule 引数に情報を指定します。 以下の例では、2 つの異なるスケジュールを定義しています。 1 つのスケジュールは、日曜日の午後 1 時 20 分に作成される週次スナップショットを対象としています。 新しいスナップショット用のスペースを確保するために、最も古いスナップショットが削除される前に、20 個のスナップショットが保持されます。 2 番目のスケジュールは、毎時スナップショットの場合です。

resource "ibm_storage_block" "test1" {
        type = "Endurance"
        datacenter = "dal13"
        capacity = 20
        iops = 0.25
        os_format_type = "Linux"
        # Optional fields
        allowed_virtual_guest_ids = [ 27699397 ]
        allowed_ip_addresses = ["10.40.98.193", "10.40.98.200"]
        snapshot_capacity = 10
        hourly_billing = true
        # Optional fields for snapshot
        snapshot_schedule {
        schedule_type   = "WEEKLY"
        retention_count = 20
        minute          = 20
        hour            = 13
        day_of_week     = "SUNDAY"
        enable          = true
        }
        snapshot_schedule {
        schedule_type   = "HOURLY"
        retention_count = 20
        minute          = 2
        enable          = true
  }
}

スケジュールを更新する場合は、これらの値を変更してリソースに適用します。 スケジュールを削除する場合は、その詳細を ibm_storage_block リソース定義から削除し、変更を適用します。

コンソールで手動でスナップショットを作成する

アプリケーションのアップグレードや保守の実行中に、さまざまな時点で手動スナップショットを取得できます。 また、一時的に非アクティブ化された複数のサーバーを対象に、アプリケーション・レベルでスナップショットを取得することもできます。

ストレージ・ボリュームごとのスナップショットの最大数は 50 です。

  1. ストレージ・ボリュームをクリックします。
  2. **「アクション」**をクリックします。
  3. **「手動スナップショットの取得 (Take Manual Snapshot)」**をクリックします。

スナップショットが取得され、**「Block Storage for Classic の詳細」ページの「スナップショット」**セクションに表示されます。 そのスケジュールは、手動として表示されます。

CLI から手動でスナップショットを作成する

IBMCLOUD CLI からのスナップショットの取得

ibmcloud sl block snapshot-create コマンドを使用して、特定のボリュームのスナップショットを取得できます。

$ ibmcloud sl block snapshot-create 562193766
OK
New snapshot 562208096 was created.

このコマンドで使用可能なすべてのパラメータの詳細については、「 ibmcloud sl block snapshot-create 」を参照してください。

SLCLIからのスナップショット

CLI からスナップショットを作成するには、次のコマンドを使用できます。

$ slcli block snapshot-create --help
Usage: slcli block snapshot-create [OPTIONS] VOLUME_ID
Options:
  -n, --notes TEXT  Notes to set on the new snapshot
  -h, --help        Show this message and exit.

コンソールで、使用容量の情報と管理機能を備えたすべてのスナップショットを一覧表示する

保持されているスナップショットのリストと、それらが占める容量は、「 Block Storage for Classic 」の詳細ページで確認できます。 管理機能(スケジュールの編集やスペースの追加など)は、「 Block Storage for Classic 詳細 」ページ内の「 アクション アクションアイコン 」メニュー、またはページ内の各セクションにあるリンクを使用して行います。 「スナップショット」ページには、ボリュームの容量と、そのうちの使用量が表示されます。

空き容量が75%、90%、95%に達すると、通知が届きます。

  • 使用率が75%に達すると、スナップショットの使用容量が75%を超えたことを知らせる警告が送信されます。 この問題を修正するには、手動でスペースを追加するか、保持されている不要なスナップショットを削除します。 スケジュールに保持されるスナップショットの数を減らすことができます。 スナップショットデータを削減するか、容量を増やすと、警告システムがリセットされ、自動削除は発生しません。
  • 使用率が90%に達すると、スナップショットの使用容量が90%を超えた際に2回目の警告が送信されます。 容量が75%に達した場合と同様に、スナップショットデータを削減するか、空き容量を増やすための必要な措置を講じれば、警告システムはリセットされ、自動削除は行われません。
  • 使用率が95% に達すると、最終警告が送信されます。 スペース使用量をしきい値以下にするためのアクションが実行されない場合、自動削除が開始され、将来のスナップショットを作成できるようになります。 使用率が95%を下回るまで、最も古いものから順に、スケジュールされたスナップショットが削除されます。 使用率が95%を超えるたびに、その値が閾値を下回るまでスナップショットが削除され続けます。 スペースが手動で増やされるか、スナップショットが手動で削除されると、警告はリセットされ、しきい値を再度超えた場合に再発行されます。 アクションを実行しなかった場合は、この通知が、受信する唯一の警告になります。

デフォルトでは、スナップショット警告通知はすべてのお客様に対して有効になっています。 ただし、無効にもできます。 この機能を無効にすると、すべてのチケットの生成と通知が停止します。 CLI からいつでもボリュームの通知を無効にしたり有効にしたりできます。

スナップショットの使用率が急激に増加した場合、最も古いスケジュール済みスナップショットが自動的に削除される前に、1回通知が届くことがあります。 例えば、15 分以内に使用率が 76% から 96% にジャンプすると、75% を超えたことに関する通知を 1 つと、95% を超えたことに関する通知を 1 つ受け取ります。

CLI からのすべてのスナップショットとスペース使用情報のリスト表示

IBMCLOUD CLI からのすべてのスナップショットのリスト

ibmcloud sl block snapshot-list コマンドを使用して、特定のボリュームのスナップショットをリストできます。

$ ibmcloud sl block snapshot-list 562193766
id          user_name             created                     size_bytes   notes
562208096   SL02SEVC1414935_651   2023-10-25T12:09:34-05:00   24000        -

このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl block snapshot-listを参照してください。

SLCLI からのすべてのスナップショットのリスト表示

このタスクは、CLI から次のコマンドを実行することで実行できます。

$ slcli block snapshot-list --help
Usage: slcli block snapshot-list [OPTIONS] VOLUME_ID
Options:
  --sortby TEXT   Column to sort by
  --columns TEXT  Columns to display. Options: id, name, created, size_bytes
  -h, --help      Show this message and exit.

CLI からの通知状況の確認と更新

空き容量が75%、90%、95%という3つの閾値に達すると、通知が送信されます。

  • 使用率が75%に達すると、スナップショットの使用容量が75%を超えたことを知らせる警告が送信されます。 この問題を修正するには、手動でスペースを追加するか、保持されている不要なスナップショットを削除します。 スケジュールに保持されるスナップショットの数を減らすことができます。 スナップショットデータを削減するか、容量を増やすと、警告システムがリセットされ、自動削除は発生しません。
  • 使用率が90%に達すると、スナップショットの使用容量が90%を超えた際に2回目の警告が送信されます。 容量が75%に達した場合と同様に、スナップショットデータを削減するか、空き容量を増やすための必要な措置を講じれば、警告システムはリセットされ、自動削除は行われません。
  • 使用率が95% に達すると、最終警告が送信されます。 スペース使用量をしきい値以下にするためのアクションが実行されない場合、自動削除が開始され、将来のスナップショットを作成できるようになります。 使用率が95%を下回るまで、最も古いものから順に、スケジュールされたスナップショットが削除されます。 使用率が95%を超えるたびに、その値が閾値を下回るまでスナップショットが削除され続けます。 スペースが手動で増やされるか、スナップショットが手動で削除されると、警告はリセットされ、しきい値を再度超えた場合に再発行されます。 アクションを実行しなかった場合は、この通知が、受信する唯一の警告になります。

スナップショットの使用率が急激に増加した場合、最も古いスケジュール済みスナップショットが自動的に削除される前に、1回通知が届くことがあります。 例えば、15 分以内に使用率が 76% から 96% にジャンプすると、75% を超えたことに関する通知を 1 つと、95% を超えたことに関する通知を 1 つ受け取ります。 システムは、90%-exceeded 警告をスキップします。

デフォルトでは、スナップショット警告通知はすべてのお客様に対して有効になっています。 ただし、無効にもできます。 この機能を無効にすると、すべてのチケットの生成と通知が停止します。 ボリュームの通知は、いつでも無効にしたり有効にしたりできます。

IBMCLOUD CLI での通知状況の確認

通知状況を確認するには、ibmcloud sl block snapshot-get-notification-status コマンドを使います。

$ ibmcloud sl block snapshot-get-notification-status 562193766
Enabled: Snapshots space usage threshold is enabled for volume '562193766'.

状況を変更するには、 --disable オプションを指定して snapshot-set-notification コマンドを使用します。

$ ibmcloud sl block snapshot-set-notification --disable  562193766
OK
Snapshots space usage threshold warning notification has been set to 'false' for volume '562193766'.

これらのコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl block snapshot-get-notification-status および bmcloud sl block snapshot-set-notification を参照してください。{external}

SLCLI での通知状況の確認

ストレージ・ボリュームに対して通知が有効になっているかの確認には、以下のコマンドを使用します。

$ slcli block snapshot-get-notification-status
Usage: slcli block snapshot-get-notification-status [OPTIONS] VOLUME_ID
  Get snapshots space usage threshold warning flag setting for a given volume
Options:
  -h, --help  Show this message and exit.

通知設定のステータスの変更には、以下のコマンドを使用します。

$ slcli block snapshot-set-notification VOLUME_ID
Usage: slcli block snapshot-set-notification VOLUME_ID [OPTIONS]
Options:
 --disable  Disable snapshot threshold warning notification for the storage volume
 --enable   Enable snapshot threshold warning notification for the storage volume
 -h, --help  Show this message and exit.

コンソールでボリュームのスナップショット領域を増やす

これまでスナップショット領域がなかったボリュームや、追加のスナップショット領域が必要なボリュームに、スナップショット領域を追加することができます。

スナップショット・スペースは増やすことができます。 減らすことはできません。 必要なスペース量が分かるまで、少量のスペースを選択できます。 自動スナップショットと手動スナップショットが同じ領域を共有しています。

スナップショット領域は、「 ストレージ 」> Block Storage for Classic 」から変更できます。

  1. ストレージ・ボリュームをクリックして、**「アクション」をクリックし、「スナップショット・スペースの変更」**をクリックします。
  2. プロンプトからサイズの範囲を選択します。 使用可能なスナップショット容量の割り当てについて詳しくは、 スナップショットの注文 を参照してください。
  3. 「続行」 をクリックします。
  4. お持ちのプロモーション・コードを入力して、**「再計算」**をクリックします。 「この注文の課金」フィールドと「注文の検討」フィールドは、デフォルトで入力されています。
  5. 利用規約をお読みいただき、その内容にご同意いただける場合はチェックボックスにチェックを入れ、「 注文する 」をクリックしてください。 数分のうちに、追加のスナップショット・スペースがプロビジョンされます。

コンソールでのスナップショットスケジュールの削除

スナップショットのスケジュールは、「 ストレージ 」> Block Storage for Classic からキャンセルできます。

  1. ボリュームIDをクリックすると、関連情報が表示されます。
  2. 「スナップショット」をクリックします。
  3. **「スナップショットのスケジュール」**フレームで、削除するスケジュールをクリックします。
  4. 削除したいスケジュールの横にあるチェックボックスをクリックし、「 保存 」をクリックしてください。

レプリケーション機能を使用している場合は、削除するスケジュールがレプリケーションで使用されるスケジュールでないことを確認してください。 レプリケーション・スケジュールの削除について詳しくは、データのレプリケーションを参照してください。

CLI からスナップショットのスケジュールを削除する

IBMCLOUD CLI からスナップショットのスケジュールを削除する

ibmcloud sl block snapshot-disable コマンドを使用して、特定のボリュームのスナップショット・スケジュールを削除できます。

$ ibmcloud sl block snapshot-disable 562193766 -s DAILY
OK
DAILY snapshots have been disabled for volume 562193766.

このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl block snapshot-disableを参照してください。

SLCLI からのスナップショット・スケジュールの削除

このタスクは以下のコマンドを使用して実行できます。

$ slcli block snapshot-disable --help
Usage: slcli block snapshot-disable [OPTIONS] VOLUME_ID
  Disables snapshots on the specified schedule for a given volume
Options:
  --schedule-type TEXT  Snapshot schedule [INTERVAL|HOURLY|DAILY|WEEKLY]
                        [required]
  -h, --help            Show this message and exit.

レプリケーション機能を使用している場合は、削除するスケジュールがレプリケーションで使用されるスケジュールでないことを確認してください。 レプリケーション・スケジュールの削除について詳しくは、データのレプリケーションを参照してください。

コンソールでのスナップショットの削除

不要になったスナップショットを手動で削除して、今後のスナップショット用にスペースを解放することができます。 削除は「 ストレージ 」> Block Storage for Classic 」から行います。

  1. ストレージ・ボリュームをクリックして**「スナップショット」**をクリックし、既存のスナップショットのリストを表示します。
  2. 特定のスナップショットの横にある「 アクション アクションアイコン 」をクリックし、「 削除 」をクリックします。 データが失われる可能性があることを警告する確認ボックスをクリックしてから、**「削除」**をクリックします。 スナップショットは相互に依存しないため、この削除によって同じスケジュールの将来または過去のスナップショットが影響を受けることはありません。

手動で削除されていないマニュアルのスナップショットは、容量制限に達した場合、別のスナップショットを取得すると自動的に削除されます。 最も古いスナップショットが最初に削除されます。

CLI からスナップショットを削除する

不要になったスナップショットを手動で削除して、今後のスナップショット用にスペースを解放することができます。

ポータルで手動により削除されなかった手動スナップショットは、スペースの制限に達すると自動的に (古いもの順に) 削除されます。

IBMCLOUD CLI からのスナップショットの削除

ibmcloud sl block snapshot-delete コマンドを使用して、特定のスナップショットを削除できます。

$ ibmcloud sl block snapshot-delete 562208096
OK
Snapshot 562208096 was deleted.

このコマンドで使用可能なすべてのパラメータの詳細については、「 ibmcloud sl block snapshot-delete 」を参照してください。

SLCLI からのスナップショットの削除

以下のコマンドを使用すると、CLI からスナップショットを削除できます。

$ slcli block snapshot-delete
Usage: slcli block snapshot-delete [OPTIONS] SNAPSHOT_ID
Options:
  -h, --help  Show this message and exit.

ポータルで手動により削除されなかった手動スナップショットは、スペースの制限に達すると自動的に削除されます。 最も古いスナップショットが最初に削除されます。

コンソールでスナップショットを使用して、ストレージボリュームを特定の時点の状態に復元する

ユーザーエラーやデータ破損から復旧するために、ストレージボリュームを特定の時点に復元することができます。

  1. 復元中にホストがボリュームに接続されないように、ホストからストレージボリュームをアンマウントし、取り外します。

  2. IBM Cloud® コンソールに移動します。 メニューから、 「クラシック・インフラストラクチャー」 「クラシック」アイコン を選択します。

  3. 「ストレージ」、**「Block Storage for Classic」**をクリックします。

  4. リストでスクロールして、リストアするボリュームをクリックします。 **「スナップショット」**ページに、保存されているすべてのスナップショットのサイズと作成日のリストが表示されます。

  5. 使用したいスナップショットの横にあるアクションアイコン をクリックし、 復元をクリックします。

    復元を完了すると、スナップショットが作成された後に作成または変更されたデータは失われます。 このデータ損失は、ストレージ・ボリュームがスナップショットの時点と同じ状態に戻ったために発生します。

  6. 復元を開始するには、**「はい」**をクリックします。 復元にはしばらく時間がかかります。また、復元中はストレージボリュームがロックされます。

    ボリューム一覧に戻ると、そのボリュームの横に時計のアイコンが表示され、アクティブなトランザクションが進行中であることを示します。 アイコンの上にカーソルを移動すると、トランザクションを示すウィンドウが生成されます。 アイコンは、トランザクションが完了すると表示されなくなります。

  7. ストレージ・ボリュームをホストにマウントして、再接続します。

ボリュームを復元すると、復元に使用されたスナップショットの後に実行されたすべてのスナップショットが削除されます。

CLI からスナップショットを使用して、ストレージボリュームを特定の時点の状態に復元する

ユーザーエラーやデータ破損から復旧するために、ストレージボリュームを特定の時点に復元することができます。

  1. ボリュームをアンマウントします。 復元中にホストがボリュームに接続しようとしていないことを確認する必要があります。

  2. その後、以下のいずれかのコマンドを使用して、スナップショットを使用してボリュームをリストアできます。

    • IBMCLOUD CLIからは、ibmcloud sl block snapshot-restore コマンドを使用できます。

      $ ibmcloud sl block snapshot-restore 562193766 562211890
      OK
      Block volume 562193766 is being restored using snapshot 562211890.
      

      このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl block snapshot-restoreを参照してください。

    • SLCLIから、slcli block snapshot-restore コマンドを使うことができます。

      $ slcli block snapshot-restore --help
      Usage: slcli block snapshot-restore [OPTIONS] VOLUME_ID
      Options:
       -s, --snapshot-id TEXT  The id of the snapshot which is to be used to restore
                               the block volume
       -h, --help              Show this message and exit.
      
  3. 最後に、ストレージ・ボリュームをホストにマウントして再接続します。

ボリュームを復元すると、復元に使用されたスナップショットの後に実行されたすべてのスナップショットが削除されます。