Skip to content

Instantly share code, notes, and snippets.

@trisberg
Last active May 17, 2021 16:33
Show Gist options
  • Save trisberg/d59c06a4fb7bbd7920b9f2c043bb5132 to your computer and use it in GitHub Desktop.
Save trisberg/d59c06a4fb7bbd7920b9f2c043bb5132 to your computer and use it in GitHub Desktop.
Setting up Minikube and Helm on Fedora

Setting up Minikube and Helm on Fedora

Start with a basic Fedora 27 Desktop installation.

Development Tools

Install any typical apps needed for software development like Git and Visual Studio Code.

The curl command should be available by default.

Docker

Install Docker using the Docker Community Edition for Fedora.

Minikube and kubectl

Next up is installing Minikube which runs a single node Kubernetes cluster on a local system.

First, install a Hypervisor following the instructions provided.

Decided to go with VirtualBox but the installation wasn't as straightforward as it could have been. Had to install some development tools and kernel headers plus some other packages. After some "Googling" ended up with:

sudo dnf install binutils gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms qt5-qtx11extras SDL

Also had to install specific kernel headers for the current kernel version and run vboxconfig to build the VirtualBox kernel modules.

sudo dnf install kernel-devel-4.13.9-300.fc27.x86_64
sudo /sbin/vboxconfig

Then, download and install Minikube for Linux using the following:

curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.24.1/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

Minikube requires kubectl which is the Kubernetes CLI. The easiest way to install this is to download kubectl using curl. Use this curl command:

curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl

and then move the downloaded file to the /usr/local/bin folder and make it executable using:

chmod +x kubectl && sudo mv kubectl /usr/local/bin/

Start minikube using:

minikube start

In order to share the Docker environment that Minikube uses run

eval $(minikube docker-env)

Helm

Last piece to install is Helm. Download the latest tar file with the Linux binary from https://github.com/kubernetes/helm/releases and extract its contents. Copy linux-amd64/helm to the /usr/local/bin directory. Run helm init from the command line to install "tiller" in the Minikube cluster.

@james-nesbitt
Copy link

if you're running minikube on Fedora, you may consider using the kvm2 driver instead of virtualbox. It is a more straightforward installation process, but requires a runtime flag on minikube start.

/> minikube start --vm-driver=kvm2

if you install gnome-boxes then you already have kvm installed.

@trisberg
Copy link
Author

Thanks James, I'll give that a try next time I install on Fedora

@marcwittke
Copy link

I kinow I'm late to the party, but just for the records:
in Fedora 33 you can run minikube even without virtualization using CRI-O and podman

minikube start --driver=podman --container-runtime=cri-o

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment