Skip to content

Releases: k3d-io/k3d

v1.4.0-dev.0 - preview `add-node` command

03 Nov 18:58
Compare
Choose a tag to compare

About

This preview release includes lots of deprecations and code cleanups as well as an experimental new feature to add new nodes to existing clusters.

Preview

  • preview the new k3d add-node command which lets you add new nodes to existing k3d or k3s clusters
    • this is still under development, so you cannot use all the options which are available to the create command yet
NAME:
   k3d add-node - Add nodes to an existing k3d/k3s cluster (k3d by default)

USAGE:
   k3d add-node [command options] [arguments...]

OPTIONS:
   --role value, -r value                              Choose role of the node you want to add [agent|server] (default: "agent")
   --name value, -n value                              Name of the k3d cluster that you want to add a node to [only for node name if --k3s is set] (default: "k3s-default")
   --count value, -c value                             Number of nodes that you want to add (default: 1)
   --image value, -i value                             Specify a k3s image (Format: <repo>/<image>:<tag>) (default: "docker.io/rancher/k3s:v0.10.2")
   --arg value, -x value                               Pass arguments to the k3s server/agent command.
   --env value, -e value                               Pass an additional environment variable (new flag per variable)
   --volume source:destination, -v source:destination  Mount one or more volumes into every created node (Docker notation: source:destination)
   --k3s https://<host>:<port>                         Add a k3d node to a non-k3d k3s cluster (specify k3s server URL like this https://<host>:<port>) [requires k3s-secret or k3s-token]
   --k3s-secret value, -s value                        Specify k3s cluster secret (or use --k3s-token to use a node token)
   --k3s-token value, -t value                         Specify k3s node token (or use --k3s-secret to use a cluster secret)[overrides k3s-secret]

Feedback is very welcome :)
Just releasing this now so you can test it already, since it's going a bit slow at the moment due to high workloads among collaborators.

v1.3.4

21 Oct 06:19
Compare
Choose a tag to compare

CLI

  • new global flag --timestamp to show timestamps in logs

