Image Transfer mechanism queries/API support

Hello oVirt Development team We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use. We have following queries: 1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future? 2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage? Thanks Ranjit Team EverestFalcons

On Tue, Jul 3, 2018 at 11:32 AM Ranjit DSouza <Ranjit.DSouza@veritas.com> wrote:
Hello oVirt Development team
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.
We have following queries:
1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism.
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?
2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?
Have you tried using the sdk for download/upload disk snapshots: https://ovirt.org/develop/release-management/features/storage/backup-restore... Thanks
Ranjit
Team EverestFalcons _______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-leave@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/VSI3A5LJNJRKNC...

YANIV LAVI SENIOR TECHNICAL PRODUCT MANAGER Red Hat Israel Ltd. <https://www.redhat.com/> 34 Jerusalem Road, Building A, 1st floor Ra'anana, Israel 4350109 ylavi@redhat.com T: +972-9-7692306/8272306 F: +972-9-7692223 IM: ylavi <https://red.ht/sig> TRIED. TESTED. TRUSTED. <https://redhat.com/trusted> @redhatnews <https://twitter.com/redhatnews> Red Hat <https://www.linkedin.com/company/red-hat> Red Hat <https://www.facebook.com/RedHatInc> On Tue, Jul 3, 2018 at 11:50 AM Daniel Erez <derez@redhat.com> wrote:
On Tue, Jul 3, 2018 at 11:32 AM Ranjit DSouza <Ranjit.DSouza@veritas.com> wrote:
Hello oVirt Development team
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.
We have following queries:
1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism.
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?
We are planning to add sparseness support to the download/upload protocol: https://github.com/oVirt/ovirt-imageio/blob/master/examples/upload
2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?
Have you tried using the sdk for download/upload disk snapshots:
https://ovirt.org/develop/release-management/features/storage/backup-restore...
We are also planning to add Unix socket support for transfers: https://bugzilla.redhat.com/show_bug.cgi?id=1585675
Thanks
Ranjit
Team EverestFalcons _______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-leave@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/VSI3A5LJNJRKNC...
_______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-leave@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/RLHVDJ4NSVHKC4...

On Tue, Jul 3, 2018 at 11:32 AM Ranjit DSouza <Ranjit.DSouza@veritas.com> wrote: ...
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.
We have following queries:
1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism.
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?
Hi Ranjit, There is no way to do this in current 4.2, but we plan to introduce in in 4.2.z. The API will be something like: GET /images/xxx-yyy/map ... [{ "start": 0, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 0}, { "start": 65536, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 65536}, { "start": 1048576, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 1048576}, { "start": 1114112, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 1114112}, ... { "start": 5465571328, "length": 22675456, "depth": 0, "zero": false, "data": true, "offset": 5465571328}, { "start": 5488246784, "length": 954138624, "depth": 0, "zero": true, "data": false, "offset": 5488246784}, { "start": 6442385408, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 6442385408}] This is basically what you get using qemu-img map. You can test play this with this using: virt-builder Fedora-27 -o /var/tmp/fedora-27.img qemu-img map -f raw --output json /var/tmp/fedora-27.img This is the first data segment: { "start": 0, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 0} This is a hole between the first data segment and the second: { "start": 65536, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 65536} This is the second data segment: { "start": 1048576, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 1048576} Based on this output, you will be able to get the allocated parts of the image using: Request: GET /image/xxx-yyy HTTP/1.1 Range: bytes=0-65535 Response: HTTP/1.1 206 Partial Content Content-Range: bytes 0-65535/6442450944 <data of first segment> Request: GET /image/xxx-yyy HTTP/1.1 Range: bytes=1048576-1114111 Response: HTTP/1.1 206 Partial Content Content-Range: bytes 1048576-1114111/6442450944 <data of second segment> And so on. If you create a sparse file on your backup media, and download and write the data segments at the correct offset, you will get the a sparse version of the image as on the server side. This will work for raw or qcow2 images on NFS >= 4.2, or for qcow2 images on block storage. For older NFS versions, or raw images on block storage, we can solve the issue by reading the entire image and detecting zeroes - which is quite expensive, so I'm not sure we will implement this, maybe it will be done later. We have experimental patch using special sparse format, that can support this use case, downloading entire image in one pass. This commit message explain the format: https://gerrit.ovirt.org/#/c/85413/12//COMMIT_MSG For more info on using random I/O APIs, see: http://ovirt.github.io/ovirt-imageio/random-io (available since 4.2.3) For example code uploading sparse images see: https://github.com/oVirt/ovirt-imageio/blob/master/examples/upload For best performance, you should run your application on a oVirt host, using unix socket to communicate with imageio. See: http://ovirt.github.io/ovirt-imageio/unix-socket (will be available in 4.2.5) All this will work only for the non-active layer in a qcow2 chain. We are working now on incremental backup which will allow the same for the active layer with a running vm. This is expected in 4.3, and we may have a tech preview at some point in 4.2.z. Incremantal backup will use the similar API, allowing detection of dirty parts of an image, so you can download only the data that was changed since the last backup. Please watch and comment on the feature page: https://ovirt.org/develop/release-management/features/storage/incremental-ba... We are also considering exposing images using NBD. This will allow downloading and uploading images using qemu-img from any host. This work depends on TLS-PSK support in qemu-img and qemu-nbd. You can follow this work here: https://lists.nongnu.org/archive/html/qemu-devel/2018-06/threads.html#08491 2. Is there an alternate method to transfer a snapshot to and from
RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?
We don't support direct access to storage by 3rd party. You should use imageio API. Can you file RFE for this, explaning the use case and the current performance issues you experience? Nir

