第3章 REST API クイックスタートの例


本章では、基本的な Red Hat Virtualization 環境を設定し、仮想マシンを作成する REST API の機能を示す例を紹介します。
この例では、標準の前提条件に加えて、以下が必要です。
  • ネットワークされ設定された Red Hat Virtualization ホスト。
  • インストールする仮想マシンオペレーティングシステムを含む ISO ファイル。本章では、インストール ISO の例に Red Hat Enterprise Linux Server 6 を使用します。
  • 選択したオペレーティングシステムの ISO ファイルをアップロードする Red Hat Virtualization の engine-iso-uploader ツール。
この例では、cURL を使用してクライアントアプリケーションとの REST 要求を示しています。HTTP リクエストが可能なすべてのアプリケーションは cURL を置き換えることができることに注意してください。
重要な影響
分かりやすくするため、この例では Host: および Authorization: フィールドを省略します。ただし、これらのフィールドは必須であり、Red Hat Virtualization Manager のインストールに固有のデータを必要とします。
重要な影響
すべての cURL の例には、認証の詳細(USER:PASS)および証明書の場所(CERT)のプレースホルダーが含まれます。cURL で実行されるすべての要求が認定および認証要件を満たしていることを確認します。
注記
Red Hat Virtualization Manager は、各リソースの id 属性に対してグローバルに一意の識別子 (GUID) を生成します。この例の識別子コードは、お使いの Red Hat Virtualization 環境の識別子コードとは異なる場合があります。

3.1. 例:API エントリーポイントへのアクセス

以下の要求は、API のバージョン 3 の主なエントリーポイントの表現を取得します。

例3.1 API v3 エントリーポイントへのアクセス

リクエスト(ヘッダーあり):

GET /ovirt-engine/api HTTP/1.1
Version: 3
Accept: application/xml

リクエスト(ヘッダーなし):

GET /ovirt-engine/api/v3 HTTP/1.1
Accept: application/xml

curl コマンド:

# curl -X GET -H "Accept: application/xml" -u [USER:PASS] \
    --cacert [CERT] https://[RHEVM Host]:443/ovirt-engine/api

結果:

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

<api>
    <link rel="capabilities" href="/ovirt-engine/api/capabilities"/>
    <link rel="clusters" href="/ovirt-engine/api/clusters"/>
    <link rel="clusters/search" href="/ovirt-engine/api/clusters?search={query}"/>
    <link rel="datacenters" href="/ovirt-engine/api/datacenters"/>
    <link rel="datacenters/search" href="/ovirt-engine/api/datacenters?search={query}"/>
    <link rel="events" href="/ovirt-engine/api/events"/>
    <link rel="events/search" href="/ovirt-engine/api/events?search={query}"/>
    <link rel="hosts" href="/ovirt-engine/api/hosts"/>
    <link rel="hosts/search" href="/ovirt-engine/api/hosts?search={query}"/>
    <link rel="networks" href="/ovirt-engine/api/networks"/>
    <link rel="roles" href="/ovirt-engine/api/roles"/>
    <link rel="storagedomains" href="/ovirt-engine/api/storagedomains"/>
    <link rel="storagedomains/search" href="/ovirt-engine/api/storagedomains?search={query}"/>
    <link rel="tags" href="/ovirt-engine/api/tags"/>
    <link rel="templates" href="/ovirt-engine/api/templates"/>
    <link rel="templates/search" href="/ovirt-engine/api/templates?search={query}"/>
    <link rel="users" href="/ovirt-engine/api/users"/>
    <link rel="groups" href="/ovirt-engine/api/groups"/>
    <link rel="domains" href="/ovirt-engine/api/domains"/>
    <link rel="vmpools" href="/ovirt-engine/api/vmpools"/>
    <link rel="vmpools/search" href="/ovirt-engine/api/vmpools?search={query}"/>
    <link rel="vms" href="/ovirt-engine/api/vms"/>
    <link rel="vms/search" href="/ovirt-engine/api/vms?search={query}"/>
    <special_objects>
        <link rel="templates/blank"
          href="/ovirt-engine/api/templates/00000000-0000-0000-0000-000000000000"/>
        <link rel="tags/root"
          href="/ovirt-engine/api/tags/00000000-0000-0000-0000-000000000000"/>
    </special_objects>
    <product_info>
        <name>Red Hat Virtualization</name>
        <vendor>Red Hat</vendor>
        <version revision="0" build="0" minor="0" major="4"/>
    </product_info>
    <summary>
        <vms>
            <total>5</total>
            <active>0</active>
        </vms>
        <hosts>
            <total>1</total>
            <active>1</active>
        </hosts>
        <users>
            <total>1</total>
            <active>1</active>
        </users>
        <storage_domains>
            <total>2</total>
            <active>2</active>
        </storage_domains>
    </summary>
</ovirt-engine/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
このパラメーターを変更すると、バージョンを明示的に指定しない Manager のすべてのユーザーに影響します。
エントリーポイントは、仮想化環境のコレクションへのリンクをユーザーに提供します。各コレクションリンクの rel= 属性は、各リンクの参照ポイントを提供します。この例の次のステップは、rel=" datacenter " リンクで利用可能なデータセンターコレクションを検証します。
エントリーポイントには、product_infospecial_objects、および summary などの他のデータも含まれます。このデータは、この例以外の章で説明しています。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る