第3章 クイックスタートの例
本章では、基本的な Red Hat Virtualization 環境を設定し、仮想マシンを作成する REST API の機能を示す例を紹介します。この例では、標準の前提条件に加えて、以下が必要です。
- ネットワークされ設定された Red Hat Virtualization インストール。
- インストールする仮想マシンオペレーティングシステムを含む ISO ファイル。本章では、インストール ISO の例に CentOS 7 を使用します。
-
選択したオペレーティングシステムの ISO ファイルをアップロードする Red Hat Virtualization の
engine-iso-uploaderツール。
この例では、curl を使用してクライアントアプリケーションでの API 要求を示しています。HTTP リクエストが可能なすべてのアプリケーションは curl を置き換えることができることに注意してください。
分かりやすくするため、この例では Host および Authorization ヘッダーを省略します。ただし、これらのフィールドは必須であり、Red Hat Virtualization のインストールに固有のデータを必要とします。
すべての curl の例では、ユーザー名に admin@internal、パスワードには mypassword、証明書の場所に /etc/pki/ovirt-engine/ca.pem、ホスト名に myengine.example.com を使用しています。これらは単なる例です。お使いの環境の有効な値に置き換えてください。
Red Hat Virtualization は、各リソースの id 属性に一意の識別子を生成します。この例の識別子コードは、お使いの Red Hat Virtualization 環境の識別子コードとは異なる場合があります。
本セクションの多くの例では、API によって返される結果の属性の一部が省略され、短くしています。参照を使用すると、常に属性の完全なリストを検索できます。たとえば、クラスター タイプの属性の完全なリストを表示する場合は、ここ に進んでください。
3.1. 例:API のエントリーポイントへのアクセス リンクのコピーリンクがクリップボードにコピーされました!
以下の要求は、API のバージョン 4 のメインエントリーポイントの表現を取得します。
GET /ovirt-engine/api HTTP/1.1
Version: 4
Accept: application/xml
同じリクエストですが、Version ヘッダーの代わりに /v4 URL 接頭辞を使用します。
GET /ovirt-engine/api/v4 HTTP/1.1
Accept: application/xml
curl コマンドを使用して、同じ要求を行います。
curl \
--cacert '/etc/pki/ovirt-engine/ca.pem' \
--request GET \
--header 'Version: 4' \
--header 'Accept: application/xml' \
--user 'admin@internal:mypassword' \
https://myengine.example.com/ovirt-engine/api
結果は、Api タイプのオブジェクトになります。
<api>
<link href="/ovirt-engine/api/clusters" rel="clusters"/>
<link href="/ovirt-engine/api/datacenters" rel="datacenters"/>
...
<product_info>
<name>oVirt Engine</name>
<vendor>ovirt.org</vendor>
<version>
<build>0</build>
<full_version>4.0.0-0.0.el7</full_version>
<major>4</major>
<minor>0</minor>
<revision>0</revision>
</version>
</product_info>
<special_objects>
<blank_template href="..." id="..."/>
<root_tag href="..." id="..."/>
</special_objects>
<summary>
<hosts>
<active>23</active>
<total>30</total>
</hosts>
<storage_domains>
<active>5</active>
<total>6</total>
</storage_domains>
<users>
<active>12</active>
<total>102</total>
</users>
<vms>
<active>253</active>
<total>545</total>
</vms>
</summary>
<time>2016-10-06T15:38:18.548+02:00</time>
</api>
ヘッダーと URL 接頭辞が使用されていない場合には、サーバーは自動的にバージョンを選択します。デフォルトはバージョン 4 です。ENGINE_API_DEFAULT_VERSION 設定パラメーターを使用してデフォルトのバージョンを変更できます。
# echo "ENGINE_API_DEFAULT_VERSION=3" > \
/etc/ovirt-engine/engine.conf.d/99-set-default-version.conf
# systemctl restart ovirt-engine
このパラメーターを変更すると、バージョンを明示的に指定しない API のすべてのユーザーに影響します。
エントリーポイントは、仮想化環境のコレクションへのリンクをユーザーに提供します。各コレクションリンクの rel 属性は、各リンクの参照ポイントを提供します。この例の次のステップは、データセンターコレクションを検証し、これは datacenters リンクから入手できます。
エントリーポイントには、product_info、special_objects、summary などの他のデータも含まれます。このデータは、この例以外の章で説明しています。