Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

4장. 퀵 스타트 예

이 장에서는 기본 Red Hat Virtualization 환경을 설정하고 가상 머신을 생성하는 REST API의 기능을 보여주는 예제를 제공합니다. 이 예제에서는 표준 사전 요구 사항 외에도 다음이 필요합니다.

  • 네트워크로 구성된 Red Hat Virtualization 설치
  • 설치할 가상 시스템 운영 체제가 포함된 ISO 파일입니다. 이 장에서는 설치 ISO 예제를 위해 CentOS 7을 사용합니다.
  • Red Hat Virtualization의 engine-iso-uploader 툴을 사용하여 선택한 운영 체제 ISO 파일을 업로드합니다.

이 예제에서는 curl 을 사용하여 클라이언트 애플리케이션으로 API 요청을 보여줍니다. HTTP 요청을 사용할 수 있는 모든 애플리케이션이 curl 을 대체할 수 있습니다.

중요

단순화를 위해 이 예제의 HTTP 요청 헤더는 호스트권한 부여 헤더를 생략합니다. 그러나 이러한 필드는 필수 항목이며 Red Hat Virtualization 설치와 관련된 데이터가 필요합니다.

중요

모든 curl 예에서는 admin@internal 을 사용자 이름으로, mypassword 를 암호 /etc/pki/ovirt-engine/ca.pem 을 인증서 위치로, myengine.example.com 을 호스트 이름으로 사용합니다. 다음은 예제일 뿐입니다. 사용자 환경에 유효한 값으로 교체하십시오.

참고

Red Hat Virtualization은 각 리소스의 id 속성에 대한 고유 식별자를 생성합니다. 이 예제의 식별자 코드는 Red Hat Virtualization 환경의 식별자 코드와 다를 수 있습니다.

참고

이 섹션의 많은 예에서 API에서 반환한 결과 속성 중 일부를 생략하여 단축할 수 있습니다. 항상 참조를 사용하여 속성의 전체 목록을 찾을 수 있습니다. 예를 들어 클러스터 유형의 전체 속성 목록을 보려면 여기로 이동하십시오.

4.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_objectssummary 와 같은 기타 데이터도 포함됩니다. 이 데이터는 이 예제 외부의 장에서 다룹니다.