Skip to content

Latest commit

 

History

History
248 lines (176 loc) · 17 KB

CHANGELOG.md

File metadata and controls

248 lines (176 loc) · 17 KB

Changelog

v0.10.0-alpha.0 - 2019-07-17

Attention Needed

  • KubeOne now uses Go modules! 🎉 (#550)
    • This should not introduce any breaking change
    • If you're using go get to obtain KubeOne, you may have to enable support for Go modules by setting the GO111MODULE environment variable to on

Added

  • Add support for SSH over a bastion host (#567)
  • Add an optional rootDiskSizeGB field to the worker spec for OpenStack (#549)
  • Add an optional nodeVolumeAttachLimit field to the worker spec for OpenStack (#572)
  • Add support for specifying OpenStack Tenant ID using the OS_TENANT_ID environment variable (#551)
  • Add an example KubeOne Ansible playbook (#576)

Changed

  • Fix Terraform integration not respecting multiple workerset definitions from output.tf (#568)
  • Fix install failing if Terraform output is not provided (#574)
  • Update machine-controller to v1.4.2 (#572)
  • Control plane nodes are now tainted by default (#564)

v0.9.2 - 2019-07-04

Changed

  • Fix the CNI plugin URL for cluster upgrades on CoreOS (#554)
  • Fix kubelet binary upgrade failure on CoreOS because of binary lock (#556)

v0.9.1 - 2019-07-03

Changed

  • Fix .ClusterNetwork.PodSubnet not being respected when using the Weave-Net CNI plugin (#540)
  • Fix kubeadm preflight check failure (IsDockerSystemdCheck) on Ubuntu and CoreOS by making Docker use systemd cgroups driver (#536, #541)
  • Fix kubeadm preflight check failure on CentOS due to kubelet service not being enabled (#541)

v0.9.0 - 2019-07-02

Action Required

  • The Terraform integration now requires Terraform v0.12+
    • Please see the official Upgrading to Terraform v0.12 document to find out how to update your Terraform scripts for v0.12
    • The example Terraform scripts coming with KubeOne are already updated for v0.12
    • KubeOne is not able to parse output of terraform output generated with Terraform v0.11 or older anymore
    • The Terraform output template (output.tf) has been changed and KubeOne is not able to parse the old template anymore. You can check the output template used by example Terraform scripts as a reference

Added

  • Add support for Kubernetes 1.15 (#486)
  • Add support for Microsoft Azure (#469)
  • Add kubeone completion command for generating the shell completion scripts for bash and zsh (#484)
  • Add kubeone document command for generating man pages and KubeOne documentation (#484)
  • Add support for reading Terraform output directly from the directory (#495)
  • Add missing fields to the workers specification API (#499)

Changed

  • [BREAKING] KubeOne Terraform integration now uses Terraform v0.12+ (#466)
  • [BREAKING] Change Terraform output template to conform with the KubeOneCluster API (#503)
  • Fix Docker not starting properly for some providers on Ubuntu (#512)
  • Fix kubeone reset failing if a MachineSet or Machine object has been already deleted and include more details in the error messages (#508)
  • Fix ability to read Terraform output from the standard input (stdin) (#479)
  • Update machine-controller to v1.3.0 (#499)
  • Update DigitalOcean Cloud Controller Manager to v0.1.15 (#516)
  • Use Docker 18.09.7 when provisioning new clusters (#517)
  • Configure proxy for kubelet on control plane nodes if proxy settings are provided (#496)
  • Configure proxy on worker nodes if proxy settings are provided (#490)
  • Make GoBetween Load balancer configuration script work on all operating systems and fix minor bugs (#494)

v0.8.0 - 2019-05-30

Added

  • Add support for VMware vSphere (#428)

v0.7.0 - 2019-05-28

Added

  • Add WeaveNet as an additional CNI plugin (#432)
  • Add the --remove-binaries flag to the kubeone reset command that removes Kubernetes binaries (#450)

Changed

  • Fix kubeone reset failing if no MachineDeployment or Machine object exist (#450)
  • Update machine-controller to v1.1.8 (#454)

v0.6.2 - 2019-05-13

Changed

  • Fix a missing JSON tag on the Name field, so specifying name in lowercase in the manifest works as expected (#439)
  • Fix failing to disable SELinux on CentOS if it's already disabled (#443)
  • Fix setting permissions on the remote KubeOne directory when the $USER environment variable isn't set (#443)

v0.6.1 - 2019-05-09

Changed

  • Provide the --kubelet-preferred-address-types flag to metrics-server, so it works on all providers (#424)

v0.6.0 - 2019-05-08

We're excited to announce that as of this release KubeOne is in beta! We have the new backwards compatibility policy going in effect as of this release.

Check out the documentation for this release to find out how to get started with KubeOne.

Action Required

  • This release introduces the new KubeOneCluster API. The new API is supposed to the improve user experience and bring many new possibilities, like API versioning.
    • Old KubeOne configuration manifests will not work as of this release!
    • To continue using KubeOne, you need to migrate your existing manifests to the new KubeOneCluster API. Follow the migration guidelines to find out how to migrate.

Added

  • [BREAKING] Implement and migrate to the KubeOneCluster API (#343, #353, #360, #379, #390)
  • Implement the config migrate command for migrating old configuration manifests to KubeOneCluster manifests (#408)
  • Implement the config print command for printing an example KubeOneCluster manifest (#412, #415)
  • Enable scaling subresource for MachineDeployments (#334)
  • Deploy metrics-server by default (#338, #351)
  • Deploy external cloud controller manager for DigitalOcean, Hetzner, and Packet (#364)
  • Implement Terraform integration for Hetzner (#331)
  • Add support for OpenIDConnect configuration (#344)
  • Add support for Packet provider (#384)
  • Patch CoreDNS deployment to work with external cloud controller manager taints (#362)

Changed

  • Fix a typo in vSphere CloudProviderName (#339)
  • Expose ssh_username variable in the Terraform output (#350)
  • Pass -external-cloud-provider flag to machine-controller when external cloud provider is enabled (#361)
  • Update machine-controller to v1.1.5 (#378)
  • Don't wait for machine-controller if it's not deployed (#392)
  • Deploy instance with a load balancer on OpenStack. General improvements to OpenStack support (#401)
  • Parse all parameters from Terraform output for DigitalOcean (#370)

v0.5.0 - 2019-04-03

Added

  • Add support for Kubernetes 1.14
  • Add support for upgrading from Kubernetes 1.13 to 1.14
  • Add support for Google Compute Engine (#307, #317)
  • Update machine-controller when upgrading the cluster (#304)
  • Add timeout after upgrading each node to let nodes to settle down (#316, #319)

Changed

  • Deploy machine-controller v1.1.2 on the new clusters (#317)
  • Creating MachineDeployments and upgrading nodes tasks are repeated three times on the failure (#328)
  • Allow upgrading to the same Kubernetes version (#315)
  • Allow the custom VPC to be used with the example AWS Terraform scripts and switch to the T3 instances (#306)

v0.4.0 - 2019-03-21

Action Required

  • In #264 the environment variable names were changed to match names used by Terraform. In order for KubeOne to correctly fetch credentials you need to use the following variables:
    • DIGITALOCEAN_TOKEN instead of DO_TOKEN
    • OS_USERNAME instead of OS_USER_NAME
    • HCLOUD_TOKEN instead of HZ_TOKEN
  • The cloud-config file is now required for OpenStack clusters. Validation will fail if the cloud-config is not provided. See the OpenStack quickstart for details how the cloud-config file should look like.
  • Ark integration is removed from KubeOne in #265. You need to remove the backups section from the existing configuration files. If you wish to deploy Ark on new clusters you have to do it manually.

Added

  • Add support for enabling DynamicAuditing (#261)

Changed

  • Deploy machine-controller v1.0.7 on the new clusters (#247)
  • Automatically download the Kubeconfing file after install (#248)
  • Default --destory-workers to true for the kubeone reset command (#252)
  • Improve OpenStack Terraform scripts (#253)
  • The cloud-config file for OpenStack is required (#253)
  • The environment variable names are changed to match names used by Terraform (#264)

Removed

  • Option for deploying Ark is removed (#265)

v0.3.0 - 2019-03-08

Action Required

  • If you're using provider.Name external to configure control plane nodes to work with external CCM you need to:
    • Set provider.Name to name of the cloud provider you're using or to none (see config.yaml.dist for supported values),
    • Set provider.External to true.
    • Note: using external CCM is not supported and is currently not working as expected.
  • If you're using provider.Name none:
    • If you're deploying machine-controller you need to set MachineController.Provider to name of the cloud provider you're using for worker nodes,
    • Otherwise you need to set MachineController.Deploy to false, so validation passes.

Added

  • Add support for cluster upgrades (#206, #211, #214)
  • Add support for enabling PodSecurityPolicy (#218)
  • Add kubeone version command (#221)
  • Add initial support for OpenStack worker nodes (#209)

Changed

  • Fix none provider bugs and ensure correct behavior (#227)
  • External Cloud Controller Manager is now enabled by setting Provider.External to true instead of setting Provider.Name to external (#230, #237)
  • Set correct Internal address on nodes with 2+ network interfaces (#240)
  • Deploy machine-controller on uninitialized nodes (#241)

v0.2.0 - 2019-02-15

Added

  • Add support for workers creation on DigitalOcean (#153)
  • Add support for CentOS (#154)
  • Add support for external cloud controller managers (#161)
  • Add Terraform scripts for OpenStack (#170)
  • Add support for configuring proxy for Docker daemon, apt-get/yum and curl (#182)

Changed

  • AWS credentials can be obtained from the profile file (#156)
  • Fix Etcd init on clusters with more than one network interface (#160)
  • Allow provider.Name to be specified for providers without external Cloud Controller Manager (#161)
  • Refactor KubeOne CLI (#177)
    • Global flags are parsed correctly regardless of their placement in the command
    • --verbose and --tfjson are global flags
    • The main package is moved to the root of project (github.com/kubermatic/kubeone)
  • Deploy machine-controller v1.0.4 instead of v0.10.0 to fix CVE-2019-5736 (#191)
  • Deploy Docker 18.09.2 on Ubuntu to fix CVE-2019-5736 (#193)

Removed

  • Remove support for Kubernetes 1.12 (#184)
  • Remove API fields related to Etcd (#194)