Hi Nir Thanks for getting back! We have few follow up questions: 1. On the new ‘Allocated extents API’: Can you share the release timeline for 4.2.z? From the link below it seems like it will be available on 7/30/2018. https://www.ovirt.org/develop/release-management/releases/4.2.z/release-mana... However, we thought we would double check on this. 2. If this will be available in 4.2.z, does It mean, we can assume it will be backported to 4.3 also? 3. When we downloaded the snapshot disk using Image Transfer API, the resulting format of the disk is “raw”. However, for upload, we must upload a qcow2 disk (to enable further snapshots). It means, we need to convert it first using qemu-img convert. Or is there a way we directly ask via API for a qcow2 instead? Portion of the response of “GET /storagedomains/{storagedomain:id}/disksnapshots” "format" : "raw", "shareable" : "false", "sparse" : "true", "status" : "ok", "snapshot" : { "id" : "4756036e-92aa-4ebb-ae4b-052a30cd5109" }, "actual_size" : "1345228800", "content_type" : "data", "propagate_errors" : "false", "provisioned_size" : "21474836480", "storage_type" : "image", "total_size" : "0", "wipe_after_delete" : "false", 4. When downloading a snapshot in chunks, Is there any recommended chunk size? For our study we used 512 KB. Checked the documentation too. 5. Regarding your ask on ‘Can you file RFE for this, explaining the use case and the current performance’. Since you do not recommend direct access to NFS storage, we will consider it only if we see significant performance degradation using http download. Also, if time permits, we may check if there is a significant performance benefit using Unix socket, over http download (via Rest API). But as it stands now, getting the allocated extents support (soon), will alleviate most of our performance concerns. Thanks Ranjit From: Nir Soffer [mailto:nsoffer@redhat.com] Sent: Tuesday, July 3, 2018 4:29 PM To: Ranjit DSouza <Ranjit.DSouza@veritas.com> Cc: devel <devel@ovirt.org>; DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>; Navin Tah <Navin.Tah@veritas.com>; Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com>; Pavan Chavva; Yaniv Lavi (Dary) <ylavi@redhat.com>; Nisan, Tal <tnisan@redhat.com>; Daniel Erez <derez@redhat.com> Subject: [EXTERNAL] Re: [ovirt-devel] Image Transfer mechanism queries/API support On Tue, Jul 3, 2018 at 11:32 AM Ranjit DSouza <Ranjit.DSouza@veritas.com<mailto:Ranjit.DSouza@veritas.com>> wrote: ... We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use. We have following queries: 1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future? Hi Ranjit, There is no way to do this in current 4.2, but we plan to introduce in in 4.2.z. The API will be something like: GET /images/xxx-yyy/map ... [{ "start": 0, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 0}, { "start": 65536, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 65536}, { "start": 1048576, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 1048576}, { "start": 1114112, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 1114112}, ... { "start": 5465571328, "length": 22675456, "depth": 0, "zero": false, "data": true, "offset": 5465571328}, { "start": 5488246784, "length": 954138624, "depth": 0, "zero": true, "data": false, "offset": 5488246784}, { "start": 6442385408, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 6442385408}] This is basically what you get using qemu-img map. You can test play this with this using: virt-builder Fedora-27 -o /var/tmp/fedora-27.img qemu-img map -f raw --output json /var/tmp/fedora-27.img This is the first data segment: { "start": 0, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 0} This is a hole between the first data segment and the second: { "start": 65536, "length": 983040, "depth": 0, "zero": true, "data": false, "offset": 65536} This is the second data segment: { "start": 1048576, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 1048576} Based on this output, you will be able to get the allocated parts of the image using: Request: GET /image/xxx-yyy HTTP/1.1 Range: bytes=0-65535 Response: HTTP/1.1 206 Partial Content Content-Range: bytes 0-65535/6442450944 <data of first segment> Request: GET /image/xxx-yyy HTTP/1.1 Range: bytes=1048576-1114111 Response: HTTP/1.1 206 Partial Content Content-Range: bytes 1048576-1114111/6442450944 <data of second segment> And so on. If you create a sparse file on your backup media, and download and write the data segments at the correct offset, you will get the a sparse version of the image as on the server side. This will work for raw or qcow2 images on NFS >= 4.2, or for qcow2 images on block storage. For older NFS versions, or raw images on block storage, we can solve the issue by reading the entire image and detecting zeroes - which is quite expensive, so I'm not sure we will implement this, maybe it will be done later. We have experimental patch using special sparse format, that can support this use case, downloading entire image in one pass. This commit message explain the format: https://gerrit.ovirt.org/#/c/85413/12//COMMIT_MSG For more info on using random I/O APIs, see: http://ovirt.github.io/ovirt-imageio/random-io (available since 4.2.3) For example code uploading sparse images see: https://github.com/oVirt/ovirt-imageio/blob/master/examples/upload For best performance, you should run your application on a oVirt host, using unix socket to communicate with imageio. See: http://ovirt.github.io/ovirt-imageio/unix-socket (will be available in 4.2.5) All this will work only for the non-active layer in a qcow2 chain. We are working now on incremental backup which will allow the same for the active layer with a running vm. This is expected in 4.3, and we may have a tech preview at some point in 4.2.z. Incremantal backup will use the similar API, allowing detection of dirty parts of an image, so you can download only the data that was changed since the last backup. Please watch and comment on the feature page: https://ovirt.org/develop/release-management/features/storage/incremental-ba... We are also considering exposing images using NBD. This will allow downloading and uploading images using qemu-img from any host. This work depends on TLS-PSK support in qemu-img and qemu-nbd. You can follow this work here: https://lists.nongnu.org/archive/html/qemu-devel/2018-06/threads.html#08491 2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage? We don't support direct access to storage by 3rd party. You should use imageio API. Can you file RFE for this, explaning the use case and the current performance issues you experience? Nir

