6.244. テンプレート
このサービスは、システムで使用可能な仮想マシンテンプレートを管理します。
名前 | Summary |
---|---|
| 新しいテンプレートを作成します。 |
| 仮想マシンテンプレートのリストを返します。 |
6.244.1. add POST
新しいテンプレートを作成します。
これには、name
要素と vm
要素が必要です。仮想マシンを識別するには、vm.id
または vm.name
属性を使用します。たとえば、識別子が 123
の仮想マシンからテンプレートを作成するには、以下のようなリクエストを送信します。
POST /ovirt-engine/api/templates
リクエスト本文は以下のようになります。
<template> <name>mytemplate</name> <vm id="123"/> </template>
バージョン 4.3 以降、スナップショットから仮想マシンテンプレートを作成するには、以下のようなリクエスト本文を送信します。
<template> <name>mytemplate</name> <vm id="123"> <snapshots> <snapshot id="456"/> </snapshots> </vm> </template>
テンプレートのディスクをカスタマイズして、元の仮想マシンのディスクとは異なる特性を作成できます。これを行うには、vm.disk_attachments
属性を使用し、元の仮想マシンのディスクの識別子と変更する特性を指定します。たとえば、元の仮想マシンに識別子 456
のディスクがあり、そのディスクの名前を mydisk
に、フォーマットを Copy On Write に変更して sparse にする場合は、次のようなリクエスト本文を送信します。
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <name>mydisk</name> <format>cow</format> <sparse>true</sparse> </disk> </disk_attachment> </disk_attachments> </vm> </template>
テンプレートは、既存テンプレートのサブバージョンとして作成できます。これには、新しいテンプレートの name
および vm
属性と、新しいテンプレートバージョンの base_template
および version_name
属性が必要です。base_template
および version_name
属性は、template
セクションにある version
セクション内で指定する必要があります。id
または name
属性で仮想マシンを識別します。
<template> <name>mytemplate</name> <vm id="123"/> <version> <base_template id="456"/> <version_name>mytemplate_001</version_name> </version> </template>
テンプレートの宛先ストレージドメインは、次の 2 つのいずれかの方法でカスタマイズできます。
リクエストレベルでグローバルにカスタマイズします。リクエストには、ストレージドメインで作成するディスクアタッチメントをリストする必要があります。ディスクアタッチメントがリストされていない場合、グローバルストレージドメインパラメーターは無視されます。
<template> <name>mytemplate</name> <storage_domain id="123"/> <vm id="456"> <disk_attachments> <disk_attachment> <disk id="789"> <format>cow</format> <sparse>true</sparse> </disk> </disk_attachment> </disk_attachments> </vm> </template>
各ディスクアタッチメントごとにカスタマイズします。各ディスクアタッチメントに必要なストレージドメインを指定します。グローバルストレージ定義を指定すると、ディスクアタッチメントごとのストレージドメインの指定が上書きされます。
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <format>cow</format> <sparse>true</sparse> <storage_domains> <storage_domain id="789"/> </storage_domains> </disk> </disk_attachment> </disk_attachments> </vm> </template>
名前 | 型 | 方向 | Summary |
---|---|---|---|
| In | 仮想マシンの権限をテンプレートにコピーするかどうかを指定します。 | |
| In | テンプレートをシールします。 | |
| In/Out | テンプレートまたはテンプレートバージョンに関する情報。 |
6.244.1.1. clone_permissions
仮想マシンの権限をテンプレートにコピーするかどうかを指定します。
このオプションのパラメーターが指定され、その値が true
の場合、仮想マシンのパーミッション (継承されたものではなく、直接のパーミッションのみ) が作成されたテンプレートにコピーされます。たとえば、パーミッションをコピーして myvm
仮想マシンからテンプレートを作成するには、次のようなリクエストを送信します。
POST /ovirt-engine/api/templates?clone_permissions=true
リクエスト本文は以下のようになります。
<template> <name>mytemplate<name> <vm> <name>myvm<name> </vm> </template>
6.244.1.2. seal
テンプレートをシールします。
このオプションのパラメーターが指定され、その値が true
の場合、テンプレートは作成後にシールされます。
シーリングは、SSH キー、UDEV ルール、MAC アドレス、システム ID、ホスト名など、すべてのホスト固有の設定をファイルシステムから消去するため、テンプレートを使用して、手動の介入なしで複数の仮想マシンを簡単に作成できます。
現在、シーリングは Linux オペレーティングシステムでのみサポートされています。
6.244.2. list GET
仮想マシンテンプレートのリストを返します。
以下に例を示します。
GET /ovirt-engine/api/templates
仮想マシンと仮想マシンテンプレートのリストを返します。
返されるテンプレートリストの順序は保証されません。
名前 | 型 | 方向 | Summary |
---|---|---|---|
| In |
| |
| In | ユーザーのパーミッションにしたがって、結果をフィルターする必要があるかどうかを示します。 | |
| In | たどる 必要のある内部リンクを指定します。 | |
| In | 返すテンプレートの最大数を設定します。 | |
| In | 返されたボリュームを制限するために使用されるクエリー文字列です。 | |
| Out | 仮想マシンテンプレートのリスト。 |
6.244.2.1. case_sensitive
search
パラメーターを使用して実行する検索を、大文字と小文字を区別して実行する必要があるかどうかを示します。デフォルト値は true
です。つまり、大文字と小文字の区別が考慮されます。ケースを無視する場合は、false
に設定します。
6.244.2.2. follow
たどる 必要のある内部リンクを指定します。これらのリンクで参照されるオブジェクトは、現在の要求の一部としてフェッチされます。詳細は、こちら を参照してください。
6.244.2.3. max
返すテンプレートの最大数を設定します。指定されていない場合は、すべてのテンプレートが返されます。