I am looking to learn Kubernetes, specifically from this resource. I only want to run Docker containers, rather than full-fat VMs. It says that I need any of these as a base from which to work:
- Docker Desktop
- kind
- Minikube
I have plumped for Minikube, as I'm on Linux, and it's pretty easy to install. I'm using these instructions. The second doc link says:
To check if virtualization is supported on Linux, run the following command and verify that the output is non-empty:
grep -E --color 'vmx|svm' /proc/cpuinfo
This does not produce any output for me, since my standard development environment runs inside a VirtualBox container. I don't plan to change this - Docker, Docker Compose and Docker Swarm run very well here.
It later says:
Install a Hypervisor
If you do not already have a hypervisor installed, install one of these now:
KVM, which also uses QEMU
VirtualBox
This makes it seem that hypervisor CPU support is necessary, but I do not see why that would be.
However it does go onto say:
Minikube also supports a
--driver=none
option that runs the Kubernetes components on the host and not in a VM. Using this driver requires Docker and a Linux environment but not a hypervisor.
This appears to be something of an addendum, and is given much less prominence that the suggestion that virtualisation instructions are a requirement. Were the documentation authors just "covering all bases", or will I bump into a roadblock later on by continuing despite not having the required CPU?
Minikube itself runs in a virtual machine, the point being to keep it contained and separated from your host environment. You should create a new virtual machine for Minikube, not try to run it inside an existing VM.