Hello oVirt Development team We had some more questions as we continue working on REST APIs. Kindly help us answer the same. What is the expiry of generated access_token? Description: We have observed that the output of “/ovirt-engine/sso/oauth/token” contains a field “exp” which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users? How to retrieve the ‘creation_status’ of the snapshot through REST API? Description: We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field "snapshot_status": "ok". Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status? At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>" Q. How to call a DELETE snapshot API with ‘async’ operation as ‘false’? Description: The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of it. Thanks Suchitra From: Ranjit DSouza <Ranjit.DSouza@veritas.com> Date: Tuesday, July 3, 2018 at 1:43 PM To: "devel@ovirt.org" <devel@ovirt.org> Cc: DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>, Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com>, Pavan Chavva <pchavva@redhat.com>, Navin Tah <Navin.Tah@veritas.com> Subject: Image Transfer mechanism queries/API support Hello oVirt Development team We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use. We have following queries: 1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future? 2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage? Thanks Ranjit Team EverestFalcons

Ondro/Ravi/Tal, could you please reply to below questions? On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar < Suchitra.Herwadkar@veritas.com> wrote:
Hello oVirt Development team
We had some more questions as we continue working on REST APIs. Kindly help us answer the same.
What is the expiry of generated access_token?
*Description: *We have observed that the output of *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users?
How to retrieve the ‘creation_status’ of the snapshot through REST API?
*Description: *We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field *"snapshot_status": "ok". *Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status?
At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>"
*Q.* How to call a DELETE snapshot API with ‘async’ operation as ‘false’?
*Description: *The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of it.
Thanks
Suchitra
*From: *Ranjit DSouza <Ranjit.DSouza@veritas.com> *Date: *Tuesday, July 3, 2018 at 1:43 PM *To: *"devel@ovirt.org" <devel@ovirt.org> *Cc: *DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU- EverestFalcons@veritas.com>, Sudhakar Paulzagade < Sudhakar.Paulzagade@veritas.com>, Pavan Chavva <pchavva@redhat.com>, Navin Tah <Navin.Tah@veritas.com> *Subject: *Image Transfer mechanism queries/API support
Hello oVirt Development team
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.
We have following queries:
1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism.
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?
2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?
Thanks
Ranjit
Team EverestFalcons
_______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-leave@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community- guidelines/ List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/ message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/
-- Martin Perina Associate Manager, Software Engineering Red Hat Czech s.r.o.

On Wed, Jul 18, 2018 at 9:57 AM, Martin Perina <mperina@redhat.com> wrote:
Ondro/Ravi/Tal, could you please reply to below questions?
On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar < Suchitra.Herwadkar@veritas.com> wrote:
Hello oVirt Development team
We had some more questions as we continue working on REST APIs. Kindly help us answer the same.
What is the expiry of generated access_token?
*Description: *We have observed that the output of *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users?
The exp field in the returned json is the expiration date on the ldap server, not the token expiration on the engine side. On the engine side the token will expire after 30 minute of inactivity. Every use of the token to perform any query or action will renew the sso token.
How to retrieve the ‘creation_status’ of the snapshot through REST API?
*Description: *We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field *"snapshot_status": "ok". *Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status?
At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>"
*Q.* How to call a DELETE snapshot API with ‘async’ operation as ‘false’?
*Description: *The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of it.
Thanks
Suchitra
*From: *Ranjit DSouza <Ranjit.DSouza@veritas.com> *Date: *Tuesday, July 3, 2018 at 1:43 PM *To: *"devel@ovirt.org" <devel@ovirt.org> *Cc: *DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcon s@veritas.com>, Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com>, Pavan Chavva <pchavva@redhat.com>, Navin Tah <Navin.Tah@veritas.com> *Subject: *Image Transfer mechanism queries/API support
Hello oVirt Development team
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.
We have following queries:
1. While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism.
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?
2. Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?
Thanks
Ranjit
Team EverestFalcons
_______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-leave@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/communit y/about/community-guidelines/ List Archives: https://lists.ovirt.org/archiv es/list/devel@ovirt.org/message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/
-- Martin Perina Associate Manager, Software Engineering Red Hat Czech s.r.o.

