Releases: kubernetes-sigs/kind
0.7.0
v0.7.0
notably brings greatly improved support for dynamic PersistentVolumes by way of rancher.io/localhost-path integration for clusters with Kubernetes v1.12.X or greater.
It is also worth noting that kind is now committed to IPv6 PR testing and running 80% of the GCE presubmit test cases on Kubernetes Pull Requests.
Breaking Changes
- The default node image is a Kubernetes
v1.17.0
imagekindest/node:v1.17.0@sha256:9512edae126da271b66b990b6fff768fbb7cd786c7d39e86bdf55906352fdf62
- Node images built with kind
v0.7.0
have many improvements and require kindv0.5.0+
, images built with older releases should continue to work.- To get the new dynamic PV support you must upgrade both kind and your node image(s) to this release or newer. The images are compatible with older releases but only both a newer kind CLI and newer images together will enable the updated PV support.
- When the new PV support enabled by these versions the default storage class is changed from the previous
k8s.io/host-path
based implementation.
New Features
- Dynamic PersistentVolume Support is greatly enhanced with rancher.io/localhost-path integration out of the box
- Upgraded dependencies around the board, notably including fixes to the CNI portmap plugin to reduce flakiness
- Documentation Enhancements
- We have started an effort to comprehensively cover configuration in the docs
- We have a dedicated guide for using Ingress
- Added more resources
- Improved site code, in particular added copyable snippets
- Other assorted smaller improvements
- Again show one box emoji per node being provisioned
New Node have been Images for kind v0.7.0
, please use these exact images (IE like kindest/node:v1.16.4@sha256:b91a2c2317a000f3a783489dfb755064177dbc3a0b2f4147d50f04825d016f55
) or build your own as we may need to change the image format again in the future 😅
Kubernetes Version @ digest
- v1.18.0 @
sha256:0e20578828edd939d25eb98496a685c76c98d54084932f76069f886ec315d694
- v1.17.0 @
sha256:9512edae126da271b66b990b6fff768fbb7cd786c7d39e86bdf55906352fdf62
- v1.16.4 @
sha256:b91a2c2317a000f3a783489dfb755064177dbc3a0b2f4147d50f04825d016f55
- v1.15.7 @
sha256:e2df133f80ef633c53c0200114fce2ed5e1f6947477dbc83261a6a921169488d
- v1.14.10 @
sha256:81ae5a3237c779efc4dda43cc81c696f88a194abcc4f8fa34f86cf674aa14977
- v1.13.12 @
sha256:5e8ae1a4e39f3d151d420ef912e18368745a2ede6d20ea87506920cd947a7e3a
- v1.12.10 @
sha256:68a6581f64b54994b824708286fafc37f1227b7b54cbb8865182ce1e036ed1cc
- v1.11.10 @
sha256:e6f3dade95b7cb74081c5b9f3291aaaa6026a90a977e0b990778b6adc9ea6248
Fixes
- Improved messaging in a number of user facing errors
- Disabled GINKGO_FLAKE_ATTEMPTS when testing
- Fixed local image check
- When the default kubeconfig is empty / non-existent,
kind create cluster
andkind export kubeconfig
will preserve extra fields from kubeadm, notablyapiVersion
andkind
(though they are not strictly necessary...) - Reduced cruft in base image
Contributors
Thanks again to everyone who contributed to this release! ❤️
Users whose commits are in this release (alphabetically by user name)
v0.6.1
This is a small patch release over v0.6.0.
Notably:
- Relaxed
protocol
andpropagation
in v1alpha4 config to have defaulting like v1alpha3 without specifying a value. - Fixed containerd config patching on clusters with multiple control plane nodes.
- Fixed containerd config patching on slow hosts (do not attempt to restart containerd if it has not started yet).
- Fixed airgapped support for node images (corrected kindnetd image preloading).
This last point brings a new list of node images, fully compatible with v0.6.0
, but with kindnetd
properly pre-loaded onto them for use in air-gapped / offline environments:
kindest/node:v1.16.3@sha256:70ce6ce09bee5c34ab14aec2b84d6edb260473a60638b1b095470a3a0f95ebec
kindest/node:v1.15.6@sha256:18c4ab6b61c991c249d29df778e651f443ac4bcd4e6bdd37e0c83c0d33eaae78
kindest/node:v1.14.9@sha256:bdd3731588fa3ce8f66c7c22f25351362428964b6bca13048659f68b9e665b72
kindest/node:v1.13.12@sha256:1fe072c080ee129a2a440956a65925ab3bbd1227cf154e2ade145b8e59a584ad
kindest/node:v1.12.10@sha256:c5aeca1433e3230e6c1a96b5e1cd79c90139fd80242189b370a3248a05d77118
kindest/node:v1.11.10@sha256:8ebe805201da0a988ee9bbcc2de2ac0031f9264ac24cf2a598774f1e7b324fe1
The default node image is now kindest/node:v1.16.3@sha256:70ce6ce09bee5c34ab14aec2b84d6edb260473a60638b1b095470a3a0f95ebec
v0.6.0
v0.6.0
brings major internal rework and some important breaking changes that we hope will make kind easier to use.
It is also worth noting that kind is now used for blocking Kubernetes pull request testing, in addition to already being used for release signal. This is a major milestone for the project.
Breaking Changes
-
KUBECONFIG is now automatically merged in the same style as
kops
,minikube
, GKE, etc. Please see #1060 for a detailed migration guide.- You do not need to and should not do
export KUBECONFIG="$(kind get kubeconfig-path)"
. This command is deprecated and will be removed in a future release. - kind will set your current-context when creating a cluster
- You can configure using a different file by either setting the
KUBECONFIG
environment variable before creating a cluster, or by setting the--kubeconfig
flag on cluster creation
- You do not need to and should not do
-
Config files are now parsed in strict mode, which should help catch invalid config files
-
kind is moving all external (labels, config) namespaced objects into
x-k8s.io
to comply with the guidelines for API review. For this release kind will support and use both labels without breaking anything, however in a future release we will only use the new x-k8s.io labels. This note is primarily for @danderson 🙃 -
The default node image is a Kubernetes
v1.16.3
imagekindest/node:v1.16.3@sha256:bced4bc71380b59873ea3917afe9fb35b00e174d22f50c7cab9188eac2b0fb88
-
Node images built with kind
v0.6.0
have many improvements and require kindv0.5.0+
, images built withv0.4.0
/v0.3.0
should continue to work withv0.6.0
however.
New Features
- There is a new
kind.x-k8s.io/v1alpha4
config format.- Support for per-node kubeadm config patches
- Support for patching the kind nodes's containerd config, which will be used in an upcoming new guide for local registries
- Automatic KUBECONFIG export and merge to simplify using kind.
- kind clusters will always have a
kind-
prefix in kubeconfig file entries and now can be identified by this.
- kind clusters will always have a
kind export kubeconfig
to re-export credentials in the waykind create cluster
now does.- Significant logging rework
-q
/--quiet
flag to silence status messages / error output- Logging with
-v 1
/--verbosity 1
or greater will result in detailed error output including stacktraces and command output
- Colored terminal output and slightly better spinners.
- You can disable both by setting the environment variable
TERM
todumb
- You can disable both by setting the environment variable
- Enhanced
kind version
output with more details- Builds with
make build
ormake install
include git commit - The simplified version can be obtained with
kind version -q
- Builds with
- Mounts in
extraMounts
may have relative paths on the host, resolved against the working directory ofkind
- kubeadm config patches no longer need to include metadata.name and may optionally exclude the
apiVersion
, allowing more flexible matching of patches to config objects- The kind binary is now 75% smaller as a result of eliminating dependencies and writing a patch runtime specific to our needs.
- kindnetd now has improved logging with klog
- A random salutation is printed at the end of
kind create cluster
🙃 - It should be possible to install kind via chocolatey with
choco install kind
. We're also hoping to get a homebrew package shortly!
New Node have been Images for kind v0.5.0
, please use these exact images (IE like kindest/node:v1.16.3@sha256:bced4bc71380b59873ea3917afe9fb35b00e174d22f50c7cab9188eac2b0fb88
) or build your own as we may need to change the image format again in the future 😅
- v1.16.3
sha256:bced4bc71380b59873ea3917afe9fb35b00e174d22f50c7cab9188eac2b0fb88
- v1.15.6
sha256:1c8ceac6e6b48ea74cecae732e6ef108bc7864d8eca8d211d6efb58d6566c40a
- v1.14.9
sha256:00fb7d424076ed07c157eedaa3dd36bc478384c6d7635c5755746f151359320f
- v1.13.12
sha256:ad1dd06aca2b85601f882ba1df4fdc03d5a57b304652d0e81476580310ba6289
- v1.12.10
sha256:e93e70143f22856bd652f03da880bfc70902b736750f0a68e5e66d70de236e40
- v1.11.10
sha256:44e1023d3a42281c69c255958e09264b5ac787c20a7b95caf2d23f8d8f3746f2
The new node images for recent Kubernetes versions should be > 200 MB smaller thanks to a KEP we implemented upstream to allow building without most of the in-tree cloud provider code.
Fixes
- Various kind CLI output was corrected to be to stdout or stderr where appropriate
- We have robust new containerd nightly build infrastructure and are shipping the lastest upstream containerd 1.3 + backports in all node images
- Removed unnecessary dependencies and upgraded all dependencies
- Fixed building Kubernetes master branch with Bazel
- Upgraded to build with Go
1.13.4
- Upgraded all dependencies
- kindnetd now mounts the iptables xtables lock to ensure coordination with kube-proxy
- kind will attempt to recreate the original cgroup environment inside the node, this eliminates some error output from kubelet
- fixed a race condition in command execution, eliminating a source of flakiness of some kind commands
kind get kubeconfig
does not depend on an existing config file on the host- the product_uuid is now faked to be different per-node
- switched to GA storageclass annotation on the default storage class
- removed unnecessary addon manager annotation
- kindnetd is now more robust with backoff on failures
- kind is now relatively decoupled from docker internally for node management
- deflaked our cross build and fixed running it on macOS
Contributors
Thanks again to everyone who contributed to this release! ❤️
Users whose commits are in this release (alphabetically by user name)
- @alejandrox1
- @amwat
- @aojea
- @beautytiger
- @BenTheElder
- @cofyc
- @danderson
- @dustinspecker
- @fabiand
- @hwdef
- @jbrette
- @jieyu
- @k8s-ci-robot
- @luksa
- @lwr20
- @maelvls
- @manics
- @mauilion
- @paol
- @PatrickLang
- @RafalKorepta
- @robertojrojas
- @sivanzcw
- @sufuf3
- @tanjunchen
- @tao12345666333
- @u5surf
- @WalkerGriggs
- @ysz
- @yuxiaobo96
v0.5.1
This release is a minor patch to upgrade kustomize
to v3.1.1-0.20190821175718-4b67a6de1296
, fixing builds for Windows. This release also contains fixes to our release tooling & CI to ensure we don't regress on this.
Otherwise, please see the release notes for v0.5.0.
See: #792 for more details on what went wrong and how we fixed it.
v0.5.0
Please see v0.5.1 for a small update with Windows fixes (!)
v0.5.0
primarily brings bug fixes and documentation + code quality improvements
Breaking Changes
- The default node image is a Kubernetes
v1.15.3
imagekindest/node:v1.15.3@sha256:27e388752544890482a86b90d8ac50fcfa63a2e8656a96ec5337b902ec8e5157
- Node images built with kind
v0.5.0
will require kindv0.5.0+
, images built withv0.4.0
/v0.3.0
should continue to work withv0.5.0
however.
New Features
- Port forwards now support UDP and SCTP
- We now have documentation for using kind with WSL2 (shoutout to @PatrickLang)
- We now have a resources page where you can find talks, guides, and examples
- Limited arm32 support
- Nodes perform some more startup logging to the container TTY, which should help with debugging
- Building node images should be slightly faster due to streamlined image pre-loading
New Node have been Images for kind v0.5.0
, please use these exact images or build your own as we may need to change the image format again in the future 😅
kindest/node:v1.15.3@sha256:27e388752544890482a86b90d8ac50fcfa63a2e8656a96ec5337b902ec8e5157
kindest/node:v1.14.6@sha256:464a43f5cf6ad442f100b0ca881a3acae37af069d5f96849c1d06ced2870888d
kindest/node:v1.13.10@sha256:2f5f882a6d0527a2284d29042f3a6a07402e1699d792d0d5a9b9a48ef155fa2a
kindest/node:v1.12.10@sha256:e43003c6714cc5a9ba7cf1137df3a3b52ada5c3f2c77f8c94a4d73c82b64f6f3
kindest/node:v1.11.10@sha256:bb22258625199ba5e47fb17a8a8a7601e536cd03456b42c1ee32672302b1f909
Fixes
- Worked around Kubernetes build changes pending in v1.16, kind again supports building Kubernetes at HEAD
kind load docker-image
now correctly avoids loading images that are already loaded⚠️ - More Node runtime written storage is now on volume(s), this should fix some bugs (#771) and improve performance
- New node images will attempt to work around missing
/dev/kmsg
causing kubelet to not start /
isrshared
in new node (images) for mount propagation (more mounts should be shared now)LimitNOFILE
in the containerd service now matches the updated upstream value (1048576
) in new node images- All node level services should be passed proxy environment variables by default now with new node images
- Upgraded to build with Go
1.12.9
- Upgraded Kustomize to
v3.1.0
- Bugs in the documentation for using private registries were corrected
- The kind CLI's own build scripts support proxy environment variables properly
- We've improved / clarified the roadmap a bit
Contributors
Thanks again to everyone who contributed to this release! 😄
Users whose commits are in this release (alphabetically by user name)
v0.4.0
v0.4.0 brings improved networking features in particular, including initial IPv6 support and additional node port forwards. It also continues to improve speed and reliability (hopefully! 🙃)
Breaking Changes
- The default node image is a Kubernetes v1.15.0 image
kindest/node:v1.15.0@sha256:b4d092fd2b507843dd096fe6c85d06a27a0cbd740a0b32a880fe61aba24bb478
- The deprecated
kind.sigs.k8s.io/v1alpha2
version of config was removed, please switch tokind.sigs.k8s.io/v1alpha3
kind build node-image --type=apt
was removed. Please usekind build node-image
orkind build node-image --type=bazel
instead, or one of the pre-built images. A future release will re-work these commands and add support for building from upstream release tarballs.
New Features
- Additional node port forwards may be configured with the
nodes[].extraPortMappings
ofCluster
configuration inkind.sigs.k8s.io/v1alpha3
. This can be used to access workloads more easily from the host. Expect guides using this soon! - Limited IPv6 support. The
networking.ipFamily
may be set toipv6
inkind.sigs.k8s.io/v1alpha3
Cluster
configuration to create an ipv6 enabled cluster on Linux. We have set up continuous Kubernetes conformance testing with IPv6 enabled and are working to fix the tests - A warning is emitted if the chosen cluster name is too long and likely to cause the generated node names to be too long.
make install
now supports overridingINSTALL
to specify an alternate tool toinstall
and ensures the output directory- Support / documentation for using kind on WSL2.
- The
kind load ...
sub-commands now avoid loading images that are already present - kubeadm
v1beta2
config is now use opportunistically for recent enough Kubernetes versions - Reduced startup time for single-node clusters in particular
New Node have been Images for kind v0.4.0
, please use these exact images or build your own as we may need to change the image format again in the future 😅
kindest/node:v1.15.0@sha256:b4d092fd2b507843dd096fe6c85d06a27a0cbd740a0b32a880fe61aba24bb478
kindest/node:v1.14.3@sha256:583166c121482848cd6509fbac525dd62d503c52a84ff45c338ee7e8b5cfe114
kindest/node:v1.13.7@sha256:f3f1cfc2318d1eb88d91253a9c5fa45f6e9121b6b1e65aea6c7ef59f1549aaaf
kindest/node:v1.12.9@sha256:bcb79eb3cd6550c1ba9584ce57c832dcd6e442913678d2785307a7ad9addc029
kindest/node:v1.11.10@sha256:176845d919899daef63d0dbd1cf62f79902c38b8d2a86e5fa041e491ab795d33
Fixes
- The generated KUBECONFIG file references the API Server by listen address (IP) instead of
localhost
(domain), which is more correct and should work on systems without a validlocalhost
entry (!) - The new kind images should work on ipv4 only hosts with ipv6 fully disabled
- The node subnet is properly added included in
NO_PROXY
on the nodes when proxy settings are detected - Clusters with multiple control plane nodes now have proper healthchecks of the API servers in the external loadbalancer
- Minor cleanup and typo fixes
Contributors
Thanks again to everyone who committed to this release! You all are the best! ❤️
Alphabetically by user name:
v0.3.0
This release focused on improving the speed and reliability of cluster creation,
networking, and bug fixes. A number of breaking changes were required, but Nodes
should be simpler, smaller, faster, and more reliable.
Breaking Changes
IMPORTANT: Breaking Image Changes
kind v0.3
+ requires new node images versus v0.2.1
and earlier. A number of
important internal improvements were made that required changing how cluster
bootup is performed. The following images we have previously published are
incompatible with kind v0.3
+:
kindest/node:v1.11.3
kindest/node:v1.12.2
kindest/node:v1.12.3
kindest/node:v1.13.2
kindest/node:v1.13.4
kindest/node:v1.14.0
The following images require unreleased versions of kind between v0.3.0
and v0.2.1
,
please do not use them:
kindest/node:v1.14.1
For 0.3+ we are pushing the following images:
kindest/nodev1.14.2@sha256:33539d830a6cf20e3e0a75d0c46a4e94730d78c7375435e6b49833d81448c319
kindest/node:v1.13.6@sha256:9e07014fb48c746deb98ec8aafd58c3918622eca6063e643c6e6d86c86e170b4
kindest/node:v1.12.8@sha256:cc6e1a928a85c14b52e32ea97a198393fb68097f14c4d4c454a8a3bc1d8d486c
kindest/node:v1.11.10@sha256:abd0275ead5ddfd477b7bc491f71957d7dd75408a346834ffe8a9bee5fbdc15b
We hope not to make further breaking changes to the images, but strongly
recommend pinning images by sha256, the default image is pinned to a particular sha.
This can be done with --image=kindest/node:v1.X.Y@sha256:hash
. For example:
kind create cluster --image=kindest/node:v1.12.8@sha256:cc6e1a928a85c14b52e32ea97a198393fb68097f14c4d4c454a8a3bc1d8d486c
-
Default clusters will now be Kubernetes
v1.14.2
, the default node image is
nowkindest/nodev1.14.2@sha256:33539d830a6cf20e3e0a75d0c46a4e94730d78c7375435e6b49833d81448c319
-
Kubernetes on the nodes now uses CRI (containerd) instead of dockershim
(dockerd) inside the "node" docker containers.
Please note that details underlying Kubernetes are not guaranteed and may
change again in the future, however we are still warning about this particular
change as some advanced users depended on these details anyhow. -
Similarly, the default CNI / networking setup changed, kind now sets a
podSubnet and masquerades outbound pod traffic with a new CNI
setup. This subnet is defaulted but is now configurable and the entire CNI setup
can be disabled (see features below). -
Building kind now requires go modules (using any upstream supported go version)
or using the new Makefile. Pre-built binaries for all platforms are included with
this release. Please consider using one of the binaries in your CI setups, or
at least pinning to a tagged release.
New Features
- The default CNI can be disabled with the
Cluster.networking.disableDefaultCNI
config field, making it easier to experiment with your own CNI. - The Pod Subnet is now configurable with
Cluster.networking.podSubnet
kind completion bash
is now supported to source shell completions.- WARNING: we are considering renaming this to align better with the
[verb] [noun]
Kubernetes style CLI structure.
- WARNING: we are considering renaming this to align better with the
- Limited PPC64LE support (requires building your own images)
- The kind command line binary is now built reproducibly
- building now only requires
make
/docker
on the host as an alternative to go 1.11+ with modules
- building now only requires
- kind now runs a minimal and lightweight CNI setup
- internal progress on IPv6 support
- internal progress on cluster reboot support
- kind is now versioned with go modules
Fixes
- We've improved auto-detecting the kubernetes source location for
kind build node-image
- Cluster bootup should be even faster and more reliable in constrained environments.
- simplified startup logic with less waiting
- Kubernetes images are fully preloaded at build time
- our networking setup is now somewhat custom, and is simpler and lighter
kind export logs
should be less likley to flake with large numbers of nodes or
log files, internally we've combined most of the streams.- More improvements to proxy handling, though kind may still not work correctly
in proxied environments. /sys/class/dmi/id/product_name
is faked tokind
where applicable, this avoids
Kubernetes detecting if kind is running on GCE.
Contributors
Thanks again to everyone who committed to this release! ❤️
Alphabetically by user name:
0.2.1
0.2.1 is a bug fix release
Breaking Changes
NONE
New Features
- The hostpath provisioner is now enabled by default (#397)
Fixes
- fix
kind build node-image
on macOS, previously--type=bazel
and--type=docker
(the default) did not work properly on not-Linux in0.2.0
(#413) - fix possible panic in failed
kind create cluster
calls, previously if multiple nodes failed to come up kind could panic (#407)
Contributors
Thanks to everyone who committed to this release! ❤️
0.2.0
Breaking Changes
- Default clusters will now be Kubernetes
v1.13.4
, the default node image is nowkindest/node:v1.13.4
v1alpha1
config is no longer suppported, please upgrade tov1alpha3
(v1alpha2
is also suppported in this release)v1alpha3
is now the default config version- The
Config
type was renamed toCluster
127.0.0.1
is the default address for binding the API server port to the host, if you wish to use0.0.0.0
please set this in thenetworking
section ofCluster
config inv1alpha3
replicas
is no longer a field on nodes, given the low node count, please write one entry per nodekubeadmConfigPatches
andkubeadmConfigPatchesJSON6902
have moved to theCluster
level from nodes (though they were applied cluster-wide previously, and only from the bootstrap control plane node)
- The
New Features
- Cluster bootup should be faster on Linux in particular, many tasks are now handled in parallel
- The CNI (weave) is bundled in the node-image, clusters should work without internet access if
kindest/node
is pulled ahead of time - support for multiple-control planes with an external-load balancer, I.E. """HA""" clusters
v1alpha3
now supports cluster-wide networking options, which allow for setting the API server listen address and port on the host- proxy support is improved
http_proxy
,https_proxy
, andno_proxy
are supported instead of their uppercase equivilants if the uppercase values are not set- the nodes's docker daemons will be configured with proxy settings from the host (thanks
- Paths on the host may be bind-mounted to nodes using the new
extraMounts
field on nodes, to E.G. share a directory with the host and a node - We have a new documentation site https://kind.sigs.k8s.io/ 🎉
- we have a logo now
- kind is CNCF certified conformant
- kind should work on ARM, though kubernetes images will need to be built locally for now
kind load docker-image
andkind load image-archive
are now supported for side-loading images into your cluster- kubeadm output from init and join will be printed when the kind loglevel is debug
- kind is now developed with go modules instead of dep
- Improved usage output for
kind create cluster
on Windows
Fixes
- CNI was upgraded to 0.7.5 in the base image
- Docker was upgraded to 18.06.3 with patched runc
- kubelet disk eviction and image GC are disabled for kind clusters, this prevents various failures when the host has low disk space. As kind clusters do not run on dedicated hosts, we configure Kubernetes not to reserve disk overhead.
- Docker image archives are chowned to
root:root
in the node image, fixing user namespace remapping support - No emoji are re-used in CLI output, every action now has a unique emoji
Contributors
Thanks to everyone who committed to this release! ❤️
Alphabetically by user name:
0.1.0 - The second alpha release
This release contains many exciting features! Amongst other things we now have support for multi-node clusters thanks to @fabriziopandini, and fixes have been made for kind on Windows.
UPDATE 2019-02-11
Due to CVE-2019-5736 ("the runc escape")
kindest/node:v1.13.2@sha256:d070e091e7c0e515a37d0834ea72828b2338acdc4bc7a13cbb84274fb14e5e83
or:
kindest/node:v1.13.3@sha256:d1af504f20f3450ccb7aed63b67ec61c156f9ed3e8b0d973b3dee3c95991753c
Should be used instead of the default image in this release. Example:
kind create cluster --image=kindest/node:v1.13.3@sha256:d1af504f20f3450ccb7aed63b67ec61c156f9ed3e8b0d973b3dee3c95991753c
In the future we are looking at not pinning to an exact image by default, so that minimal fixes can be silently pushed.
We are additionally hoping to adopt rootless containers once support lands in Kubernetes.
Breaking changes since 0.1.0
- Default clusters will now be Kubernetes v1.13.2, and the default node image is now
kindest/node:v1.13.2@sha256:e14edfa4950e009fe560499c9db6e89daae8bd18bcb372caca6d321a86c52cda
- nodeLifecycleHooks are no longer supported in the config, we believe this feature was unused and will revisit it later, if you need this, please file an issue with your use case!
- Deleting a cluster now attempts to delete the cluster specific
KUBECONFIG
file on the host (thanks @blakestoddard!)
New Features
- The current kind
Config
is now atkind.sigs.k8s.io/v1alpha2
, with support for multi-node clusters! (thanks @fabriziopandini!) - The default image was upgraded to Kubernetes v1.13.2 (see above)
- kind should now work on hosts where userns remap is enabled in the docker daemon (thanks @vasrem!)
- Improved documentation (thanks @alejandrox1, @jimangel, @tao12345666333, @k8k, @timoreimann, @chuckha, @superbrothers, @benmoss!)
kubeadm
's config is now internallyv1beta1
when new enough Kubernetes images are used, this should improve stable support for future Kubernetes versions. Additionally all config objects are populated, so they may be patched via patches in kind's config.- When removing a
KUBECONFIG
file, we attempt to detect if the environment variable is set and warn about unsetting it (thanks @blakestoddard, @manparvesh!) - The base image now contains conntrack, in order to support installing recent
kubeadm
packages. by default it is nowkindest/base:v20181203-d055041
kind build node-image
now supports a--kube-root
flag to explicitly specify the path to Kubernetes's source code, if unset kind will continue to auto-detect this via go's build tooling. (thanks @inercia!)
Fixes
- On Windows the
KUBECONFIG
files should now be placed in the default directory correctly (we now use the homedir util from client-go) - On Windows patching kubeadm config should work correctly
- Recent
kubeadm
debian packages should be installable in the base image after adding conntrack (see above)
Committers to this release are:
- @BenTheElder
- @fabriziopandini
- @kris-nova
- @blakestoddard
- @jimangel
- @tao12345666333
- @alejandrox1
- @manparvesh
- @inercia
- @superbrothers
- @chuckha
- @timoreimann
- @k8k
- @vincepri
- @k8s-ci-robot
Thank you for your contributions!
Additionally, special thanks to @neolit123, @krzyzacy, @munnerz, and @amwat for PR reviews!