minikube: Improve error message for nested KVM issue: could not find capabilities for domaintype=kvm
minikube version: v0.27.0 OS: opensuse Tumbleweed 20180331 vm driver: kvm2 or kvm “Boot2DockerURL”: “file:///home/u1/.minikube/cache/iso/minikube-v0.26.0.iso”, “ISO”: “/home/u1/.minikube/machines/minikube/boot2docker.iso”,
minikube installed from officail repo:
> rpm -qi minikube
Name : minikube
Version : 0.27.0
Release : 1.1
Architecture: x86_64
Install Date: Пн 16 июл 2018 17:59:10
Group : System/Management
Size : 43331879
License : Apache-2.0
Signature : RSA/SHA256, Пт 22 июн 2018 15:33:56, Key ID b88b2fd43dbdc284
Source RPM : minikube-0.27.0-1.1.src.rpm
Build Date : Пт 22 июн 2018 15:32:58
Build Host : cloud116
Relocations : (not relocatable)
Packager : https://bugs.opensuse.org
Vendor : openSUSE
URL : http://kubernetes.io
Summary : Tool to run Kubernetes locally
Distribution: openSUSE Tumbleweed
kvm module loaded:
> lsmod | grep kvm
kvm_intel 229376 0
kvm 700416 1 kvm_intel
irqbypass 16384 1 kvm
user groups:
> groups
kvm wheel users libvirt docker
When i launch minikube start with kvm or kvm2 driver as regular user, it does not start, and i see error invalid argument: could not find capabilities for domaintype=kvm:
> minikube start --vm-driver=kvm2
There is a newer version of minikube available (v0.28.0). Download it here:
https://github.com/kubernetes/minikube/releases/tag/v0.28.0
To disable this notification, run the following:
minikube config set WantUpdateNotification false
Starting local Kubernetes v1.10.0 cluster...
Starting VM...
Downloading Minikube ISO
150.53 MB / 150.53 MB [============================================] 100.00% 0s
E0716 18:30:16.599687 20347 start.go:159] Error starting host: Error creating host: Error creating machine: Error in driver during machine creation: creating domain: Error defining domain xml:
<domain type='kvm'>
<name>minikube</name>
<memory unit='MB'>2048</memory>
<vcpu>2</vcpu>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<cpu mode='host-passthrough'/>
<os>
<type>hvm</type>
<boot dev='cdrom'/>
<boot dev='hd'/>
<bootmenu enable='no'/>
</os>
<devices>
<disk type='file' device='cdrom'>
<source file='/home/u1/.minikube/machines/minikube/boot2docker.iso'/>
<target dev='hdc' bus='scsi'/>
<readonly/>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='raw' cache='default' io='threads' />
<source file='/home/u1/.minikube/machines/minikube/minikube.rawdisk'/>
<target dev='hda' bus='virtio'/>
</disk>
<interface type='network'>
<source network='default'/>
<mac address='ac:11:1f:f4:0d:75'/>
<model type='virtio'/>
</interface>
<interface type='network'>
<source network='minikube-net'/>
<mac address='ac:11:1f:f4:0d:75'/>
<model type='virtio'/>
</interface>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<rng model='virtio'>
<backend model='random'>/dev/random</backend>
</rng>
</devices>
</domain>
: virError(Code=8, Domain=44, Message='invalid argument: could not find capabilities for domaintype=kvm ').
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Reactions: 4
- Comments: 25 (3 by maintainers)
QEMU: Checking for hardware virtualization : FAIL (Only emulated CPUs are available, performance will be significantly limited) QEMU: Checking if device /dev/vhost-net exists : PASS QEMU: Checking if device /dev/net/tun exists : PASS QEMU: Checking for cgroup ‘memory’ controller support : PASS QEMU: Checking for cgroup ‘memory’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpu’ controller support : PASS QEMU: Checking for cgroup ‘cpu’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpuacct’ controller support : PASS QEMU: Checking for cgroup ‘cpuacct’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpuset’ controller support : PASS QEMU: Checking for cgroup ‘cpuset’ controller mount-point : PASS QEMU: Checking for cgroup ‘devices’ controller support : PASS QEMU: Checking for cgroup ‘devices’ controller mount-point : PASS QEMU: Checking for cgroup ‘blkio’ controller support : PASS QEMU: Checking for cgroup ‘blkio’ controller mount-point : PASS WARN (Unknown if this platform has IOMMU support) LXC: Checking for Linux >= 2.6.26 : PASS LXC: Checking for namespace ipc : PASS LXC: Checking for namespace mnt : PASS LXC: Checking for namespace pid : PASS LXC: Checking for namespace uts : PASS LXC: Checking for namespace net : PASS LXC: Checking for namespace user : PASS LXC: Checking for cgroup ‘memory’ controller support : PASS LXC: Checking for cgroup ‘memory’ controller mount-point : PASS LXC: Checking for cgroup ‘cpu’ controller support : PASS LXC: Checking for cgroup ‘cpu’ controller mount-point : PASS LXC: Checking for cgroup ‘cpuacct’ controller support : PASS LXC: Checking for cgroup ‘cpuacct’ controller mount-point : PASS LXC: Checking for cgroup ‘cpuset’ controller support : PASS LXC: Checking for cgroup ‘cpuset’ controller mount-point : PASS LXC: Checking for cgroup ‘devices’ controller support : PASS LXC: Checking for cgroup ‘devices’ controller mount-point : PASS LXC: Checking for cgroup ‘blkio’ controller support : PASS LXC: Checking for cgroup ‘blkio’ controller mount-point : PASS LXC: Checking if device /sys/fs/fuse/connections exists : FAIL (Load the ‘fuse’ module to enable /proc/ overrides) Has anyone solved it? Thank you
same problem, Is there a solution?
I had this issue. I am using minikube in a VM under VMWare and I did not enable the option “Virtualize Intel VT-x/EPT or AMD-V/RVI” when I created the VM. I had enabled it after reading this thread but still got the same error. Apparently actually applying the option requires a reboot of the VM and VMWare didn’t tell me that so I didn’t know. Trying to use the virtualbox driver told me that option was disabled when I thought it was enabled so I tried rebooting and now I no longer get this error.
@Juancarlosmartin10 it you are inside vbox as I am, this is it https://www.virtualbox.org/ticket/4032 . It does not support virtualization inside VM. The ticket is 9 years old but they plan to release it soon though.
[root@kube ~]# minikube version minikube version: v1.1.1 [root@kube ~]# virt-host-validate QEMU: Checking for hardware virtualization : FAIL (Only emulated CPUs are available, performance will be significantly limited) QEMU: Checking if device /dev/vhost-net exists : PASS QEMU: Checking if device /dev/net/tun exists : PASS QEMU: Checking for cgroup ‘memory’ controller support : PASS QEMU: Checking for cgroup ‘memory’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpu’ controller support : PASS QEMU: Checking for cgroup ‘cpu’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpuacct’ controller support : PASS QEMU: Checking for cgroup ‘cpuacct’ controller mount-point : PASS QEMU: Checking for cgroup ‘cpuset’ controller support : PASS QEMU: Checking for cgroup ‘cpuset’ controller mount-point : PASS QEMU: Checking for cgroup ‘devices’ controller support : PASS QEMU: Checking for cgroup ‘devices’ controller mount-point : PASS QEMU: Checking for cgroup ‘blkio’ controller support : PASS QEMU: Checking for cgroup ‘blkio’ controller mount-point : PASS WARN (Unknown if this platform has IOMMU support) LXC: Checking for Linux >= 2.6.26 : PASS LXC: Checking for namespace ipc : PASS LXC: Checking for namespace mnt : PASS LXC: Checking for namespace pid : PASS LXC: Checking for namespace uts : PASS LXC: Checking for namespace net : PASS LXC: Checking for namespace user : PASS LXC: Checking for cgroup ‘memory’ controller support : PASS LXC: Checking for cgroup ‘memory’ controller mount-point : PASS LXC: Checking for cgroup ‘cpu’ controller support : PASS LXC: Checking for cgroup ‘cpu’ controller mount-point : PASS LXC: Checking for cgroup ‘cpuacct’ controller support : PASS LXC: Checking for cgroup ‘cpuacct’ controller mount-point : PASS LXC: Checking for cgroup ‘cpuset’ controller support : PASS LXC: Checking for cgroup ‘cpuset’ controller mount-point : PASS LXC: Checking for cgroup ‘devices’ controller support : PASS LXC: Checking for cgroup ‘devices’ controller mount-point : PASS LXC: Checking for cgroup ‘blkio’ controller support : PASS LXC: Checking for cgroup ‘blkio’ controller mount-point : PASS LXC: Checking if device /sys/fs/fuse/connections exists : FAIL (Load the ‘fuse’ module to enable /proc/ overrides) [root@kube ~]#
Still error with the 1.1 version
running minikube in a centos7 vm and getting the same error.
This appears to be due to the hosts lack of virtualization abilities, but we should have pre-flight checks to detect this issue.