Install Harvester on NVMe SSD

Ref: https://github.com/harvester/harvester/issues/1627

Verify Items

  • Harvester can detect NVMe SSD when installing
  • Harvester can be installed on NVMe SSD

Case: Install Harvester on NVMe disk

  1. Create block image as NVMe disk
    • Run dd if=/dev/zero of=/var/lib/libvirt/images/nvme145.img bs=1M count=148480
    • Then Change file owner chown qemu:qemu /var/lib/libvirt/images/nvme145.img
  2. Create VM via virt-manager
    • Select Manual install, set Generic OS, Memory:9216, CPUs:8, Uncheck enable storage… and check customize configuration before install
    • Select Firmware to use UEFI x86_64 (use usr/share/qemu/ovmf-x86_64-code.bin in SUSE Leap 15.3)
    • Select Chipset to use i440FX
    • Click Add Hardware to add CD-ROM including Harvester iso
    • Update Boot Options to Enable boot menu and enable the CD-ROM
    • edit XML with update <domain type="kvm"> to <domain type="kvm" xmlns:qemu="http://libvirt.org/schemas/domain/qemu/1.0">
    • append NVMe xml node into domain, then Begin Installation
  <qemu:commandline>
    <qemu:arg value="-drive"/>
    <qemu:arg value="file=/var/lib/libvirt/images/nvme.img,if=none,id=D22,format=raw"/>
    <qemu:arg value="-device"/>
    <qemu:arg value="nvme,drive=D22,serial=1234"/>
  </qemu:commandline>
  1. Install Harvester by the console UI
  2. When rebooting, Press ESC to enter UEFI image
    • If you miss the screen, VM will entering the Grub with Harvester Installer option, you have to reboot again
  3. Select Boot Manager image
  4. Select UEFI QEMU NVME Ctrl … image
  5. VM should boot into Harvester successfully