Backing Up OpenBSD VM

mhammett

Renowned Member
Mar 11, 2009
161
2
83
DeKalb, Illinois, United States
Code:
ERROR: Backup of VM 102 failed - disk 'virtio0' 'local-lvm:vm-102-disk-1' (iothread=on) can't use backup feature currently. Please set backup=no for this drive at /usr/share/perl5/PVE/VZDump/QemuServer.pm line 77.

I have an OpenBSD 6.0 guest and I'm trying to backup the VM. I'm getting the above error. I'm not sure where to go from here. Not much information via Google.
 
if you enable 'iothread' for a vm disk, you cannot backup this disk
so either disable backup for the disk for which you enabled iothreads or disable iothreads on the disk
 
Code:
102: May 15 01:00:05 ERROR: VM 102 qmp command 'guest-fsfreeze-freeze' failed - unable to connect to VM 102 qga socket - timeout after 35827 retries
102: May 15 01:00:15 ERROR: VM 102 qmp command 'guest-fsfreeze-thaw' failed - unable to connect to VM 102 qga socket - timeout after 101 retries

I have been getting a different error now. It looks like I need to install the qemu guest agent. So far that looks like it requires me to install the entire QEMU system on the guest to get the agent. If anyone knows otherwise, please let me know.
 
ACPI has reduced functionality as compared to the agent. ACPI isn't going to flush the filesystem to give me a clean backup.

Per this page: http://www.linux-kvm.org/page/VMchannel_Requirements

Would I add something like this:
Code:
opts: -device virtio-serial \-device virtserialport,chardev=...,name=org.linux-kvm.port.0 \-device virtserialport,chardev=...,name=org.linux-kvm.port.1
to the VM's conf?
 
the qemu guest agent is a stand alone binary (package) on most distros / OSes.
 
Right. I've already installed the Qemu package in OpenBSD (required to get the guest agent) and had related discussions on their mailing list. However, I've circled back to Proxmox because from what I understand, OpenBSD doesn't have drivers for the default device Qemu uses (I just woke up, but IIRC virtio-serial), so I'm checking into how to specify using ISA-serial instead.
 
Last edited:

please stop this nonsense. if there is no response within a given time frame, it probably means you will need to find the answer yourself...
 
I've done a significant amount of work myself given that OpenBSD itself isn't Proxmox's responsibility, but the part that remains is the configuration of Proxmox. I'm not likely to find much assistance with that anywhere outside of Proxmox. Most other platforms use libvirt, which is what I find the assistance with. Proxmox does not use libvirt. I cannot rely on outside sources.

Other than my initial question, I have not had any serious responses to my inquiry.
 
you can add arbitrary qemu arguments via the "args" parameter in the VM config file (as "man qm.conf" says), and "qm showcmd VMID" will give you the exact qemu command line that PVE uses to start the VM (as "man qm" says). the latter can be modified and executed, and PVE will still be able to interact with the guest started in this manner (if you keep stuff like the pidfile and socket paths intact).
 
I've done a significant amount of work myself given that OpenBSD itself isn't Proxmox's responsibility, but the part that remains is the configuration of Proxmox. I'm not likely to find much assistance with that anywhere outside of Proxmox. Most other platforms use libvirt, which is what I find the assistance with. Proxmox does not use libvirt. I cannot rely on outside sources.

Other than my initial question, I have not had any serious responses to my inquiry.
Modern day OpenBSD has qemu-ga as a package on its own. This introduces that:

https://undeadly.org/cgi?action=article;sid=20200514073852

But there has been more work since. It still revolves around this simple conf tweak:

agent: 1,type=isa

$ cat /etc/qemu/qemu-ga.conf
[general]
daemonize = 1
pidfile = /var/run/qemu-ga.pid
verbose = 1
method = isa-serial
path = /dev/cua01
statedir = /var/run

This config works for me on an OpenBSD 7.0 amd64 guest.

Note it does presume 'serial0: ' exists, so the next com port is for the guest agent:

...
isa0 at pcib0
isadma0 at isa0
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
com0: console
com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
...

I know this is a very big delay from your earlier posts, and perhaps you've discovered this in the interum, but .. in case not ..
 
  • Like
Reactions: mhammett
But is the FreeBSD version of the qemu-guest-agent now fully usable? OPNSense (so also FreeBSD based) added that some months ago as a plugin but with the warning that fsfreeze, ballooning and so on is still not implemented.

if you enable 'iothread' for a vm disk, you cannot backup this disk
Why was that the case? Looks like it is working fine now.
 
Last edited:
it was a limitation of how backups inside qemu were implemented.
 
  • Like
Reactions: Dunuin

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!