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>