###################################################################### # All Rights Reserved, Copyright FUJITSU LIMITED 2015-2018 # # API実行サンプル名: # 03-002_スナップショットから作成元のストレージへのリストア # # 内容: # スナップショットから、作成元のストレージへリストアをする手順です。 # # 版数:v1.0 # 更新日:2017/09/01 ###################################################################### 手順: ─────────────────────────────────── 項番1.スナップショットの確認 項番1-1.スナップショット一覧確認 項番1-2.スナップショット詳細確認 項番2.スナップショットから作成元のストレージへリストア ─────────────────────────────────── 事前準備: あらかじめ以下を準備する必要があります。 ─────────────────────────────────── ・仮想サーバ ・仮想サーバが利用しているストレージのスナップショット ─────────────────────────────────── 注意事項: ・仮想サーバが稼働中または停止中のどちらの状態でもスナップショットの 作成は可能ですが、仮想サーバが稼働中に作成したスナップショットを 再利用した場合の動作は保障できません。確実な動作を期待する場合は、 事前に仮想サーバを停止後にスナップショットを作成してください。 ・リストアする際は、事前に仮想サーバを停止してください。 項番1.スナップショットの確認 作成元のストレージにリストアするスナップショットのステータスを確認 します。 ・スナップショットのステータス ・available:スナップショット利用可能。 ・creating:スナップショット作成中。 ・deleting:スナップショットの削除中。 ・error:スナップショットの作成中にエラーが発生。 ・error_deleting:スナップショットの削除中にエラーが発生。 項番1-1.スナップショット一覧確認 スナップショットの一覧から対象スナップショットの状態を確認します。 (複数スナップショットがある場合はすべて表示されます。) API実行コマンド例: ====================================================================== curl -Ss $BLOCKSTORAGE/v2/$PROJECT_ID/snapshots -X GET -H "X-Auth-Token: $OS_AUTH_TOKEN" | jq . レスポンス例: ====================================================================== { "snapshots": [ { "name": "TEST_SNAPSHOT_01", "id": "9180a287-1c54-4357-b3ff-cdea4793a8f5", "size": 30, "volume_id": "6d162b0b-9aba-4d45-982a-96a9bb37489e", "metadata": {}, "created_at": "2017-07-21T08:43:07.131624", "description": "SERVER_01_SNAPSHOT", "status": "available" }, { "name": "TEST_SNAPSHOT_02", "id": "ec442f7d-e8b7-4d0b-9672-f8e7bbbc4eeh", "size": 30, "volume_id": "c955443b-d666-4268-b44a-fbd61796e29b", "metadata": {}, "created_at": "2017-07-22T08:43:07.000000", "description": "SERVER_02_SNAPSHOT", "status": "available" } ] } ====================================================================== 項番1-2.スナップショット詳細確認 指定したスナップショットの詳細からステータスを確認します。 環境定義コマンド例: ====================================================================== # SNAPSHOT_ID=<詳細を確認するスナップショットID> SNAPSHOT_ID=9180a287-1c54-4357-b3ff-cdea4793a8f API実行コマンド例: ====================================================================== curl -Ss $BLOCKSTORAGE/v2/$PROJECT_ID/snapshots/$SNAPSHOT_ID -X GET -H "X-Auth-Token: $OS_AUTH_TOKEN" | jq . レスポンス例: ====================================================================== { "snapshot": { "availability_zone": "jp-west-2a", "name": "TEST_SNAPSHOT_01", "id": "9180a287-1c54-4357-b3ff-cdea4793a8f", "status": "available", "os-extended-snapshot-attributes:progress": "100%", "description": "SERVER_01_SNAPSHOT", "created_at": "2017-07-21T08:43:07.131624", "metadata": {}, "volume_id": "6d162b0b-9aba-4d45-982a-96a9bb37489e", "os-extended-snapshot-attributes:project_id": "198d1998371c41e291dc65fdabd9eda3", "size": 30 } } ====================================================================== 項番2.スナップショットから作成元のストレージへリストア スナップショットから、作成元の仮想サーバのストレージへリストアします。 注意事項: リストアする際は、事前に仮想サーバを停止してください。 環境定義コマンド例: ====================================================================== # SNAPSHOT_ID=<リストア対象のスナップショットID> SNAPSHOT_ID=9180a287-1c54-4357-b3ff-cdea4793a8f API実行コマンド例: ====================================================================== curl -Ssi $BLOCKSTORAGE/v2/$PROJECT_ID/snapshots/$SNAPSHOT_ID/action -X POST -H "X-Auth-Token: $OS_AUTH_TOKEN" -H "Content-Type:application/json" -d '{"fcx-restore":""}' レスポンス例: ====================================================================== HTTP/1.1 202 Accepted X-Fcx-Endpoint-Request: EXECUTED_REQ001118834_202 Date: Fri, 21 Jul 2017 08:56:58 GMT Server: Apache x-openstack-request-id: req-d479689a-cc27-467a-8042-ca1dde8a5f55 Cache-Control: no-cache X-Request-Id: d55e5ddb-4c12-4d5c-b04a-bd123a13b433 X-Runtime: 0.720000 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: text/html;charset=UTF-8 Content-Length: 0 ====================================================================== 以上