On 07/18/2018 03:57 PM, Martin Perina wrote:
Ondro/Ravi/Tal, could you please reply to below questions?
On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar <Suchitra.Herwadkar@veritas.com <mailto:Suchitra.Herwadkar@veritas.com>> wrote:
Hello oVirt Development team____
__ __
We had some more questions as we continue working on REST APIs. Kindly help us answer the same. ____
__ __
What is the expiry of generated access_token? ____
*Description: *We have observed that the output of *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users?
I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi?
____
__ __
How to retrieve the ‘creation_status’ of the snapshot through REST API? ____
*Description: *We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field *"snapshot_status": "ok". *Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status?____
At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>"____
The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish.
__ __
*Q.* How to call a DELETE snapshot API with ‘async’ operation as ‘false’? ____
*Description: *The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of it.
Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it. If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously.
____
__ __
Thanks____
Suchitra ____
__ __
__ __
*From: *Ranjit DSouza <Ranjit.DSouza@veritas.com <mailto:Ranjit.DSouza@veritas.com>> *Date: *Tuesday, July 3, 2018 at 1:43 PM *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" <devel@ovirt.org <mailto:devel@ovirt.org>> *Cc: *DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> *Subject: *Image Transfer mechanism queries/API support____
__ __
Hello oVirt Development team____
____
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.____
We have following queries:____
____
__1.__While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. ____
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?____
____
__2.__Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?____
____
Thanks____
Ranjit____
Team EverestFalcons____
_______________________________________________ Devel mailing list -- devel@ovirt.org <mailto:devel@ovirt.org> To unsubscribe send an email to devel-leave@ovirt.org <mailto:devel-leave@ovirt.org> Privacy Statement: https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/> oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/> List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y... <https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/>
-- Martin Perina Associate Manager, Software Engineering Red Hat Czech s.r.o.

Hi Ondra and team Thanks for helping us out on below answers. We recently have reported bug using Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1608452 This is regarding download of snapshot disk, having multiple snapshots before creation of snapshot for backup. We have observed that in case of multiple snapshots, the caller needs to keep track of the chain and have them in the same order while uploading them back. Is this a correct understanding? We were looking for an alternate approach of downloading entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). We could achieve this if this only if it was a first snapshot when the actual size is same as the provisional size and not for interleaved snapshots. Kindly advise if that's possible. Reference Articles: https://ovirt.org/develop/release-management/features/storage/backup-restore... https://bugzilla.redhat.com/show_bug.cgi?id=1405805 Appreciate your time! Thanks Suchitra On 7/18/18, 8:13 PM, "Ondra Machacek" <omachace@redhat.com> wrote: On 07/18/2018 03:57 PM, Martin Perina wrote: > Ondro/Ravi/Tal, could you please reply to below questions? > > > On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar > <Suchitra.Herwadkar@veritas.com <mailto:Suchitra.Herwadkar@veritas.com>> > wrote: > > Hello oVirt Development team____ > > __ __ > > We had some more questions as we continue working on REST APIs. > Kindly help us answer the same. ____ > > __ __ > > What is the expiry of generated access_token? ____ > > *Description: *We have observed that the output of > *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which > points to the date when the access_token is going to expire. In our > case, we have seen this value to be 8 days later. However, the > access_token gets expired within an hour. We would like to > understand exactly what is the lifetime of this access_token? What > we are seeing is something unexpected? Is this value configurable by > users? I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi? > > ____ > > __ __ > > How to retrieve the ‘creation_status’ of the snapshot through REST > API? ____ > > *Description: *We see there is a way to get it as part of query > snapshot API viz > /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the > response contains detailed information of snapshot, along with the > field *"snapshot_status": "ok". *Just wanted to check if there is > another API explicitly devoted to getting the creation status so > that we can poll it periodically to know the status?____ > > At least in CURL, we see there is some URL to fetch the creation > status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> > /creation_status/<WHAT_IS_THIS_ID?>"____ The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish. > > __ __ > > *Q.* How to call a DELETE snapshot API with ‘async’ operation as > ‘false’? ____ > > *Description: *The documentation for DELETE snapshot API mentions > that the DELETE operation can be invoked synchronously or > asynchronously based on the value of the parameter ‘async’. I wanted > to perform DELETE operation synchronously, so tried providing this > parameter in the body as “<async>false<async>”, still it was doing > the operation asynchronously. Please advise on the correct usage of it. Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it. If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously. > > ____ > > __ __ > > Thanks____ > > Suchitra ____ > > __ __ > > __ __ > > *From: *Ranjit DSouza <Ranjit.DSouza@veritas.com > <mailto:Ranjit.DSouza@veritas.com>> > *Date: *Tuesday, July 3, 2018 at 1:43 PM > *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" <devel@ovirt.org > <mailto:devel@ovirt.org>> > *Cc: *DL-VTAS-ENG-NBU-EverestFalcons > <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com > <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar > Paulzagade <Sudhakar.Paulzagade@veritas.com > <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva > <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah > <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> > *Subject: *Image Transfer mechanism queries/API support____ > > __ __ > > Hello oVirt Development team____ > > ____ > > We had a conversation with Pavan Chavva for supporting RHV. He had > suggested to contact you with queries related to oVirt APIs we plan > to use.____ > > We have following queries:____ > > ____ > > __1.__While downloading a snapshot disk, can we identify allocated > extents and download only those using oVirt API? We are able to > download the disk using the Image Transfer API mechanism. ____ > > However, this method downloads the entire disk including the > non-allocated extents, which is a performance overhead. If this > functionality does not exist at this point will it be available in > near future?____ > > ____ > > __2.__Is there an alternate method to transfer a snapshot to and > from RHV storage? Are there other methods such as NFS share where we > can download snapshot image to and from RHV storage?____ > > ____ > > Thanks____ > > Ranjit____ > > Team EverestFalcons____ > > > _______________________________________________ > Devel mailing list -- devel@ovirt.org <mailto:devel@ovirt.org> > To unsubscribe send an email to devel-leave@ovirt.org > <mailto:devel-leave@ovirt.org> > Privacy Statement: https://www.ovirt.org/site/privacy-policy/ > <https://www.ovirt.org/site/privacy-policy/> > oVirt Code of Conduct: > https://www.ovirt.org/community/about/community-guidelines/ > <https://www.ovirt.org/community/about/community-guidelines/> > List Archives: > https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y... > <https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/> > > > > > -- > Martin Perina > Associate Manager, Software Engineering > Red Hat Czech s.r.o.

