12.6. エクスポートストレージドメイン

12.6.1. エクスポートストレージドメイン

typeexport に設定されているストレージドメインには、vms および templates のサブコレクションが含まれ、その特定のストレージドメインに格納されているインポート候補の仮想マシンおよびテンプレートが記載されています。

例12.6 エクスポートストレージドメインの仮想マシンサブコレクションの表示

GET /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/vms
Accept: application/xml

HTTP/1.1 200 OK
Content-Type: application/xml

<vms>
    <vm id="082c794b-771f-452f-83c9-b2b5a19c0399"
      href="/api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/
      vms/082c794b-771f-452f-83c9-b2b5a19c0399">
        <name>vm1</name>
        ...
        <storage_domain id="fabe0451-701f-4235-8f7e-e20e458819ed"
          href="/api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed"/>
        <actions>
            <link rel="import" href="/api/storagedomains/
              fabe0451-701f-4235-8f7e-e20e458819ed/vms/
              082c794b-771f-452f-83c9-b2b5a19c0399/import"/>
        </actions>
    </vm>
</vms>
これらのコレクション内の仮想マシン/テンプレートに記載されている表現は、仮想マシン/テンプレートの最上位コレクション内の対応する表現と同様ですが、storage_domain 参照と import アクションも含まれている点が異なります。
import アクションは、export ストレージドメインから仮想マシンまたはテンプレートをインポートします。インポート先のクラスターおよびストレージドメインは clusterstorage_domain の参照で指定します。
仮想マシンまたはテンプレートに固有の名前を付ける場合は、オプションの name 要素を追加します。

例12.7 エクスポートストレージドメインから仮想マシンをインポートするアクション

POST /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/vms/
082c794b-771f-452f-83c9-b2b5a19c0399/import HTTP/1.1
Accept: application/xml
Content-type: application/xml

<action>
    <storage_domain>
        <name>images0</name>
    </storage_domain>
    <cluster>
        <name>Default</name>
    </cluster>
</action>

例12.8 エクスポートストレージドメインからテンプレートをインポートするアクション

POST /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/templates/
082c794b-771f-452f-83c9-b2b5a19c0399/import HTTP/1.1
Accept: application/xml
Content-type: application/xml

<action>
    <storage_domain>
        <name>images0</name>
    </storage_domain>
    <cluster>
        <name>Default</name>
    </cluster>
</action>
仮想マシンを新しいエンティティーとしてインポートする場合は、オプションの clone ブール値要素を追加します。

例12.9 仮想マシンを新しいエンティティーとしてインポートする操作

POST /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/vms/
082c794b-771f-452f-83c9-b2b5a19c0399/import HTTP/1.1
Accept: application/xml
Content-type: application/xml

<action>
    <storage_domain>
        <name>images0</name>
    </storage_domain>
    <cluster>
        <name>Default</name>
    </cluster>
    <clone>true</clone>
    <vm>
        <name>MyVM</name>
    </vm>
    ...
</action>
disk id 要素を使用してインポートするディスクを選択する場合は、オプションの disks 要素を追加します。

例12.10 インポート操作を行うディスクの選択

POST /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/vms/
082c794b-771f-452f-83c9-b2b5a19c0399/import HTTP/1.1
Accept: application/xml
Content-type: application/xml

<action>
    <cluster>
        <name>Default</name>
    </cluster>
    <vm>
        <name>MyVM</name>
    </vm>
    ...
    <disks>
        <disk id="4825ffda-a997-4e96-ae27-5503f1851d1b"/>
    </disks>
</action>
export ストレージドメインからの仮想マシンおよびテンプレートの削除には DELETE 要求を使用します。

例12.11 エクスポートストレージドメインからの仮想マシンの削除

DELETE /api/storagedomains/fabe0451-701f-4235-8f7e-e20e458819ed/vms/
082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1
Accept: application/xml

HTTP/1.1 204 No Content