Is anyone able to assist with this? Is there more information that I can provide? Here is how I am invoking mkinitrd: export rootfstype="ext4" VMLINUZ=/boot/vmlinuz-4.12.14-lp151.28.59-default INITRD=/boot/initrd-4.12.14-lp151.28.59-default mkinitrd -d /dev/null -m "loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi ibmvscsic" -k $VMLINUZ -i $INITRD And here is the relevant excerpt from the build log: 3s] ### VM INTERACTION START ### [ 3s] Using UART console [ 3s] /usr/bin/qemu-kvm -nodefaults -no-reboot -nographic -vga none -cpu host -object rng-random,filename=/dev/hwrng,id=rng0 -device virtio-rng-pci,rng=rng0 -runas qemu -net none -kernel /var/cache/obs/worker/root_1/.mount/boot/kernel -initrd /boot/initrd-4.12.14-lp151.28.59-default_obs -append root=/dev/disk/by-id/virtio-0 rootfstype=ext3 rootflags=data=writeback,nobarrier,commit=150,noatime ext4.allow_unsupported=1 kpti=off pti=off spectre_v2=off panic=1 quiet no-kvmclock elevator=noop nmi_watchdog=0 rw rd.driver.pre=binfmt_misc console=ttyS0 init=/.build/build -m 512 -drive file=/var/cache/obs/worker/root_1/root,format=raw,if=none,id=disk,cache=unsafe -device virtio-blk-pci,drive=disk,serial=0 -drive file=/var/cache/obs/worker/root_1/swap,format=raw,if=none,id=swap,cache=unsafe -device virtio-blk-pci,drive=swap,serial=1 -serial stdio -chardev socket,id=monitor,server,nowait,path=/var/cache/obs/worker/root_1/root.qemu/monitor -mon chardev=monitor,mode=readline -smp 1 [ 4s] c[?7l[2J[0mSeaBIOS (version rel-1.12.0-0-ga698c89-rebuilt.opensuse.org) [ 5s] Booting from ROM..c[?7l[2J[[0;1;31mFAILED[0m] Failed to start Load Kernel Modules. [ 6s] See 'systemctl status systemd-modules-load.service' for details. [ 6s] [[0;1;31mFAILED[0m] Failed to start Setup Virtual Console. [ 6s] See 'systemctl status systemd-vconsole-setup.service' for details. [ 6s] [[0;1;33mDEPEND[0m] Dependency failed for dracut ask for additional cmdline parameters. [ 6s] [[0;32m OK [0m] Started Create Static Device Nodes in /dev. [ 6s] Starting dracut cmdline hook… This is a useful, advanced feature that is, as far as I can tell, completely undocumented. I need assistance please. --- Phil King phil@cpanel.net
On Aug 19, 2020, at 10:44 AM, Phil King
wrote: Are there more complete instructions for creating a KVM-based OBS worker?
I am aiming for OBS workers based off of a minimal openSUSE base install (either the openSUSE Leap cloud image or NET .iso).
I can get this to work with a VM install of the OBS appliance (I have both of the .iso and the .qcow2 installs working, as VMs. I do not have the .iso working as a bare metal install, which is confounding…). I would prefer my OBS workers are not full appliance installs.
The best instructions I can find are via the code (dist/obsworker and dist/sysconfig.obs-server), namely: to ensure the qemu-kvm package is installed, and that virtualization is available (this requires the correct BIOS settings, and nested virtualization, in the case of a VM).
elif [ -e /dev/kvm -a -x /usr/bin/qemu-kvm ] ; then
Further, dist/sysconfig.obs-server offers this:
# for KVM, you have to create with (example for openSUSE 11.2): # # export rootfstype="ext4" # mkinitrd -d /dev/null -m "ext4 binfmt_misc virtio_pci virtio_blk" -k #vmlinuz-2.6.31.12-0.2-default -i initrd-2.6.31.12-0.2-default-obs_worker # # a working initrd file which includes virtio and binfmt_misc for OBS in order #to work fine
This is not proving sufficient. On the base openSUSE cloud images, qemu-kvm fires up, and then just hangs there, and eventually times out. There is very little in the way of error messaging or logs here.
Digging further, on an existing OBS appliance install, I find a more complete list of kernel modules here (/etc/dracut.conf.d/03-my-obs.conf), but "zypper wp ..." ("what provides") on that file does not reveal anything. Also, this file does not seem to be in the open-build-service git repo.
force_drivers+="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio-rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi ibmvscsic"
This longer list indicates that there might be more complete instructions floating around that I can not find.
Can someone clarify what additional packages are needed on top of an openSUSE base install in order to get KVM-based OBS workers? (If documentation for this does not exist, if someone could guide me here, I would be happy to write a draft of that documentation.
--- Phil King phil@cpanel.net -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org