5.238. Vms
| Name | 概要 |
|---|---|
|
| 新しい仮想マシンを作成します。 |
|
|
5.238.1. add POST リンクのコピーリンクがクリップボードにコピーされました!
新しい仮想マシンを作成します。
仮想マシンはさまざまな方法で作成できます。
- テンプレートから。この場合、テンプレートの識別子または名前を指定する必要があります。たとえば、プレーンシェルスクリプトと XML を使用すると、次のようになります。
#!/bin/sh -ex
url="https://engine.example.com/ovirt-engine/api"
user="admin@internal"
password="..."
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--user "${user}:${password}" \
--request POST \
--header "Version: 4" \
--header "Content-Type: application/xml" \
--header "Accept: application/xml" \
--data '
<vm>
<name>myvm</name>
<template>
<name>Blank</name>
</template>
<cluster>
<name>mycluster</name>
</cluster>
</vm>
' \
"${url}/vms"
- スナップショットから。この場合、スナップショットの識別子を指定する必要があります。たとえば、プレーンシェルスクリプトと XML を使用すると、次のようになります。
#!/bin/sh -ex
url="https://engine.example.com/ovirt-engine/api"
user="admin@internal"
password="..."
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--user "${user}:${password}" \
--request POST \
--header "Content-Type: application/xml" \
--header "Accept: application/xml" \
--data '
<vm>
<name>myvm</name>
<snapshots>
<snapshot id="266742a5-6a65-483c-816d-d2ce49746680"/>
</snapshots>
<cluster>
<name>mycluster</name>
</cluster>
</vm>
' \
"${url}/vms"
テンプレートまたはスナップショットから仮想マシンを作成する場合、通常は、仮想マシンのディスクを作成するストレージドメインを明示的に指定すると便利です。仮想マシンがテンプレートから作成された場合、マッピングを示す一連の disk_attachment 要素を渡すことで、これを行うことができます。
<vm>
...
<disk_attachments>
<disk_attachment>
<disk id="8d4bd566-6c86-4592-a4a7-912dbf93c298">
<storage_domains>
<storage_domain id="9cb6cb0a-cf1d-41c2-92ca-5a6d665649c9"/>
</storage_domains>
</disk>
<disk_attachment>
</disk_attachments>
</vm>
仮想マシンがスナップショットから作成された場合、この一連のディスクは少し異なり、id の代わりに image_id 属性を使用します。
<vm>
...
<disk_attachments>
<disk_attachment>
<disk>
<image_id>8d4bd566-6c86-4592-a4a7-912dbf93c298</image_id>
<storage_domains>
<storage_domain id="9cb6cb0a-cf1d-41c2-92ca-5a6d665649c9"/>
</storage_domains>
</disk>
<disk_attachment>
</disk_attachments>
</vm>
XML 記述で追加の仮想マシンパラメーターを指定することができます。たとえば、2 GiB の RAM を備えた desktop タイプの仮想マシンでは、次のようなリクエスト本文を送信することで記述を追加できます。
<vm>
<name>myvm</name>
<description>My Desktop Virtual Machine</description>
<type>desktop</type>
<memory>2147483648</memory>
...
</vm>
起動可能な CDROM デバイスは、次のように設定できます。
<vm>
...
<os>
<boot dev="cdrom"/>
</os>
</vm>
CDROM から起動するには、CDROM サービス で説明されているように、まずディスクを挿入する必要があります。次に、os.boot.devices 属性を使用して、その CDROM からの起動を指定できます。
<vm>
...
<os>
<boot>
<devices>
<device>cdrom</device>
</devices>
</boot>
</os>
</vm>
いずれの場合も、仮想マシンが作成されるクラスターの名前または識別子は必須です。
| Name | タイプ | 方向 | 概要 |
|---|---|---|---|
|
| In | 仮想マシンをテンプレートから独立させる必要があるかどうかを指定します。 | |
|
| In | テンプレートの権限を仮想マシンにコピーするかどうかを指定します。 | |
|
| In/Out |
5.238.1.1. clone リンクのコピーリンクがクリップボードにコピーされました!
仮想マシンをテンプレートから独立させる必要があるかどうかを指定します。
仮想マシンがテンプレートからデフォルトで作成される場合、仮想マシンのディスクはテンプレートのディスクに依存し、copy on write メカニズムを使用して、テンプレートとの違いだけが実際のストレージスペースを使用するようにします。このパラメーターが指定され、値が true の場合、作成された仮想マシンのディスクは 複製 され、テンプレートとは無関係になります。たとえば、独立した仮想マシンを作成するには、次のようなリクエストを送信します。
POST /ovirt-engine/vms?clone=true
リクエスト本文は以下のようになります。
<vm>
<name>myvm<name>
<template>
<name>mytemplate<name>
</template>
<cluster>
<name>mycluster<name>
</cluster>
</vm>
このパラメーターが true の場合、clone_permissions=true を使用する場合と同様に、テンプレートのパーミッションもコピーされます。
5.238.1.2. clone_permissions リンクのコピーリンクがクリップボードにコピーされました!
テンプレートの権限を仮想マシンにコピーするかどうかを指定します。
このオプションのパラメーターが指定され、その値が true の場合、テンプレートのパーミッション (継承されたものではなく、直接のパーミッションのみ) が作成された仮想マシンにコピーされます。たとえば、mytemplate テンプレートから仮想マシンを作成し、そのパーミッションをコピーするには、次のようなリクエストを送信します。
POST /ovirt-engine/api/vms?clone_permissions=true
リクエスト本文は以下のようになります。
<vm>
<name>myvm<name>
<template>
<name>mytemplate<name>
</template>
<cluster>
<name>mycluster<name>
</cluster>
</vm>