Fedora Test Days | |
---|---|
Virtualization Test Day | |
Date | Thursday 2014-09-25 |
Time | all day |
Website | Virtualization |
IRC | #fedora-test-day |
Mailing list | virt |
What to test?
Today's installment of Fedora Test Day will focus on Virtualization in Fedora 21. Test cases will basic virtualization workflow, some cool functionality, as well as new features introduced in Fedora 21.
Who's available
The following cast of characters will be available for testing, workarounds, bug fixes, and general discussion.
- Cole Robinson (crobinso)
- Dave Gilbert (davidgiluk)
- Kashyap Chamarthy (kashyapc)
- Richard Jones (rwmjones)
- Jeff E. Nelson (jenelson)
Known issues
- Fedora 21 Workstation media is not detected as Fedora 21 by boxes/virt-manager: bug 1145264
- SPICE auto guest resize isn't working: bug 1146175
- Latest virt-customize/virt-builder seem to have issues setting passwords bug 1146275
- virt-manager can lose track of guest state, think VM is running when it's actually stopped bug 1146277
- F21 workstation livecd in a VM has no network connectivity, conflicts with host 'default' network 1146232
- spice-vdagent: drag + drop doesn't open nautilus right away: bug 1146289
- virt-manager: UI error when trying to hotplug USB/PCI: bug 1146297
What's needed to test
For starters, your physical machine should have:
- Hardware virtualization support (e.g. Intel VT or AMD-V) (see Is My Guest Using KVM?).
- Up to 10-20Gb free disk space. Guest images take up a lot of space.
- Get the packages with:
yum groupinstall virtualization
As for getting the latest virt packages, you have a few options:
Fedora 21 on a physical machine
The preferred testing platform is a fully updated Fedora 21 machine. You have a few options for getting the Fedora 21 bits:
Install with CD/DVD
You can download the Fedora 21 Alpha in various formats here.
Upgrade from Fedora 20
- The supported way is using 'fedup': FedUp#How_Can_I_Upgrade_My_System_with_FedUp.3F You may also find the instructions in the fedup test case useful for using fedup to upgrade to a pre-release.
- Upgrade using 'yum': This method is not officially supported, but is very commonly used by developers. If you're a power user this is a possible option!
Run Fedora 21 in a VM with nested virtualization
Do you have a new machine with a ton of ram and storage space, running Fedora 21? Nested virt might be an option! This allows you to create KVM guests inside a Fedora 21 VM.
Use the virt-preview instructions below, install a guest using one of the install test cases, and follow the nested virt test case to finish the setup and verify things are working correctly.
Fedora 21 virt packages on Fedora 20
If you aren't ready to make the jump to Fedora 21, this is the next best thing! Run latest virt packages on Fedora 20 from the virt-preview repo:
http://fedoraproject.org/wiki/Virtualization_Preview_Repository
Areas to test
All these tests have an entry in the Test Results table, please record them there.
Ensure you are using the latest virt packages!
Several updated packages were pushed to Fedora 21 only recently. The recommended versions are:
- qemu-system-x86-2.1.1-2.fc21 (same version for all qemu* packages)
- libvirt-daemon-1.2.8-6.fc21
- virt-manager-common-1.1.0-3.git310f6527.fc21
If a 'yum update' isn't pulling these packages in, try 'sudo yum clean all', then 'sudo yum update'.
VM Install
If you don't already have a VM available, run through one of these test cases. A fully functioning VM is required for every other test case!
- Guest install via CDROM/ISO
- Guest install via URL
- Import existing VM image (your own disk image, or Fedora cloud image, or virt-builder image)
Standard features
These are recurring tests of standard virt features, they ensure nothing obvious is broken.
- VM Lifecycle (start, stop, save, clone, delete, ...)
- VM snapshot management
- Spice features: copy/paste, drag/drop, USB redirection, auto guest resize
- Change CDROM media for running VM
- Host USB device hotplug
- Host PCI device assignment
- Enabling nested virtualization for a VM
- Live migration (steps included for doing this with a single physical host)
- Run Fedora ARM image as a VM on x86
New features
Extra tests
These tests aren't listed in the 'test results' table, but consider giving them a spin and reporting any issues on IRC or bugzilla.
libguestfs and tools
You will need Fedora 21 (host) and at least one guest (but the more the merrier).
Install libguestfs: # yum install '*guestf*'
and run through the tests here: http://libguestfs.org/guestfs-testing.1.html
Previous test cases
Some test cases used in previous test days. Still useful to test for regressions!
Fedora 20 features:
Fedora 19 features:
- Virtio RNG (Random Number Generator)
- Live migration without shared storage (steps included for doing this with a single physical host)
- Host PCI device assignment using VFIO
Fedora 18 features:
- Live VM disk backup
- VM suspend/hibernate
- VM sandboxing w/ syscall filters
- VM IO throttling
- VM PV EOI performance optimization
- USB3 device passthrough
Misc tests:
- Guest install via PXE (only if you have a pre-existing PXE setup)
- NIC hotplug with virsh
- Virtio SCSI install
- Virtio SCSI hotplug
- VM serial console login
All tests:
OpenVZ
Debugging
Test Results
Results originally entered into the test day tool over here. Copied below for reference.
VM Install
User | Hardware | Guest Install via CDROM | Guest Install via url | Import VM | References |
---|---|---|---|---|---|
znmeb | AMD Eight-core 32 GB workstation | [2] | |||
Hapoofesgeli | Intel 4770K | [2] | |||
roshi | Lenovo W530 | ||||
hhuang | Lenovo T500 | ||||
royboy626 | MSI_P965 | ||||
haai | Intel i7-3520M | ||||
crobinso | AMD FX8150 | [4] | |||
pgmassey | Dell Inc. Inspiron 5520/04G65K |
| |||
anishjp | Intel Core i3-2100 CPU @ 3.10GHz x 4 |
Standard Features
User | Hardware | VM Lifecycle | VM snapshots | Spice features | Change CDROM media for running VM | Host USB device hotplug | Host PCI device assignment | Nested virt | Live migration | Fedora ARM VM on x86 | References |
---|---|---|---|---|---|---|---|---|---|---|---|
znmeb | AMD Eight-core 32 GB workstation | ||||||||||
Hapoofesgeli | Intel 4770K | ||||||||||
kashyapc | IBM System x3550 M2 -[794632A]- | ||||||||||
roshi | Lenovo W530 | ||||||||||
hhuang | Lenovo T500 | ||||||||||
royboy626 | MSI_P965 | [2] | |||||||||
haai | Intel i7-3520M |
| |||||||||
crobinso | AMD FX8150 | [2] | [long 12] | [5] | [6] |
| |||||
pgmassey | Dell Inc. Inspiron 5520/04G65K |
| |||||||||
anishjp | Intel Core i3-2100 CPU @ 3.10GHz x 4 |
|
New features
User | Hardware | Q35 Chipset | AArch64 VM on x86 | Install VM using OVMF/UEFI | References |
---|---|---|---|---|---|
royboy626 | MSI_P965 | ||||
crobinso | AMD FX8150 |
Long comments
- ↑ Installed F21 guest from LiveCD with mixed results. On the first attempt, virt-manager "lost contact" with qemu, so all the VMs disappeared! On the second attempt, the guest froze during installation, and the system would not respond to any keys or mouse clicks. On the third attemp the f21 guest installation succeeded.
- ↑ Guest installed over network correctly. However, at the very end of the install, reboot did NOT work. The guest never came back up. Attempts to start, restart, shutdown, reset, force shutdown the guest were unsuccessful. Had to shutdown the virt-manager. After the virt-manager re-start, was able to boot the guest.
- ↑ 1. testing on fed20 with fedora-virt-preview.repo 2. virt-install from URL from test/21-Alpha/Workstation/x86_64/os with defaults and encrypt hdd option 3. installation works fine 4. after reboot gnome shows wired connection as connected but with a '?' symbol. remote communication works. after reboot vm shows proper symbol in gnome.
- ↑ Detected OS type and version before copying the ISO to /var/lib/libvirt/images location. UI cannot detect the OS type and version after copying the ISO to /var/lib/libvirt/images location. Installation completed without issues. Guest (F20) is bootable after installation. When I checked the resource utilization in my host machine, Memory 2.7GiB of 7.8GiB and Swap 5.8MiB of 7.9GiB. Why is it going to swap space when I have lot of memory left in my main memory?
- ↑ QEMU: Checking for hardware virtualization : PASS QEMU: Checking for device /dev/kvm : PASS QEMU: Checking for device /dev/vhost-net : PASS QEMU: Checking for device /dev/net/tun : PASS LXC: Checking for Linux >= 2.6.26 : PASS I went further - created a VM and installed Fedora 20 on it. This is a use case I'd never do in real life, but it's nice to know it's there. I'd be much more likely to deploy some tiny server in LXC or Docker with a Firefox client than a full VM-inside-a-VM.
- ↑ I tested nested virt with
virsh
andvirt-xml
as the procedure outlined below: https://kashyapc.fedorapeople.org/virt/procedure-to-enable-nested-virt-on-intel-machines.txt - ↑ Disconnecting from virt-manager while the drive is mounted in the guest gives a notice that "This will take effect after next guest shutdown."
- ↑ Issuing the "Shutdown" operation from the virt-manager procuded inconsistent results. On a RHEL7.0 guest, the shutdown operation worked. On a RHEL6.5 guest, the shutdown operation had no effect on the guest.
- ↑ When the guest is running, attempt to reboot the guest from the virt-manager failed with the following error message: "Guest agent not responding..."
- ↑ Interface suggestion; Inactivate "play" icon when in snapshot GUI. Not clear how to run/delete snapshot (right click). Perhaps a hover tooltip or run:delete icons in toolbar tied to highlighted snapshot
- ↑ Non RPM virtual OS running XFCE. Autoresolution fail. USB use OK. Drag file from host to virtual placed on desktop (~/Desktop). Should command listed on page be piped to grep? -> ps axwww | spice-vdagent
- ↑ USB Redirection: fine. Auto Resize: Fine with RHEL6 guest as indicated. Copy/Paste: fine. Drag+Drop: works, but doesn't launch nautilus on first try (bug 1146289)
- ↑ Worked from UI and command line. On --eject, sometimes needs to be passed twice, might see an error about tray being locked. Also, the virsh responses are incoherent, someone should file a bug about that...
- ↑ Wasn't smart enough to use GUI. virt-install worked and booted into the host terminal where virt-install executed. Did config including root and another user. Booted to login but WAS NOT able to successfully enter password for either created user or root (hidden chars?). Hard to believe I screwed up passwords twice (however...)