Running k8s on a single machine

Kind

kind is a tool for running local Kubernetes clusters using Docker container “nodes”.
kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI.
If you have go 1.17+ and docker, podman or nerdctl installed is all you need!go install sigs.k8s.io/[email protected] && kind create cluster

kind consists of:
- Go packages implementing cluster creation, image build, etc.
- A command line interface (
kind
) built on these packages. - Docker image(s) written to run systemd, Kubernetes, etc.
kubetest
integration also built on these packages (WIP)
kind bootstraps each “node” with kubeadm. For more details see the design documentation.
NOTE: kind is still a work in progress, see the 1.0 roadmap.
Installation and usage
For more detailed instructions see the user guide.
You can install kind with (for go 1.17+). This will put in . You may need to add that directory to your as shown here if you encounter the error after installation.go install sigs.k8s.io/[email protected]$(go env GOPATH)/bin$PATHkind: command not found
To use kind, you will also need to install docker.
Once you have docker running you can create a cluster with:
|
To delete your cluster use:
|
To create a cluster from Kubernetes source:
- ensure that Kubernetes is cloned in
$(go env GOPATH)/src/k8s.io/kubernetes
- build a node image and create a cluster with
|
Multi-node clusters and other advanced features may be configured with a config file, for more usage see the user guide or run kind [command] --help
Why kind?
- kind supports multi-node (including HA) clusters
- kind supports building Kubernetes release builds from source
- support for make / bash or docker, in addition to pre-published builds
- kind supports Linux, macOS and Windows
- kind is a CNCF certified conformant Kubernetes installer
- Minikube

minikube quickly sets up a local Kubernetes cluster on macOS, Linux, and Windows. We proudly focus on helping application developers and new Kubernetes users.

🎉 Latest Release: v1.35.0 - Jan 15, 2025 (changelog)
Highlights
- Supports the latest Kubernetes release (+6 previous minor versions)
- Cross-platform (Linux, macOS, Windows)
- Deploy as a VM, a container, or on bare-metal
- Multiple container runtimes (CRI-O, containerd, docker)
- Direct API endpoint for blazing fast image load and build
- Advanced features such as LoadBalancer, filesystem mounts, FeatureGates, and network policy
- Addons for easily installed Kubernetes applications
- Supports common CI environments
Discussion