Hi Pavan Is it possible to discuss this over a call/webex? It will help us put up our perspective and we can discuss options. Let us know! -Suchitra On 7/26/18, 6:44 AM, "Suchitra Herwadkar" <Suchitra.Herwadkar@veritas.com> wrote: Hi Ondra and team Thanks for helping us out on below answers. We recently have reported bug using Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1608452 This is regarding download of snapshot disk, having multiple snapshots before creation of snapshot for backup. We have observed that in case of multiple snapshots, the caller needs to keep track of the chain and have them in the same order while uploading them back. Is this a correct understanding? We were looking for an alternate approach of downloading entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). We could achieve this if this only if it was a first snapshot when the actual size is same as the provisional size and not for interleaved snapshots. Kindly advise if that's possible. Reference Articles: https://ovirt.org/develop/release-management/features/storage/backup-restore... https://bugzilla.redhat.com/show_bug.cgi?id=1405805 Appreciate your time! Thanks Suchitra On 7/18/18, 8:13 PM, "Ondra Machacek" <omachace@redhat.com> wrote: On 07/18/2018 03:57 PM, Martin Perina wrote: > Ondro/Ravi/Tal, could you please reply to below questions? > > > On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar > <Suchitra.Herwadkar@veritas.com <mailto:Suchitra.Herwadkar@veritas.com>> > wrote: > > Hello oVirt Development team____ > > __ __ > > We had some more questions as we continue working on REST APIs. > Kindly help us answer the same. ____ > > __ __ > > What is the expiry of generated access_token? ____ > > *Description: *We have observed that the output of > *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which > points to the date when the access_token is going to expire. In our > case, we have seen this value to be 8 days later. However, the > access_token gets expired within an hour. We would like to > understand exactly what is the lifetime of this access_token? What > we are seeing is something unexpected? Is this value configurable by > users? I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi? > > ____ > > __ __ > > How to retrieve the ‘creation_status’ of the snapshot through REST > API? ____ > > *Description: *We see there is a way to get it as part of query > snapshot API viz > /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the > response contains detailed information of snapshot, along with the > field *"snapshot_status": "ok". *Just wanted to check if there is > another API explicitly devoted to getting the creation status so > that we can poll it periodically to know the status?____ > > At least in CURL, we see there is some URL to fetch the creation > status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> > /creation_status/<WHAT_IS_THIS_ID?>"____ The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish. > > __ __ > > *Q.* How to call a DELETE snapshot API with ‘async’ operation as > ‘false’? ____ > > *Description: *The documentation for DELETE snapshot API mentions > that the DELETE operation can be invoked synchronously or > asynchronously based on the value of the parameter ‘async’. I wanted > to perform DELETE operation synchronously, so tried providing this > parameter in the body as “<async>false<async>”, still it was doing > the operation asynchronously. Please advise on the correct usage of it. Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it. If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously. > > ____ > > __ __ > > Thanks____ > > Suchitra ____ > > __ __ > > __ __ > > *From: *Ranjit DSouza <Ranjit.DSouza@veritas.com > <mailto:Ranjit.DSouza@veritas.com>> > *Date: *Tuesday, July 3, 2018 at 1:43 PM > *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" <devel@ovirt.org > <mailto:devel@ovirt.org>> > *Cc: *DL-VTAS-ENG-NBU-EverestFalcons > <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com > <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar > Paulzagade <Sudhakar.Paulzagade@veritas.com > <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva > <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah > <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> > *Subject: *Image Transfer mechanism queries/API support____ > > __ __ > > Hello oVirt Development team____ > > ____ > > We had a conversation with Pavan Chavva for supporting RHV. He had > suggested to contact you with queries related to oVirt APIs we plan > to use.____ > > We have following queries:____ > > ____ > > __1.__While downloading a snapshot disk, can we identify allocated > extents and download only those using oVirt API? We are able to > download the disk using the Image Transfer API mechanism. ____ > > However, this method downloads the entire disk including the > non-allocated extents, which is a performance overhead. If this > functionality does not exist at this point will it be available in > near future?____ > > ____ > > __2.__Is there an alternate method to transfer a snapshot to and > from RHV storage? Are there other methods such as NFS share where we > can download snapshot image to and from RHV storage?____ > > ____ > > Thanks____ > > Ranjit____ > > Team EverestFalcons____ > > > _______________________________________________ > Devel mailing list -- devel@ovirt.org <mailto:devel@ovirt.org> > To unsubscribe send an email to devel-leave@ovirt.org > <mailto:devel-leave@ovirt.org> > Privacy Statement: https://www.ovirt.org/site/privacy-policy/ > <https://www.ovirt.org/site/privacy-policy/> > oVirt Code of Conduct: > https://www.ovirt.org/community/about/community-guidelines/ > <https://www.ovirt.org/community/about/community-guidelines/> > List Archives: > https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y... > <https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/> > > > > > -- > Martin Perina > Associate Manager, Software Engineering > Red Hat Czech s.r.o.

