14 インスタンス・スナップショット
delete instanceコマンドを実行すると、インスタンスが停止し、システムから完全に削除されます。 これにより、インスタンスが起動された後に加えたすべてのカスタマイズが破棄されます。 起動以降にインスタンスに加えたすべての変更を保持するには、変更したインスタンスのスナップショットを作成してください。 マシン・イメージが作成されます。 この新しいマシン・イメージをイメージ・リストに追加し、これを使用して新規インスタンスを作成します。
この節で説明するCLIコマンドを実行する前に、CLIクライアントをインストールして、「CLIを使用するための準備」で説明されているように必要な環境変数を設定していることを確認してください。
コマンド
snapshot add
起動後にインスタンスで行われたすべての変更を保持するマシン・イメージを作成する、スナップショット・リクエストを作成します。
1つのインスタンスに対して、activeまたはqueued状態のスナップショット・リクエストは常に1つのみです。 リクエストの状態がerrorまたはcompleteに変わったら、そのインスタンスに対する別のスナップショット・リクエストを発行できます。
必要なロール
このタスクを実行するには、Compute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute snapshot add instance [--machineimage machineimage] [--delay=shutdown]
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
次の例は、インスタンスがrunning状態の間に、インスタンスのスナップショットを取得する方法を示しています。
opc compute snapshot add /Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d --machineimage /Compute-acme/jack.jones@example.com/snapshot1
[
{
"account": "/Compute-acme/cloud_storage",
"name": "/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec",
"machineimage": "/Compute-acme/jack.jones@example.com/snapshot1",
"creation_time": "2017-02-26T11:43:05Z",
"uri": "https://api-z999.compute.us0.oraclecloud.com/snapshot/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec",
"quota": null,
"delay": "",
"instance": "/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d",
"state": "active",
"error_reason": ""
}
]
このコマンドは、スナップショット・リクエスト識別子を返します。これを使用(listまたはgetコマンドを実行)して、非同期スナップショット・リクエストの進行状況を確認できます。 スナップショットの状態を確認する方法については、snapshot getを参照してください。
実行中のインスタンスのスナップショットが取得されると、スナップショット・リクエストの状態がcompleteに変更されます。 get machineimageコマンドを実行して、スナップショット・リクエストによりマシン・イメージが正しく作成されたことを確認できます。
この新しいマシン・イメージをイメージ・リストに追加し、これを使用して新規インスタンスを作成します。
次の例は、停止される直前のインスタンスのスナップショットを取得する方法を示しています。 このオプションは、インスタンスを削除する前に、インスタンスに加えたカスタム変更を保持する場合に使用します。 加えた変更が保持されるマシン・イメージが作成され、その後、インスタンスが削除されます。
opc -f json compute snapshots add /Compute-acme/jack.jones@example.com/dafcc088-1f0f-4550-b364-e901709873e1 --machineimage /Compute-acme/jack.jones@example.com/snapshot2 --delay=shutdown
{
"account": "/Compute-acme/cloud_storage",
"name": "/Compute-acme/jack.jones@example.com/dafcc088-1f0f-4550-b364-e901709873e1/0b0ef87a-a7c8-46b3-8cdc-3315a203a431",
"machineimage": "/Compute-acme/jack.jones@example.com/snapshot2",
"creation_time": "2017-02-26T11:49:21Z",
"uri": "https://api-z999.compute.us0.oraclecloud.com/snapshot/Compute-acme/jack.jones@example.com/dafcc088-1f0f-4550-b364-e901709873e1/0b0ef87a-a7c8-46b3-8cdc-3315a203a431",
"quota": null,
"delay": "shutdown",
"instance": "/Compute-acme/jack.jones@example.com/dafcc088-1f0f-4550-b364-e901709873e1",
"state": "active",
"error_reason": ""
}
--delay=shutdownオプションを使用した場合、delete instanceコマンドを実行することでインスタンスを停止するまで、スナップショットはactive状態のままです。 delete instanceコマンドが実行されると、インスタンスのスナップショットが取得され、マシン・イメージが作成され、スナップショットの状態がcompleteに変更されて、インスタンスが停止して削除されます。
get machineimageコマンドを実行して、スナップショット・リクエストによりマシン・イメージが正しく作成されたことを確認できます。 この新しいマシン・イメージをイメージ・リストに追加し、これを使用して新規インスタンスを作成します。
snapshot get
特定のスナップショットの詳細を取得します。
getコマンドを使用して、add操作が正常に完了したかどうかを確認できます。 -Fオプション(たとえば、-F state)を使用して、特定の属性の出力をフィルタリングします。
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute snapshot get name
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
次の例は、スナップショットの状態を取得します。
opc -f table -F state compute snapshot get /Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/0b0ef87a-a7c8-46b3-8cdc-3315a203a431
サンプル出力
+-------+--------+ state | active +-------+--------+
snapshot list
指定したコンテナ内の、指定した問合せ基準に一致するインスタンス・スナップショットすべての詳細を取得します。 1つ以上の問合せパラメータを渡して、検索結果をフィルタできます。 問合せ基準を指定しない場合は、コンテナ内のすべてのスナップショットの詳細が表示されます。
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute snapshot list container [--name name] [--instance instance] [--machineimage machineimage]
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
次の例は、スナップショットの名前や対応するマシン・イメージなどの情報をリスト表示する方法を示しています。
opc -f text -F name,machineimage compute snapshot list /Compute-acme/jack.jones@example.com
サンプル出力
読みやすくするため、一部の行は省略記号(...)を使用して省略されています。 実際の環境でコマンドを実行すると、完全な出力が表示されます。
MACHINEIMAGE NAME /Compute-acme/jack.jones@example.com/a6fbb572-a58...f748/d806...8 /Compute-acme/jack.jones@example.com/snapshot1 /Compute-acme/jack.jones@example.com/dafcc088-1f0...873e/c923...0 /Compute-acme/jack.jones@example.com/snapshot2
snapshot discover
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute snapshot discover container
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
次の例は、インスタンス/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028dのスナップショットを示しています。
opc -f json compute snapshot discover /Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/
サンプル出力
{
"result": [
/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec
/Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/df8caca5-8a27-4153-9c5f-7440080b40c8
]
}
snapshot delete
スナップショット・リクエストを削除します。 スナップショット・リクエストを削除しても、それによって作成されたマシン・イメージは削除されません。 削除操作には、どのレスポンスも返されません。
-
active状態のリクエストは削除されません。 -
リクエストを削除できるのは、
errorまたはcomplete状態の場合のみです。
必要なロール
このタスクを実行するには、Compute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute snapshot delete name
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
opc compute snapshot delete /Compute-acme/jack.jones@example.com/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec