[ovirt-users] Ovirt api function
Juan Hernandez
jhernand at redhat.com
Thu Aug 21 07:25:29 EDT 2014
On 08/20/2014 12:42 PM, Shanil S wrote:
> Hi,
>
>
> I would like to create the following functions using the ovirt api
>
> 1. Rebuild VM
What do you exactly mean by "rebuild vm"?
> 2. Restore the screenthots of one vm to another vm
What you can do is create a new VM from an existing snapshot, something
like this:
#!/bin/sh -ex
url="https://ovirt.example.com/ovirt-engine/api"
user="admin at internal"
password="******"
curl \
--verbose \
--insecure \
--request POST \
--header "Accept: application/xml" \
--header "Content-Type: application/xml" \
--user "${user}:${password}" \
--data "
<vm>
<name>myclone</name>
<cluster id='00000001-0001-0001-0001-000000000171'/>
<snapshots>
<snapshot id='f09a98fd-2c7e-40eb-a9ae-6b7f86412bb0'/>
</snapshots>
</vm>
" \
"${url}/vms"
You need to modify that script with your URL, user name, password,
cluster and snapshot id.
> 3. Display cpu,network etc usages
>
The statistics are available in the "statistics" sub-resource. For
example, if you want to get the statistics of a host you can do the
following:
#!/bin/sh -ex
url="https://ovirt.example.com/ovirt-engine/api"
user="admin at internal"
password="******"
curl \
--verbose \
--insecure \
--request GET \
--header "Accept: application/xml" \
--user "${user}:${password}" \
"${url}/hosts/40cc4c33-2560-4516-b028-1d59638139c3/statistics"
There you will find different statistics, like "memory.total",
"memory.used", etc. Take a look. Once you know what statistic you want
you can get its details like this:
curl \
--verbose \
--insecure \
--request GET \
--header "Accept: application/xml" \
--user "${user}:${password}" \
"${url}/hosts/40cc4c33-2560-4516-b028-1d59638139c3/statistics/7816602b-c05c-3db7-a4da-3769f7ad8896"
This can be cumbersome to do with a shell script, so you may want to use
the Python or Java SDKs, or just use directly the ovirt-shell:
$ ovirt-shell --insecure
URL: https://ovirt.example.com/ovirt-engine/api
Username: admin at internal
Password: ******
[oVirt shell (connected)]# show statistic memory.total --host-identifier
myhost
id : 7816602b-c05c-3db7-a4da-3769f7ad8896
name : memory.total
description : Total memory
host-id : 40cc4c33-2560-4516-b028-1d59638139c3
type : GAUGE
unit : BYTES
values-type : INTEGER
values-value-datum: 2099249152
> I couldn't find out any direct api method to do the above, Is it
> possible to do these operations using api ? If anyone knows it please
> help me to sort out it.
>
>
>
> --
> Regards
> Shanil
--
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
3ºD, 28016 Madrid, Spain
Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.
More information about the Users
mailing list