DEV Community

Cover image for Setup your own kubernetes cluster on VMs
pongsatt
pongsatt

Posted on

Setup your own kubernetes cluster on VMs

My requirement is that I want a server I can can play around. I tried Docker with Jenkins CD and it was awesome. Then Docker swarm and Kubernetes came so I wanted to upgrade my Docker environment to a cluster. The problem is that I've got only a PC and I don't want to pay for my playground environment. Then I found that I can achieve this using a tool named kubeadm and some virtual machines. I would like to share my environment and how to set it up as well as my record for steps I used.

I divided the steps into a series of posts so it's easy and concise enough to follow.

Requirement

  • A kubernetes cluster based on kubeadm
  • Support dynamic storage provisioning based on NFS
  • Support Ingress with automatically acquire let's encrypt certificate
  • Be able to deploy application using Jenkin CD pipeline for both backend and frontend

You can follow each step in each post below.

Setup detail:

  1. Prepare Virtual Machine using Virtualbox and Ubuntu
  2. Setup kubernetes cluster using kubeadm (1 master 3 nodes)
  3. Setup dynamic storage class provisioner based on NFS
  4. Setup nginx ingress and cert-manager to automatically apply letsencrypt certificate
  5. Deploy static front-end application to kubernetes cluster using Jenkins CD and minio with automatic https cert
  6. Deploy back-end api application with database to the kubernetes cluster with Jenkins CD

Top comments (0)