$ minishift delete Deleting the {project} VM... Error deleting the VM: [Code-55] [Domain-10] Requested operation is not valid: cannot delete inactive domain with 4 snapshots
This section contains solutions to common problems that you might encounter while configuring the driver plug-ins for Minishift.
If you use virsh
on KVM/libvirt to create snapshots in your development workflow then use minishift delete
to delete the snapshots along with the VM, you might encounter the following error:
$ minishift delete Deleting the {project} VM... Error deleting the VM: [Code-55] [Domain-10] Requested operation is not valid: cannot delete inactive domain with 4 snapshots
Cause: The snapshots are stored in ~/.minishift/machines, but the definitions are stored in var/lib/libvirt/qemu/snapshot/minishift.
Workaround: To delete the snapshots, you need to perform the following steps.
Delete the definitions:
$ sudo virsh snapshot-delete --metadata minishift <snapshot-name>
Undefine the Minishift domain:
$ sudo virsh undefine minishift
You can now run minishift delete
to delete the VM and restart Minishift.
If these steps do not resolve the issue, you can also use the following command to delete the snapshots: $ rm -rf ~/.minishift/machines |
It is recommended to avoid using metadata when you create snapshots.
To ensure this, you can specify the --no-metadata
flag.
For example:
$ sudo virsh snapshot-create-as --domain vm1 overlay1 --diskspec vda,file=/export/overlay1.qcow2 --disk-only --atomic --no-metadata
The problem is likely that the libvirtd service is not running. You can check this with the following command:
$ systemctl status libvirtd
If libvirtd is not running, start it and enable it to start on boot:
$ systemctl start libvirtd $ systemctl enable libvirtd
The problem is likely that the virtlogd service is not running. You can check this with the following command:
$ systemctl status virtlogd
If virtlogd is not running, start it and enable it to start on boot:
$ systemctl start virtlogd $ systemctl enable virtlogd
If you try minishift start
and the this error appears, ensure that you use minishift delete
to delete the VMs that you created earlier.
However, if this fails and you want to completely clean up Minishift and start fresh, do the following:
Check if any existing Minishift VMs are running:
$ sudo virsh list --all
If any Minishift VM is running, stop it:
$ sudo virsh destroy minishift
Delete the VM:
$ sudo virsh undefine minishift
Delete the .minishift/machines directory:
$ rm -rf ~/.minishift/machines
In case all of this fails, you might want to uninstall Minishift and do a fresh install of Minishift.
The problem is likely that the xhyve driver is not able to clean up vmnet when a VM is removed. vmnet.framework determines the IP address based on the following files:
/var/db/dhcpd_leases
/Library/Preferences/SystemConfiguration/com.apple.vmnet.plist
Reset the Minishift-specific IP database, ensure that you remove the minishift
entry section from the dhcpd_leases
file, and reboot your system.
{ ip_address=192.168.64.2 hw_address=1,2:51:8:22:87:a6 identifier=1,2:51:8:22:87:a6 lease=0x585e6e70 name=minishift }
You can completely reset the IP database by removing the files manually, but this is very risky. |
If you run Minishift with Hyper-V on Windows as a normal user or as a user with Administrator privileges, you might encounter the following error:
Error starting the VM: Error creating the VM. Error with pre-create check: "Hyper-V commands must be run as an Administrator".
Workaround: You can either add yourself to the Hyper-V Administrators group, which is recommended, or run the shell in an elevated mode.
If you are using PowerShell, you can add yourself to the Hyper-V Administrators group as follows:
As an administrator, run the following command:
PS> ([adsi]”WinNT://./Hyper-V Administrators,group”).Add(“WinNT://$env:UserDomain/$env:Username,user”)
Log out and log back in for the change to take effect.
You can also use the GUI to add yourself to the Hyper-V Administrators group as follows:
Click the Start button and choose Computer Management.
In the Computer Management window, select Local Users And Groups and then double click on Groups.
Double click on the Hyper-V Administrators group, the Hyper-V Administrators Properties dialog box is displayed.
Add your account to the Hyper-V Administrators group and log off and log in for the change to take effect.
Now you can run the Hyper-V commands as a normal user.
For more options for Hyper-V see creating Hyper-V administrators local group.
If you try to use Minishift with Hyper-V using an external virtual switch while you are connected to a VPN such as OpenVPN, Minishift might fail to provision the VM.
Cause: Hyper-V networking might not route the network traffic in both directions properly when connected to a VPN.
Workaround: Disconnect from the VPN and try again after stopping the VM from the Hyper-V manager.