public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] VM Incremental backup for 3-party solution (Qemu)
@ 2021-08-19 13:21 Radosław Korzeniewski
  2021-08-19 14:22 ` Stefan Reiter
  0 siblings, 1 reply; 3+ messages in thread
From: Radosław Korzeniewski @ 2021-08-19 13:21 UTC (permalink / raw)
  To: pve-devel

Hello,

I'm working on implementing VM incremental backup for a 3-party solution
based on Qemu dirty bitmap which is available in Proxmox. Unfortunately I'm
unable to make it working, so I decided to ask for some help.
First I'm adding a dirty bitmap using the `block-dirty-bitmap-add` command
and making a full backup with `drive-backup` command.
Both are executed in transactions. The bitmap is successfully added.
But the external backup file is populated with ~193K of data and hung.
The backup job is added and QMP returns 3 events:
`"status": "created"`, `"status": "running"`, `"status": "paused"`.
I'm not sure why.
As finally the job is "paused", I try to resume it with `block-job-resume`
command
the `query-block-jobs` returns `"status": "paused"` i `"paused": true`.
All I can do is to cancel the job with the `block-job-cancel` command.
No commands return any error.

Do you have any idea why the job fell into a paused state and how I
should proceed?
-- 
Radosław Korzeniewski
radoslaw@korzeniewski.net


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [pve-devel] VM Incremental backup for 3-party solution (Qemu)
  2021-08-19 13:21 [pve-devel] VM Incremental backup for 3-party solution (Qemu) Radosław Korzeniewski
@ 2021-08-19 14:22 ` Stefan Reiter
  2021-08-24 10:58   ` Radosław Korzeniewski
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Reiter @ 2021-08-19 14:22 UTC (permalink / raw)
  To: Proxmox VE development discussion, Radosław Korzeniewski

On 8/19/21 3:21 PM, Radosław Korzeniewski wrote:
> Hello,
> 
> I'm working on implementing VM incremental backup for a 3-party solution
> based on Qemu dirty bitmap which is available in Proxmox. Unfortunately I'm
> unable to make it working, so I decided to ask for some help.
> First I'm adding a dirty bitmap using the `block-dirty-bitmap-add` command
> and making a full backup with `drive-backup` command.
> Both are executed in transactions. The bitmap is successfully added.
> But the external backup file is populated with ~193K of data and hung.
> The backup job is added and QMP returns 3 events:
> `"status": "created"`, `"status": "running"`, `"status": "paused"`.
> I'm not sure why.
> As finally the job is "paused", I try to resume it with `block-job-resume`
> command
> the `query-block-jobs` returns `"status": "paused"` i `"paused": true`.
> All I can do is to cancel the job with the `block-job-cancel` command.
> No commands return any error.
> 
> Do you have any idea why the job fell into a paused state and how I
> should proceed?
> 

Hi,

as a shot in the dark I would say you specified the bitmap in your initial
backup command, and it only backed up what had been written between the
time you did 'bitmap-add' and 'drive-backup'..

But more importantly, 'drive-backup' and the bitmap support around that
are not based on our code, they are from upstream QEMU. We implement the
'backup' and 'query-backup' QMP calls.

There's nothing against using the native calls if they fit your use case,
but for support it would make more sense to contact upstream and read
through their documentation :)

~ Stefan




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [pve-devel] VM Incremental backup for 3-party solution (Qemu)
  2021-08-19 14:22 ` Stefan Reiter
@ 2021-08-24 10:58   ` Radosław Korzeniewski
  0 siblings, 0 replies; 3+ messages in thread
From: Radosław Korzeniewski @ 2021-08-24 10:58 UTC (permalink / raw)
  To: Stefan Reiter; +Cc: Proxmox VE development discussion

Hello,

czw., 19 sie 2021 o 16:22 Stefan Reiter <s.reiter@proxmox.com> napisał(a):

> But more importantly, 'drive-backup' and the bitmap support around that
>
are not based on our code, they are from upstream QEMU. We implement the
> 'backup' and 'query-backup' QMP calls.
>

So, did you "change" the upstream feature when implementing your own?


> There's nothing against using the native calls if they fit your use case,
> but for support it would make more sense to contact upstream and read
> through their documentation :)
>

Thanks for the tips. I already read the Qemu documentation and I'm able to
make a successful full + incr backup using a "stock" Qemu with my
procedure. So I assume the procedure is fine.
Then I decided to ask a question here as it is not working with Proxmox, so
I suspect that something changed between upstream and Proxmox distributions.
I'm not a Proxmox developer, so finding what is not working on Qemu
hypervisor is hard.

Back to my main question: Do you have any idea why the job fell into a
paused state and how I should proceed?
-- 
Radosław Korzeniewski
radoslaw@korzeniewski.net


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-08-24 10:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-19 13:21 [pve-devel] VM Incremental backup for 3-party solution (Qemu) Radosław Korzeniewski
2021-08-19 14:22 ` Stefan Reiter
2021-08-24 10:58   ` Radosław Korzeniewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal