I’ve just played a bit Kubernetes on my Arch Linux laptop, with Minikube. It’s easier than I thought.
Since I’ve already installed VirtualBox from the start, I can use minikube right after I installed it with
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
The command I used to start minikube is
minikube start --cpus 4 --memory 4096 --insecure-registry "10.0.0.0/8"
It’s obvious that I wanted to allocate 4 CPUs and 4GB memory to the Kubernetes cluster. The –insecure-registry option is useful when I want to use a local Docker Registry without SSL.
Check if the cluster is ready with
And launch the Kubernetes Dashboard with
After all these, it’s time to play with Kubernetes(kubectl command). However the local Kubernetes cluster doesn’t have DNS management like its cloud counterpart does. I wanted to have a load balancer too so I needed to get the IP and then tell kubectl to use the IP for the load balancer service:
minikube ip 192.168.99.104
Then in the yaml file for kubectl:
--- apiVersion: v1 kind: Service metadata: ... spec: externalIPs: - 192.168.99.104 ... type: LoadBalancer
For now I found this necessary otherwise the service stuck at pending state.