Live data from Hacker News

QEMU v4.0.0 released

qemu.org

101–110 of 168 posts

Re: QEMU v4.0.0 released

#101
post #5

Last week, I intended to replace VirtualBox with QEMU for my personal use. The spartiate documentation made it really hard. I lack the competence to seriously contribute. The official documentation just explains the numerous parameters. It also points to tutorials (wikibook, etc), which unfortunately are very basic and out of sync. Even Arch Linux does not provide a good documentation (lack of clarity, some obsolete…

Launching QEMU directly is not merely "tricky", but incredibly inefficient and ineffective once you need something that's beyond bare minimal. E.g. here is a minimal QEMU command-line that gives you access to a serial console in the guest: `qemu-system-x86_64 -display none -no-user-config -nodefaults -m 2048 -device virtio-scsi-pci,id=scsi -device virtio-serial-pci -serial stdio -drive file=/export/cirros.qcow2,forma…

> minimal QEMU command-line"

> -nodefaults

Once you add `-nodefaults`, the list of arguments grows because now you must add a bunch of things that were there by default. If by "minimal command-line" you mean "the simplest list of arguments", then your example is wrong. If by "minimal command-line" you mean "command-line that gives the minimal VM", then you're being misleading, because that's not how people will take it.

Most of the devices added by libvirt would be included by qemu automatically if you didn't say `-nodefaults`. libvirt uses `-nodefaults` and specifies its own defaults, so that it doesn't need to keep track of changes in Qemu's defaults between versions of Qemu (since libvirt cares about the nitty-gritty more than most humans do).

PS: You have too many "t"s in the "htttps://" in one of those URLs.

Re: QEMU v4.0.0 released

#102

Anybody here using QEMU? What is your use case?

Currently using it as part of a testing workflow in making my own linux distribution. It makes booting kernels with initramfs, as well as live images, super easy and painless. QEMU is great software! https://jrl.ninja/joy/1/

Re: QEMU v4.0.0 released

#103

Earlier quoted context omitted.

No, not everything it does can be done by qemu directly, plenty of it lies outside of the scope of QEMU entirely, like managing networks (not just network devices), or storage pools, setting up permissions for device redirection, or doing the legwork for VM provisioning and configuration (including net booting and automatically running appropriate scripts), or managing access to VMs both locally and remotely. Its fin…

The alternative is not that many commands: https://blog.elastocloud.org/2015/07/qemukvm-bridged-network...

For one static network, what about complicated inter VM networking schemes (including firewalling) that need to be dynamically adjusted as VMs go on and offline?

Libvirtd is much better suited to managing that sort of complexity.

Re: QEMU v4.0.0 released

#104
post #20

Earlier quoted context omitted.

My recommendation for that sort of use would be to look at using a 'management layer' app that sits above QEMU and handles all the fiddly command line details for you -- https://virt-manager.org/ (which uses/is part of libvirt) is a popular one, I think. The QEMU project has kind of settled on the philosophy of being the low-level tool which provides you "full manual control" and interfaces for a higher-level UI to m…

This is the context I was missing when I switched to QEMU. I had not heard about libvirt. A simple "apt search qemu" had shown a few unsatisfying GUIs, but nothing about other layers above qemu. I suggest QEMU's documentation could mention libvirt and its user-friendly interfaces.

Note that libvirt isn't Qemu-specific; it supports multiple backends, including VirtualBox and Xen.

Re: QEMU v4.0.0 released

#105
post #79

Earlier quoted context omitted.

There's a lot to be said for running qemu from the command line, vs the complexity and opaqueness of libvirt. For example you can put the invocation in a script and check it into version control, and it will work on anyone's Linux box. You can easily debug the config and be suire about what options qemu was given. Yes, there may be many switches in the invocation, but at least they are in one place, the invocation sy…

I can see the value in "putting the command-line in a script and launch it anywhere". Many of us use bespoke QEMU command-line scripts for test and development. And I even know a small hosting provider who manages their production guests entirely via QEMU command-line "config file" syntax ( -writeconfig and -readconfig options—they're little-known, not least because they don't cover all the options; upstream has some…

[deleted]

Re: QEMU v4.0.0 released

#106

Anybody here using QEMU? What is your use case?

We use it here exclusively at my current place of employment in the OS and BSP team. We create pre-built, bootable ramdisk images inside a QEMU instance which are hashed and saved for fast provisioning, as well as having multiple QEMU instances on targets to prevent cross domain pollution (being mandated by NSA). I work in defense, for context.

Re: QEMU v4.0.0 released

#107
post #75

Earlier quoted context omitted.

Here's a pretty good tutorial. https://astr0baby.wordpress.com/2018/09/22/running-solaris-2... I used a Solaris 7 .iso from archive.org. https://archive.org/details/solaris_7_1199_sparc

Ooh really? That works?

Yes. Here's a screenshot of Netscape 4.76.

http://www.w6rz.net/netscape.png

That was with a Solaris 8 disk image that I found here:

https://github.com/cclark64/qemu_solaris_sparc

Re: QEMU v4.0.0 released

#108

Earlier quoted context omitted.

The alternative is not that many commands: https://blog.elastocloud.org/2015/07/qemukvm-bridged-network...

For one static network, what about complicated inter VM networking schemes (including firewalling) that need to be dynamically adjusted as VMs go on and offline? Libvirtd is much better suited to managing that sort of complexity.

I have the luxury of opining that such complicated networking schemes should be reined in, and not served with baroque management software. Complexity is the arch enemy of security, because systems must be kept easy to reason about.

Re: QEMU v4.0.0 released

#109
post #99
post #80

Earlier quoted context omitted.

Indeed. Instead of contributing a patch to qemu with better defaults, or even support for config files, someone wrote tens of thousands of lines of complex code. People forget that software is malleable. Bend it to your needs, instead of adding fragile wrapper layers.

libvirt-the-software is tens of thousands of lines of complex code that doesn't really add much. libvirt-the-project does contribute patches in to qemu, and a lot of the reason that libvirt-the-software doesn't add much of value is because libvirt-the-project worked to get capabilities in to upstream qemu. The libvirt team definitely does view qemu as malleable, and bends it to their needs. The problem is that the li…

Good observations! I can't say I like it when a wrapper (loosely said here) starts to exert too much influence over what it wraps.

Re: QEMU v4.0.0 released

#110

Anybody here using QEMU? What is your use case?

I use qemu to run multiple virtualized machines on a single beefy (32-core) headless box; including a shared build-server, and my own remote-workstation.

I got sick of trying to figure out which thing I needed to click in virt-manager to get it to pass the flags I wanted, so I wrote my own minimal qemu-wrapper that covers all of the functionality from libvirt that I care about (vCPU pinning, binding to NUMA nodes, running as non-privileged user), and integrates better with the other system (systemd) monitoring than libvirt does. https://git.lukeshu.com/systemd-qemu/

----

I'm also involved with the Parabola GNU/Linux-libre distribution. Qemu user-mode emulation is essential to our support of non-x86 platforms (ARM and PPC). It lets us run cross-architecture chroots without a full-blown VM.

Post reply on HN