Internal

  • get-kubeconfig: only continue on error, if --all is set (thanks to @ibuildthecloud, #128)
  • do not run k3s as PID 1; use init (thanks to @ibuildthecloud, #129)
  • Exit Code 1 if no clusters were found in get-kubeconfig, ls and delete

Docs

  • example for running k3d on unsupported filesystems (thanks to @zer0def, #124)
  • clarify in example section, that k3s uses traefik by default
  • add brew install instructions (thanks to @docwhat, #127)

Development / Build Process

  • only build with go 1.13 in Travis
  • update to golangci-lint v1.20

v1.3.3

10 Oct 09:00
5c00056
Compare
Choose a tag to compare

Changes in k3d

  • add node-specifiers for k3d create --volume flag (#116 fixes #85, thanks to @cedrickring)
  • implement functionality for k3d get-kubeconfig --all flag (#121 fixes #120, thanks to @tw3n)

Changes in development toolchain

  • consistent usage of $(GO) in Makefile (#117, thanks to @tw3n)

v1.3.2

02 Oct 17:12
Compare
Choose a tag to compare

Changes in k3d

  • New flag k3d create --agent-arg <arg> (thanks to @misakwa, #96 )
    • let's you pass additional flags through to the k3s agent
  • Update build to latest Go version
  • typo fix (thanks to @daxmc99 , #109)
  • improved logging with proper log levels (thanks to @nlamirault , #112)

Changes in general toolchain

  • allow passing TAG to the install script to install a specific releases (thanks to @splattael , #105 )

v1.3.1

30 Jul 08:39
Compare
Choose a tag to compare

New

  • Use latest version of the docker SDK (@wxdao)
  • Add docs for using a local insecure registry (@asksven)

Thanks for the contributions :)

v1.3.0 - import images from docker into k3d

23 Jul 17:31
c5e5adb
Compare
Choose a tag to compare

Changes

  • [BUGFIX/ENHANCEMENT] ignore docker-machine errors and add more verbose logs (@andyz-dev)
  • [BUGFIX] fix timeout for k3d create (@darobs)
  • [FEATURE] new command k3d import-images to import images from the used docker daemon into containerd within k3d

Features explained

Use the import-images command:

  1. Create a cluster with the latest version of k3s (must be at least k3s:v0.7.0-rc2, because of ctr): k3d create -n test0 -w 2 --image rancher/k3s:v0.7.0-rc2
  2. Import two images: k3d import-images -n test0 nginx:local redis:local (comma instead of whitespace works as well for separating the list of images)

Thank you for all comments and contributions :)

Feedback is always welcome :)

v1.3.0-dev.0 - test import-images feature

01 Jul 11:07
Compare
Choose a tag to compare

This release is meant for testing the k3d import-images feature introduced by PR #83 .
It only works with rancher/k3s tag of v0.7.0-rc2 or later due to a hard requirement on ctr inside the k3s containers.

Test it with the attached binaries e.g. like this:

k3d import-images -n test0 nginx:local redis:local
or
k3d import-images -n test0 nginx:local,redis:local

Note: you need to create a cluster with the k3s image that includes ctr. E.g.

k3d create -a 6550 -n test0 -w 2 --image rancher/k3s:v0.7.0-rc2

Feedback welcome on PR #83 or issue #19

v1.2.2

07 Jun 13:20
5ebe276
Compare
Choose a tag to compare

Code

  • [ENHANCEMENT] k3d create --workers X now has a short-hand notation of -w (#76)
    • NOTE: -w moved from --wait to --workers
  • [ENHANCEMENT] k3d create --api-port now accepts arguments of format [host:]port to allow connecting to different interfaces (#75)
  • [ENHANCEMENT] Identify k3d docker networks using a prefix (#72)
  • [FEATURE] Support for docker machine (#71)
  • [ENHANCEMENT] Also pass environment variables to the worker nodes (#69)
  • [FEATURE] New k3d shell to spawn a sub-shell with KUBECONFIG set to the selected cluster (#66, #70)
    • --name / -n to select the cluster
    • --command / -c to execute a command and return
    • --shell / -s to select the shell that you want to use (one of auto, bash, zsh)
  • [ENHANCEMENT] Improved error handling for k3d create (#64)
  • [DEPRECATION] we deprecated the --timeout flag for k3d create and merged the functionality into the --wait flag. (#59)
    • new usage: k3d create --wait <seconds>, where --wait 0 means wait indefinitely
  • [ENHANCEMENT] Each possible failure during the cluster creation process will result in a full rollback (#60)
  • [FEATURE] new flag --auto-restart for the k3d create command, instructing docker to restart the cluster in case of non-manually induced stops (= unless-stopped) (#61)

Non-Code

  • [DOCS] we refactored the README and separated sections for documentation in the docs/ directory
  • [PROJECT] we introduced issue templates for bug reports and feature requests to enable us to act faster on them without having to request more information first

As usual, feedback is very welcome :)

v1.2.2-beta.0

22 May 07:54
3947baf
Compare
Choose a tag to compare
v1.2.2-beta.0 Pre-release
Pre-release

Code

  • [DEPRECATION] we deprecated the --timeout flag for k3d create and merged the functionality into the --wait flag.
    • new usage: k3d create --wait <seconds>, where --wait 0 means wait indefinitely
  • [ENHANCEMENT] Each possible failure during the cluster creation process will result in a full rollback
  • [FEATURE] new flag --auto-restart for the k3d create command, instructing docker to restart the cluster in case of non-manually induced stops (= unless-stopped)

Non-Code

  • [DOCS] we refactored the README and separated sections for documentation in the docs/ directory
  • [PROJECT] we introduced issue templates for bug reports and feature requests to enable us to act faster on them without having to request more information first

As usual, feedback is very welcome :)

v1.2.1

19 May 11:32
ba231f5
Compare
Choose a tag to compare
  • [ENHANCEMENT] Always show all clusters in k3d ls/k3d list (--all flag will be deprecated in v2.0.0)