Hi Suchitra, Sure.let me get back to you with more info. Best, Pavan. On Mon, Jul 30, 2018, 9:34 AM Suchitra Herwadkar < Suchitra.Herwadkar@veritas.com> wrote:
Hi Pavan Is it possible to discuss this over a call/webex? It will help us put up our perspective and we can discuss options.
Let us know! -Suchitra
On 7/26/18, 6:44 AM, "Suchitra Herwadkar" <Suchitra.Herwadkar@veritas.com> wrote:
Hi Ondra and team
Thanks for helping us out on below answers.
We recently have reported bug using Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1608452
This is regarding download of snapshot disk, having multiple snapshots before creation of snapshot for backup. We have observed that in case of multiple snapshots, the caller needs to keep track of the chain and have them in the same order while uploading them back.
Is this a correct understanding? We were looking for an alternate approach of downloading entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). We could achieve this if this only if it was a first snapshot when the actual size is same as the provisional size and not for interleaved snapshots.
Kindly advise if that's possible.
Reference Articles:
https://ovirt.org/develop/release-management/features/storage/backup-restore... https://bugzilla.redhat.com/show_bug.cgi?id=1405805
Appreciate your time!
Thanks Suchitra
On 7/18/18, 8:13 PM, "Ondra Machacek" <omachace@redhat.com> wrote:
On 07/18/2018 03:57 PM, Martin Perina wrote: > Ondro/Ravi/Tal, could you please reply to below questions? > > > On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar > <Suchitra.Herwadkar@veritas.com <mailto: Suchitra.Herwadkar@veritas.com>> > wrote: > > Hello oVirt Development team____ > > __ __ > > We had some more questions as we continue working on REST APIs. > Kindly help us answer the same. ____ > > __ __ > > What is the expiry of generated access_token? ____ > > *Description: *We have observed that the output of > *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which > points to the date when the access_token is going to expire. In our > case, we have seen this value to be 8 days later. However, the > access_token gets expired within an hour. We would like to > understand exactly what is the lifetime of this access_token? What > we are seeing is something unexpected? Is this value configurable by > users?
I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi?
> > ____ > > __ __ > > How to retrieve the ‘creation_status’ of the snapshot through REST > API? ____ > > *Description: *We see there is a way to get it as part of query > snapshot API viz > /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the > response contains detailed information of snapshot, along with the > field *"snapshot_status": "ok". *Just wanted to check if there is > another API explicitly devoted to getting the creation status so > that we can poll it periodically to know the status?____ > > At least in CURL, we see there is some URL to fetch the creation > status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> > /creation_status/<WHAT_IS_THIS_ID?>"____
The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish.
> > __ __ > > *Q.* How to call a DELETE snapshot API with ‘async’ operation as > ‘false’? ____ > > *Description: *The documentation for DELETE snapshot API mentions > that the DELETE operation can be invoked synchronously or > asynchronously based on the value of the parameter ‘async’. I wanted > to perform DELETE operation synchronously, so tried providing this > parameter in the body as “<async>false<async>”, still it was doing > the operation asynchronously. Please advise on the correct usage of it.
Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it.
If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously.
> > ____ > > __ __ > > Thanks____ > > Suchitra ____ > > __ __ > > __ __ > > *From: *Ranjit DSouza <Ranjit.DSouza@veritas.com > <mailto:Ranjit.DSouza@veritas.com>> > *Date: *Tuesday, July 3, 2018 at 1:43 PM > *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" < devel@ovirt.org > <mailto:devel@ovirt.org>> > *Cc: *DL-VTAS-ENG-NBU-EverestFalcons > <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com > <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar > Paulzagade <Sudhakar.Paulzagade@veritas.com > <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva > <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah > <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> > *Subject: *Image Transfer mechanism queries/API support____ > > __ __ > > Hello oVirt Development team____ > > ____ > > We had a conversation with Pavan Chavva for supporting RHV. He had > suggested to contact you with queries related to oVirt APIs we plan > to use.____ > > We have following queries:____ > > ____ > > __1.__While downloading a snapshot disk, can we identify allocated > extents and download only those using oVirt API? We are able to > download the disk using the Image Transfer API mechanism. ____ > > However, this method downloads the entire disk including the > non-allocated extents, which is a performance overhead. If this > functionality does not exist at this point will it be available in > near future?____ > > ____ > > __2.__Is there an alternate method to transfer a snapshot to and > from RHV storage? Are there other methods such as NFS share where we > can download snapshot image to and from RHV storage?____ > > ____ > > Thanks____ > > Ranjit____ > > Team EverestFalcons____ > > > _______________________________________________ > Devel mailing list -- devel@ovirt.org <mailto: devel@ovirt.org> > To unsubscribe send an email to devel-leave@ovirt.org > <mailto:devel-leave@ovirt.org> > Privacy Statement: https://www.ovirt.org/site/privacy-policy/ > <https://www.ovirt.org/site/privacy-policy/> > oVirt Code of Conduct: > https://www.ovirt.org/community/about/community-guidelines/ > <https://www.ovirt.org/community/about/community-guidelines/
> List Archives: > https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y... > < https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y...
> > > > > -- > Martin Perina > Associate Manager, Software Engineering > Red Hat Czech s.r.o.

