Skip to content

Kubernetes (k8s) cluster using Kind for quick local development.

Notifications You must be signed in to change notification settings

jabielecki/kind-quickstart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

Kind Quickstart

Description

A small three-node Kubernetes cluster using just a local docker host. Intended to be used when some tutorial starts off with "pre-requisites: 1. Have a kubectl configured with some Kubernetes cluster".

  • Kubernetes
    • 3 nodes on 1 system
    • achieved using Kind and Docker
    • supporting Services of type LoadBalancer by setting up Metallb
  • Helm 3

Unfortunately kind clusters don't survive docker daemon restarts. Hence this script will destroy the current cluster and provision a new one.

Why bother with that LoadBalancer?

Kind does not offer an implementation of load-balancers (mechanisms that provide traffic to Service objects having spec.type=LoadBalancer).

The implementations of load-balancers that Kubernetes does ship with are all glue code that calls out to various IaaS platforms (GCP, AWS, Azure). As you're not running on IaaS, LoadBalancers will remain in the inaccessible ("pending") state indefinitely.

As much as you could convert such Services to one of inferior types ("NodePort" or "externalIP"), it's much easier to just support them via metallb.

Requirements

  • Linux amd64 (Ubuntu 18 or 19 is fine)
  • root access via sudo
  • docker
  • kubectl
  • go compiler >=1.13

Usage

./kind.sh

Follow from there.

Cleanup

sudo -H kind delete cluster

About

Kubernetes (k8s) cluster using Kind for quick local development.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages