Nomad not discovering QEMU on CentOS 8

Hi!

I’m checkout in Nomad to see if it would work in my homelab. I have installed libvirt and qemu-kvm and it is fully working via virt-manager and cockpit, but Nomad is not detecting Qemu as a driver. The Docker and exec drivers is working perfectly.

I have it running with a server.hcl that looks like this:

log_level = "DEBUG"

# Setup data dir
data_dir = "/virtpool/nomad"

bind_addr = "0.0.0.0"
name = "hv-gj-01"

log_file = "/var/log/"
log_rotate_duration = "72h"


server {
  enabled = true

  bootstrap_expect = 1
}

client {
  enabled = true
}

plugin "raw_exec" {
  config {
    enabled = true
  }
}

plugin "Qemu" {
  config {
    enabled = true
  }
}

I found the solution, install CentOS 7.

EPEL (extra packages for enterprise linux) 8 is missing a whole load of packages, and the repository is still noted as a “Working Draft” [1]. There are no packages that includes the standalone version of Qemu, and that’s why I couldn’t get it to work.

I’ve verified this by installing CentOS 7 and installing Nomad with the required and optional packages and it Immediately detected Qemu.

[1] : https://fedoraproject.org/wiki/Infrastructure_2020/EPEL-8

epel-release is part of standard installation on CentOS … Just curious … Did you give this a try again? Did it work with CentOS 8?

I haven’t tried since I posted. For each version of CentOS, there is a version of EPEL. CentOS 8 used EPEL 8, CentOS 7 uses EPEL 7 etc.

Another factor other than unavailable packages in your distro of choice can be the specific QEMU binary name. We have an open issue at https://github.com/hashicorp/nomad/issues/4684 to make this more configurable but it hasn’t been prioritized. If you have this issue, we’d love to see a PR for it though!