Hi Pavan and all: We have committed the RHV support for next release of NetBackup. It would help if we can have a weekly/bi weekly call for next 2 months. If there are no topics then we can cancel the call. Please let us know if this is fine and we can send a calendar invite. + Renee Thanks Navin Sent from my iPhone
On Jul 30, 2018, at 7:04 PM, Suchitra Herwadkar <Suchitra.Herwadkar@veritas.com> wrote:
Hi Pavan Is it possible to discuss this over a call/webex? It will help us put up our perspective and we can discuss options.
Let us know! -Suchitra
On 7/26/18, 6:44 AM, "Suchitra Herwadkar" <Suchitra.Herwadkar@veritas.com> wrote:
Hi Ondra and team
Thanks for helping us out on below answers.
We recently have reported bug using Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1608452
This is regarding download of snapshot disk, having multiple snapshots before creation of snapshot for backup. We have observed that in case of multiple snapshots, the caller needs to keep track of the chain and have them in the same order while uploading them back.
Is this a correct understanding? We were looking for an alternate approach of downloading entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). We could achieve this if this only if it was a first snapshot when the actual size is same as the provisional size and not for interleaved snapshots.
Kindly advise if that's possible.
Reference Articles: https://ovirt.org/develop/release-management/features/storage/backup-restore... https://bugzilla.redhat.com/show_bug.cgi?id=1405805
Appreciate your time!
Thanks Suchitra
On 7/18/18, 8:13 PM, "Ondra Machacek" <omachace@redhat.com> wrote:
On 07/18/2018 03:57 PM, Martin Perina wrote: Ondro/Ravi/Tal, could you please reply to below questions?
On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar <Suchitra.Herwadkar@veritas.com <mailto:Suchitra.Herwadkar@veritas.com>> wrote:
Hello oVirt Development team____
__ __
We had some more questions as we continue working on REST APIs. Kindly help us answer the same. ____
__ __
What is the expiry of generated access_token? ____
*Description: *We have observed that the output of *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users?
I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi?
____
__ __
How to retrieve the ‘creation_status’ of the snapshot through REST API? ____
*Description: *We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field *"snapshot_status": "ok". *Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status?____
At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>"____
The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish.
__ __
*Q.* How to call a DELETE snapshot API with ‘async’ operation as ‘false’? ____
*Description: *The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of it.
Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it.
If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously.
____
__ __
Thanks____
Suchitra ____
__ __
__ __
*From: *Ranjit DSouza <Ranjit.DSouza@veritas.com <mailto:Ranjit.DSouza@veritas.com>> *Date: *Tuesday, July 3, 2018 at 1:43 PM *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" <devel@ovirt.org <mailto:devel@ovirt.org>> *Cc: *DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> *Subject: *Image Transfer mechanism queries/API support____
__ __
Hello oVirt Development team____
____
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.____
We have following queries:____
____
__1.__While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. ____
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?____
____
__2.__Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?____
____
Thanks____
Ranjit____
Team EverestFalcons____
_______________________________________________ Devel mailing list -- devel@ovirt.org <mailto:devel@ovirt.org> To unsubscribe send an email to devel-leave@ovirt.org <mailto:devel-leave@ovirt.org> Privacy Statement: https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/> oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/> List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y... <https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y2Y3GMBLXMTRVHT33ZK/>
-- Martin Perina Associate Manager, Software Engineering Red Hat Czech s.r.o.

