FAQ
kubectl: command not found
The k3s environment was not installed correctly. Please re-run the installation script:
International
bash <(curl -sSL https://raw.githubusercontent.com/oneclickvirt/kubevirt/main/kubevirtinstall.sh)KubeVirt Pods not ready
View all Pod statuses in the KubeVirt namespace:
kubectl get pods -n kubevirtIf any Pod is in Pending or CrashLoopBackOff state, check details:
kubectl describe pod <pod-name> -n kubevirt
kubectl logs <pod-name> -n kubevirt2
Common causes:
- Host does not support KVM (check if
/dev/kvmexists) - Insufficient memory (k3s + KubeVirt requires at least 4GB of available memory)
VM cannot access the internet (IPv4)
Check if the iptables NAT rules exist:
iptables -t nat -L POSTROUTING -n -v | grep flannelIf missing, check if the Flannel network plugin is running correctly:
kubectl get pods -n kube-system | grep flannelVM IPv6 not working
- Confirm the host has a public IPv6 address
- Check if the IPv6 resources are configured:
kubectl get svc -n default | grep ipv6KVM not available
egrep -c '(vmx|svm)' /proc/cpuinfo
ls /dev/kvm2
If you cannot use KVM on a VPS, the host may not support nested virtualization. Please contact your VPS provider to confirm.
VM stays in Pending state
Check VM instance details:
kubectl describe vmi vm1 -n defaultCommon causes:
- CDI (Containerized Data Importer) has not finished importing the disk image. Wait for the DataVolume to be ready:
kubectl get dv -n default- Insufficient host resources (CPU/memory/storage)
How to view SSH login info
View the vmlog file for batch-created VM info:
cat vmlogHow to completely reset the KubeVirt environment
Uninstall first, then reinstall:
International
bash <(curl -sSL https://raw.githubusercontent.com/oneclickvirt/kubevirt/main/scripts/kubevirtuninstall.sh)
bash <(curl -sSL https://raw.githubusercontent.com/oneclickvirt/kubevirt/main/kubevirtinstall.sh)2
No-CDN mode (WITHOUTCDN)
If your network is stable and useful, or you want to fully disable CDN acceleration, set this before running scripts:
export WITHOUTCDN=TRUEYou can also apply it to a single command only:
WITHOUTCDN=TRUEWhen enabled, scripts will no longer try CDN acceleration URLs during execution.
