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.
kubetestintegration also built on these packages (WIP)
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
go get sigs.k8s.io/kind. This will put
$(go env GOPATH)/bin. You may need to add that directory to your
shown here if you encounter the error
kind: command not found after installation.
To use kind, you will also need to install docker.
Once you have docker running you can create a cluster with
kind create cluster
To delete your cluster use
kind delete cluster
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
kind build node-image && kind create cluster --image kindest/node:latest
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
Community, discussion, contribution, and support 🔗︎
Please reach out for bugs, feature requests, and other issues!
The maintainers of this project are reachable via:
- Kubernetes Slack in the #kind channel
- filing an issue against this repo
- The Kubernetes SIG-Testing Mailing List
Pull Requests are very welcome!
See the issue tracker if you’re unsure where to start, or feel free to reach out to discuss.
Why kind? 🔗︎
- kind supports multi-node (including HA) clusters
- kind supports building Kubernetes release builds from source
- support for make / bash / docker, bazel, or installing from apt, in addition to pre-published builds.
- kind is written in go, and can be used as a library, has stable releases
- kind supports Windows in addition to MacOS and Linux
- kind is a CNCF certified conformant Kubernetes installer
Some other open source projects with slightly different but overlapping use cases, features etc.
Code of conduct 🔗︎
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.