Hi Navin, I will tentatively schedule a weekly call for every Thursday from 10:00 to 10:30 AM (or up to 11:00 if required). Would this slot work for Veritas? I will confirm the time with the rest of the Red Hat team as well and make changes accordingly. Best, Pavan. On Mon, Jul 30, 2018, 8:56 PM Navin Tah <Navin.Tah@veritas.com> wrote:
Hi Pavan and all:
We have committed the RHV support for next release of NetBackup. It would help if we can have a weekly/bi weekly call for next 2 months. If there are no topics then we can cancel the call.
Please let us know if this is fine and we can send a calendar invite.
+ Renee
Thanks Navin
Sent from my iPhone
On Jul 30, 2018, at 7:04 PM, Suchitra Herwadkar < Suchitra.Herwadkar@veritas.com> wrote:
Hi Pavan Is it possible to discuss this over a call/webex? It will help us put up our perspective and we can discuss options.
Let us know! -Suchitra
On 7/26/18, 6:44 AM, "Suchitra Herwadkar" < Suchitra.Herwadkar@veritas.com> wrote:
Hi Ondra and team
Thanks for helping us out on below answers.
We recently have reported bug using Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1608452
This is regarding download of snapshot disk, having multiple snapshots before creation of snapshot for backup. We have observed that in case of multiple snapshots, the caller needs to keep track of the chain and have them in the same order while uploading them back.
Is this a correct understanding? We were looking for an alternate approach of downloading entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). We could achieve this if this only if it was a first snapshot when the actual size is same as the provisional size and not for interleaved snapshots.
Kindly advise if that's possible.
Reference Articles:
https://ovirt.org/develop/release-management/features/storage/backup-restore...
https://bugzilla.redhat.com/show_bug.cgi?id=1405805
Appreciate your time!
Thanks Suchitra
On 7/18/18, 8:13 PM, "Ondra Machacek" <omachace@redhat.com> wrote:
On 07/18/2018 03:57 PM, Martin Perina wrote: Ondro/Ravi/Tal, could you please reply to below questions?
On Tue, Jul 17, 2018 at 3:59 PM, Suchitra Herwadkar <Suchitra.Herwadkar@veritas.com <mailto:Suchitra.Herwadkar@veritas.com>>
wrote:
Hello oVirt Development team____
__ __
We had some more questions as we continue working on REST APIs. Kindly help us answer the same. ____
__ __
What is the expiry of generated access_token? ____
*Description: *We have observed that the output of *“/ovirt-engine/sso/oauth/token” *contains a field *“exp”* which points to the date when the access_token is going to expire. In our case, we have seen this value to be 8 days later. However, the access_token gets expired within an hour. We would like to understand exactly what is the lifetime of this access_token? What we are seeing is something unexpected? Is this value configurable by users?
I know you can increase user session timeout in engine-config property called 'UserSessionTimeOutInterval', by default it's one hour (note you must restart ovirt-engine in order to take effect of the change). How the field 'exp' is related, I don't exactly know. Ravi?
____
__ __
How to retrieve the ‘creation_status’ of the snapshot through REST API? ____
*Description: *We see there is a way to get it as part of query snapshot API viz /ovirt-engine/api/vms/<vm_id>/snapshots/<snapshot_id> where the response contains detailed information of snapshot, along with the field *"snapshot_status": "ok". *Just wanted to check if there is another API explicitly devoted to getting the creation status so that we can poll it periodically to know the status?____
At least in CURL, we see there is some URL to fetch the creation status like this /ovirt-engine/api/<vm_id>/snapshots/<snapshot_id> /creation_status/<WHAT_IS_THIS_ID?>"____
The link to creation_status is provided in the response of create snapshot operation, if you do it asynchronously. But it's not recomended to use it that way. As you've described polling the 'snapshot_status' attribute is the best way of waiting for operation to finish.
__ __
*Q.* How to call a DELETE snapshot API with ‘async’ operation as ‘false’? ____
*Description: *The documentation for DELETE snapshot API mentions that the DELETE operation can be invoked synchronously or asynchronously based on the value of the parameter ‘async’. I wanted to perform DELETE operation synchronously, so tried providing this parameter in the body as “<async>false<async>”, still it was doing the operation asynchronously. Please advise on the correct usage of
it.
Same as above the sync/async is incorrect here. Both operations behave the same, but async will return the 'creation_status' which you can poll to get the result, but every operation is implemented differently so I wouldn't recomend to use it.
If you want to be sure the snapshost is deleted I the best way is the run DELETE /api/vms/123/snapshots/456, and then do polling of /api/vms /123/snapshots/456 until it returns 404. This operation unfortunatelly can't be invoked synchronously.
____
__ __
Thanks____
Suchitra ____
__ __
__ __
*From: *Ranjit DSouza <Ranjit.DSouza@veritas.com <mailto:Ranjit.DSouza@veritas.com>> *Date: *Tuesday, July 3, 2018 at 1:43 PM *To: *"devel@ovirt.org <mailto:devel@ovirt.org>" <devel@ovirt.org <mailto:devel@ovirt.org>> *Cc: *DL-VTAS-ENG-NBU-EverestFalcons <DL-VTAS-ENG-NBU-EverestFalcons@veritas.com <mailto:DL-VTAS-ENG-NBU-EverestFalcons@veritas.com>>, Sudhakar Paulzagade <Sudhakar.Paulzagade@veritas.com <mailto:Sudhakar.Paulzagade@veritas.com>>, Pavan Chavva <pchavva@redhat.com <mailto:pchavva@redhat.com>>, Navin Tah <Navin.Tah@veritas.com <mailto:Navin.Tah@veritas.com>> *Subject: *Image Transfer mechanism queries/API support____
__ __
Hello oVirt Development team____
____
We had a conversation with Pavan Chavva for supporting RHV. He had suggested to contact you with queries related to oVirt APIs we plan to use.____
We have following queries:____
____
__1.__While downloading a snapshot disk, can we identify allocated extents and download only those using oVirt API? We are able to download the disk using the Image Transfer API mechanism. ____
However, this method downloads the entire disk including the non-allocated extents, which is a performance overhead. If this functionality does not exist at this point will it be available in near future?____
____
__2.__Is there an alternate method to transfer a snapshot to and from RHV storage? Are there other methods such as NFS share where we can download snapshot image to and from RHV storage?____
____
Thanks____
Ranjit____
Team EverestFalcons____
_______________________________________________ Devel mailing list -- devel@ovirt.org <mailto:devel@ovirt.org> To unsubscribe send an email to devel-leave@ovirt.org <mailto:devel-leave@ovirt.org> Privacy Statement: https://www.ovirt.org/site/privacy-policy/ <https://www.ovirt.org/site/privacy-policy/> oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ <https://www.ovirt.org/community/about/community-guidelines/> List Archives:
https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y...
< https://lists.ovirt.org/archives/list/devel@ovirt.org/message/QJUITZUJKWVG2Y...
-- Martin Perina Associate Manager, Software Engineering Red Hat Czech s.r.o.
participants (10)
-
Daniel Erez
-
Martin Perina
-
Navin Tah
-
Nir Soffer
-
Ondra Machacek
-
Pavan Chavva
-
Ranjit DSouza
-
Ravi Shankar Nori
-
Suchitra Herwadkar
-
Yaniv Lavi