ボリュームの画像を管理する
ボリュームから作成されたカスタム・イメージは、元のボリュームから独立しています。 必要に応じてイメージを更新したり削除したりできます。 元のボリュームを削除してもカスタム・イメージは失われません。 非推奨のスケジュールを設定し、コンソール、CLI、または API でイメージを廃止することができます。
UIを使用してカスタムイメージのライフサイクルステータスの変更をスケジュールする
単一のイメージ・ライフサイクル・ステータス変更をスケジュールすることも、イメージのライフサイクル全体のステータス変更をスケジュールすることもできます。
以下のステップを使用して、単一のステータス変更をスケジュールします。
イメージの単一のステータス変更をスケジュールできます。
- IBM Cloud コンソールで、 ナビゲーション メニュー アイコン
> インフラストラクチャ
> コンピューティング > イメージに移動します。
- 「カスタム・イメージ」 タブで、特定のイメージの「アクション」アイコン
をクリックし、使用可能なオプションから選択します。
- 「ライフサイクルのスケジュール」 を選択します。
- 「イメージ状況」 で、イメージの状況変更を選択します。
- 「非推奨の詳細」 で、ステータスを 「即時」 に変更するか、 「将来の日付をスケジュールする」 に変更するかを選択します。
- 「将来の日付をスケジュールする」 を選択した場合は、以下を入力する必要があります。
- 「カレンダー日付別 (By calendar date)」 または 「日数別 (By number of days)」 を選択します。
- 「カレンダー日付別」 を選択した場合は、日時情報を入力します。 これは、ステータスの変更が行われる日時です。
- 「日数別」 を選択した場合は、状況が変更されるまでに経過する日数を入力します。
- 「カレンダー日付別 (By calendar date)」 または 「日数別 (By number of days)」 を選択します。
- 保存 をクリックします。
イメージのライフサイクル全体をスケジュールするには、以下のステップを使用します。
イメージの完全なライフサイクルをスケジュールできます。 イメージは、最初に非推奨になり、次に定義したスケジュールに従って廃止に変更されます。 ライフサイクルの変更をスケジュールするには、以下の手順を使用します。
-
IBM Cloud コンソールで、 ナビゲーション メニュー アイコン
> インフラストラクチャ
> コンピューティング > イメージに移動します。
-
「カスタム・イメージ」 タブで、特定のイメージの「アクション」アイコン
をクリックし、使用可能なオプションから選択します。
-
「ライフサイクルのスケジュール」 を選択します。
-
完全なライフサイクルをスケジュールするを選択します。
- 「カレンダー日付別」 を選択した場合は、ステータス変更を行う日時を入力します。
- 「日数別」 を選択した場合は、ステータスが変更されるまでの経過日数を入力します。
廃番の日付は非推奨の日付より後でなければなりません。
-
**「スケジュール」**をクリックします。
CLI を使用してカスタムイメージのライフサイクルステータスを変更する
コマンド・ライン・インターフェース (CLI) からボリュームから作成された IBM Cloud VPC イメージのライフサイクル状況を変更できます。 ibmcloud is image-deprecate
または ibmcloud is image-obsolete
コマンドを使用して、即時状況変更を行うことができます。 また、 ibmcloud is image-update
コマンドを使用して、これらのステータス変更を将来の日時にスケジュールすることもできます。
IMAGE
変数を使用して、カスタム・イメージの名前または ID を指定します。
即時状況変更を行うには、以下のいずれかの例を使用します。
即時ステータス変更は、将来のステータス変更がスケジュールされていない場合にのみ実行できます。 スケジュールされた状況変更を削除するには、 CLI を使用したスケジュールされたカスタム・イメージ・ライフサイクル状況変更の削除 を参照してください。 スケジュールされたステータス変更を削除した後、即時ステータス変更を行うことができます。
-
イメージのライフサイクル状況を
deprecate
に変更します。ibmcloud is image-deprecate IMAGE
-
イメージのライフサイクル状況を
obsolete
に変更します。ibmcloud is image-obsolete IMAGE
ステータス変更をスケジュールするには、以下の例を使用します。
deprecate-at
または obsolete-at
オプションには、ISO 8601 (YYYY-MM-DDThh:mm:ss+hh:mm
) の日時形式で日付を指定します。
YYYY
は 4 桁の年です。MM
は 2 桁の月です。DD
は 2 桁の日です。T
は日付と時刻の情報を区切ります。hh
は 2 桁の時間です。mm
は 2 桁の分です。+hh:mm
または-hh:mm
は UTC タイム・ゾーンです。
したがって、北米中央標準時ゾーン (CST) で 2023 年 9 月 30 日の午後 8 時に行われる日付は、 2023-09-30T20:00:00-06:00
になります。
日時をスケジュールする際に、現在の日時を使用することはできません。 例えば、6 月 12 日の午前 8:00 の場合、スケジュールされた日時は 6 月 12 日の午前 8:00 より後でなければなりません。 deprecate-at
と obsolete-at
の両方の日付を定義する場合、 obsolete-at
の日付は deprecate-at
の日付より後でなければなりません。
ibmcloud is image-update IMAGE [--deprecate-at YYYY-MM-DDThh:mm:ss+hh:mm] [--obsolete-at YYYY-MM-DDThh:mm:ss+hh:mm]
deprecate-at
および obsolete-at
の日時項目を変更する場合は、これらのコマンドを再度実行できます。 前の日付と時刻は新しい日付と時刻に置き換えられます。
CLIを使用して、以前にスケジュールされたライフサイクルステータスの変更を削除する
--reset-deprecate-at
オプションまたは --reset-obsolete-at
オプションを使用して、スケジュールされたステータス変更を削除できます。 これらのオプションのいずれかを ibmcloud is image-update コマンドで使用すると、日時がイメージから削除されます。 イメージは、その状況変更用にスケジュールされなくなります。
ibmcloud is image-update IMAGE [--reset-deprecate-at] [--reset-obsolete-at]
--reset-deprecate-at
オプションと --reset-obsolete-at
オプションの両方を使用すると、イメージ状況は available
に戻ります。
APIを使用してカスタムイメージのライフサイクルステータスを変更する
アプリケーション・プログラミング・インターフェース (API) を使用して、ボリュームから作成された IBM Cloud VPC イメージのライフサイクル状況を変更できます。 即時ステータス変更を行うことも、後でステータス変更が行われるようにスケジュールすることもできます。
即時状況変更を行うには、以下のいずれかの例を使用します。 $image_id
変数には、状況変更のカスタム・イメージの ID を指定します。
即時ステータス変更は、将来のステータス変更がスケジュールされていない場合にのみ実行できます。 スケジュール済みステータス変更を削除するには、 API を使用したスケジュール済みカスタム・イメージ・ライフサイクル・ステータス変更の削除 を参照してください。 スケジュールされたステータス変更を削除した後、即時ステータス変更を行うことができます。
-
イメージのライフサイクル状況を
deprecated
に変更します。curl -X POST "$vpc_api_endpoint/v1/images/$image_id/deprecate?version=2023-02-21&generation=2" -H “Authorization: Bearer $iam_token”
-
イメージのライフサイクル状況を
obsolete
に変更します。curl -X POST "$vpc_api_endpoint/v1/images/$image_id/obsolete?version=2023-12-21&generation=2" -H “Authorization: Bearer $iam_token”
ステータス変更をスケジュールするには、以下のいずれかの例を使用します。
deprecation_at
プロパティーまたは obsolescence_at
プロパティーには、ISO 8601 (YYYY-MM-DDThh:mm:ss+hh:mm
) の日時形式で日付を指定します。
YYYY
は 4 桁の年です。MM
は 2 桁の月です。DD
は 2 桁の日です。T
は日付と時刻の情報を区切ります。hh
は 2 桁の時間です。mm
は 2 桁の分です。+hh:mm
または-hh:mm
は UTC タイム・ゾーンです。
したがって、北米中央標準時ゾーン (CST) で 2023 年 9 月 30 日の午後 8 時に行われる日付は、 2023-09-30T20:00:00-06:00
になります。
日時をスケジュールする際に、現在の日時を使用することはできません。 例えば、6 月 12 日の午前 8:00 の場合、スケジュールされた日時は 6 月 12 日の午前 8:00 より後でなければなりません。 deprecation_at
と obsolescence_at
の両方の日時を定義する場合、 obsolescence_at
の日付は deprecation_at
の日時より後でなければなりません。
-
deprecated
へのステータス変更をスケジュールします。curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token" -d '{ "deprecation_at": "2023-03-01T06:11:28+05:30" }'
-
obsolete
へのステータス変更をスケジュールします。curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token" -d '{ “obsolescence_at": "2023-12-31T06:11:28+05:30" }'
deprecation_at
およびobsolescence_at
の日時項目を変更する場合は、これらのコマンドを再度実行できます。 前の日付と時刻は新しい日付と時刻に置き換えられます。
APIを使用して、以前に予定されていたライフサイクルステータスの変更を削除する
deprecation_at
または obsolescence_at
を null
に更新して、スケジュールされた状況変更を削除するための PATCH /images
要求を行います。 このプロパティーを変更すると、イメージから日時が削除され、イメージはそのステータス変更にスケジュールされなくなります。
-
イメージを
deprecated
からavailable
に変更するには、deprecation_at
プロパティーをnull
に変更します。curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token" -d '{ "deprecation_at": null }'
-
イメージを
obsolete
から前の状態に変更するには、obsolescence_at
をnull
に変更します。 イメージに以前にnull
fordeprecation_at
以外の値が含まれていた場合、このプロパティーの変更によりobsolete
状態が削除され、deprecated
に戻されます。 前の状態がavailable
の場合 (イメージがavailable
からobsolete
に直接移動されたことを意味します)、このプロパティーの変更はobsolete
からavailable
に戻ります。curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token" -d '{ “obsolescence_at": null }'
-
deprecation_at
プロパティーまたはobsolescence_at
プロパティーの両方がavailable
に設定されているイメージを変更するには、deprecation_at
プロパティーまたはobsolescence_at
プロパティーの両方を更新する必要があります。curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token" -d '{ "deprecation_at": null, “obsolescence_at": null }'
パフォーマンスに関する考慮事項
ボリュームからのイメージがキューに追加され、作成されるまでの所要時間は、イメージのサイズやキュー内のジョブの数など、いくつかの要因に影響されます。 待っていられないほどイメージの作成に時間がかかっている場合には、ジョブをキャンセルすることができます。
イメージ作成時のパフォーマンス
イメージを作成すると、API status_reasons
パラメータは image_request_queued
_「イメージ要求が受け入れられ、システム リソースが使用可能になるのを待機しています」という_メッセージが表示されます。 このメッセージが表示されてからジョブが開始するまでに、しばらく時間がかかることがあります。 以下の表に、イメージ・サイズに基づくガイドラインを示します。 in_progress
のステータスを確認して、画像が作成されているかどうかを確認します。 繰り返しになりますが、イメージが使用可能になるまでには、イメージのサイズに応じて時間がかかります。
イメージ・サイズ | 画像が利用可能になるまでの推定時間 |
---|---|
5 GB | 5 分 |
10 GB | 10 分 |
25 GB | 25 分 |
50 GB | 50 分 |
75 GB | 1 時間 15 分 |
100 GB | 1 時間 40 分 |
ジョブが開始するまでの時間は約 30 秒です。 この時間には、処理待ちのトラフィックは反映されていません。トラフィックによっては推定時間が長くなる可能性があります。 ほとんどのジョブは 5 分から 10 分以内に開始します。 それより長い時間がかかる場合は、 イメージの作成をキャンセル してください。
作成待ちのイメージのキャンセル
基礎のジョブがまだ開始していない場合は、イメージを削除することでイメージ作成をキャンセルできます。 _保留中_状態のイメージに対して GET /images
API 呼び出しを実行すると、image_request_queued
理由コードが返されます。 DELETE /image{image_id}
要求を使用して、保留中のイメージを削除できます。 あるいは、 UI または CLI を使用して、保留状態のイメージを削除することもできます。
UIを使用してカスタム画像を削除する
カスタム画像の一覧から、ボリュームから作成された画像を削除することができます。 保留状態 (イメージの作成中) および使用可能状態にあるイメージを削除できます。
- カスタム・イメージのリストに移動します。 IBM Cloud コンソールで、
>
> コンピューティング > イメージに移動します。
- 「カスタム・イメージ」 タブで、削除するイメージを見つけます。 「アクション」 メニュー
から、 「削除」 を選択します。
CLI を使用して、ボリュームから作成されたイメージを削除する
-
イメージのリストで、ボリュームから作成されたイメージを見つけます。
ibmcloud is images
-
ID を指定してイメージを削除します。
ibmcloud is image-delete IMAGE_ID
API を使用して、ボリュームから作成されたイメージを削除する
DELETE /images
要求を行い、ブート・ボリュームから作成されたイメージの ID を指定します。
-
ボリュームから作成されるイメージの ID を見つけます。
curl -X GET "$vpc_api_endpoint/v1/images?version=2024-06-12&generation=2" -H "Authorization: Bearer $iam_token"
-
ID を指定してイメージを削除します。
curl -X DELETE "$vpc_api_endpoint/v1/images/$image_id?version=2024-06-12&generation=2" -H "Authorization: Bearer $iam_token"
次のステップ
ボリュームからイメージを作成するエンドツーエンドのプロセスをプレビューし、新しい仮想サーバーインスタンスを作成する際にイメージを使用できます。 詳しくは、 ボリュームからのイメージのチュートリアル を参照してください。