Create image
Method | URI | Description |
---|---|---|
POST | /v2/{tenant_id}/volumes/{volume_id}/action | イメージを作成します。リクエストボディでos-volume_upload_imageアクションを指定してください。 |
Normal response codes: 202
-
CentOS、Ubuntu、またはRed Hat Enterprise LinuxをOSとする仮想サーバイメージを作成する場合、イメージの作成前に実施する作業があります。
設定がイメージ内に残っていると、そのイメージから作成した仮想サーバとのネットワーク通信ができなくなります。
なお、作業の詳細については、「FUJITSU Hybrid IT Service FJcloud-O IaaS 機能説明書」の「仮想サーバイメージの管理」を参照してください。
-
イメージを使用する前に、レスポンス情報のimage_idで返却されたイメージに対して以下を確認してください。
- イメージが存在する
- イメージのstatusがactive
- イメージのsync_status_reasonが存在しない
sync_status_reasonは、イメージを作成したAvailability Zoneに存在するイメージのプロパティです。作成されたイメージは、全てのAvailability Zoneから利用できるように、各Availability Zoneへ登録されます。
他のAvailabilityZoneに対して、イメージの登録が失敗した場合にsync_status_reasonにエラーが記録されます。エラー発生時は、イメージを削除したのち、再度イメージの作成を実施してください。 例:
sync_status_reasonのエラー記録は以下のAPIのレスポンスパラメータで確認してください。"sync_status_reason":"ERROR:A timeout occurred during synchronize image the server(http://1.1.1.1:9292) in the image operation. image_id=681995bb-26c3-421e-9734-0c02b1acbf7d"
-
システムボリューム内のオペレーティングシステムがWindowsの場合、イメージの作成前後に実施する作業があります。
- イメージを作成する前の作業
Windows仮想サーバ上でSysprep作業を実施してください。
なお、作業の詳細については、「FUJITSU Hybrid IT Service FJcloud-O IaaS 機能説明書」の「Windows OSのSysprep手順」の「手順」を参照してください。 - イメージを作成した後の作業
イメージ化を実施したあと、仮想サーバに対してスナップショットのリストアおよび仮想サーバの再起動を実施します。
なお、作業の詳細については、「FUJITSU Hybrid IT Service FJcloud-O IaaS 機能説明書」の「Windows OSのSysprep手順」の「実行結果」を参照してください。
- イメージを作成する前の作業
-
「/etc/cloud/cloud.cfg」に以下の設定がない場合は、「/etc/cloud/cloud.cfg.d/datasource.cfg」を作成して追加してください。すでに設定済の場合は、対応する必要はありません。
datasource_list: ['OpenStack']
Request
下表は、イメージ作成リクエストのURIパラメーターの一覧です。
Name | Type | Description |
---|---|---|
{tenant_id} | String | プロジェクトID |
{volume_id} | UUID | 既存ボリュームの固有識別子 |
下表は、イメージ作成リクエストのボディ部のパラメーターの一覧です。
Name | Type | Description |
---|---|---|
os-volume_upload_image | object | os-volume_upload_imageアクションを指定します。 |
container_format | string
(Optional) |
作成するイメージのコンテナー形式を指定します。
"bare"を指定してください。 省略した場合、"bare"が指定されたものとして動作します。 |
disk_format | string
(Optional) |
作成するイメージのディスク形式を指定します。
"raw"を指定してください。 省略した場合、"raw"が指定されたものとして動作します。 |
image_name | string | 作成するイメージの名前を指定します。 |
force | boolean
(Optional) |
Falseを指定した場合、ボリュームがインスタンスに取り付けられていると、イメージを作成することができません。
Trueを指定した場合、ボリュームがインスタンスに取り付けられていても、イメージを作成することができます。本パラメーターを指定する場合、事前に、OSを停止してください。 省略した場合、Falseが指定されたものとして動作します。 |
Example. Create volume: JSON request
{
"os-volume_upload_image": {
"container_format": "bare",
"disk_format": "raw",
"image_name": "my_image",
"force": "True"
}
}
Response
Example. Create volume: JSON response
{
"os-volume_upload_image":{
"status":"uploading",
"image_id":"3dc6c4d9-95e9-4cdb-a076-cc3ed50b9654",
"image_name":"20150430_volume_to_image-003",
"volume_type":{
"name":"M1",
"qos_specs_id":null,
"deleted":false,
"created_at":"2014-10-11T11:26:56.000000",
"updated_at":null,
"deleted_at":null,
"id":"13a0247c-9363-401d-acd3-c5d07ccd1a45"
},
"container_format":"bare",
"size":2,
"disk_format":"raw",
"id":"52102306-e352-4c84-9233-2ac2b511d29b",
"display_description":null,
"updated_at":"2015-04-30T06:31:31.000000"
}
}
下表は、イメージ作成レスポンスのボディ部のパラメーターの一覧です。
Name | Type | Description | |
---|---|---|---|
status | String | ボリュームの状態です。
ボリュームからイメージを作成し始めた直後は、"uploading"となります。イメージの作成が完了すると、"available"または"in-use"に戻ります。 |
|
image_id | uuid | 作成したイメージのidです。 | |
image_name | String | Request Bodyで指定した値です。 | |
volume_type | String | ボリュームのボリュームタイプです。
ボリュームタイプが未設定の場合は、子要素はなく、"null"が返却されます。 |
|
name | String | ボリュームタイプの名前です。 | |
qos_specs_id | uuid | qos specのidです。 | |
deleted | Boolean | 削除されたか否かを示すフラグです。
trueが削除されたことを示します。 |
|
created_at | Datetime | ボリュームタイプの作成日時です。 | |
updated_at | Datetime | ボリュームタイプの更新日時です。 | |
deleted_at | Datetime | ボリュームタイプの削除日時です。 | |
id | uuid | ボリュームタイプのidです。 | |
container_format | String | Request Bodyで指定(または省略値)した値です。 | |
size | Int | ボリュームの容量(GB)です。 | |
disk_format | String | Request Bodyで指定(または省略値)した値です。 | |
id | Uuid | ボリュームのidです。 | |
display_description | String | ボリュームの説明です。 | |
updated_at | Datetime | ボリュームの更新日時です。 |