Releases: kubermatic/kubeone
v1.0.0-alpha.2
The KubeOne documentation has been migrated from GitHub to the new KubeOne docs website. Checkout the new website to find out how to get started with KubeOne.
Attention Needed
- This alpha version fixes the provisioning failures caused by
docker-ce-cli
version mismatch. The older alpha release are not working anymore (#896) machine-controller
must be updated to v1.14.0 or newer on existing clusters or otherwise newly created worker nodes will not work properly. Themachine-controller
can be updated on one of the following ways:- (Recommended) Run
kubeone upgrade -f
with the exact same config that's currently running - Run
kubeone install
with the exact same config that's currently running - Update the
machine-controller
andmachine-controller-webhook
deployments manually
- (Recommended) Run
- This release introduces the new KubeOneCluster v1beta1 API. The v1alpha1 API has been deprecated.
- It remains possible to use both APIs with all
kubeone
commands - The v1alpha1 manifest can be converted to the v1beta1 manifest using the
kubeone config migrate
command - All example configurations have been updated to the v1beta1 API
- It remains possible to use both APIs with all
Known Issues
- The
docker-ce-cli
package is not put on hold after it's installed. Upgrading thedocker-ce-cli
package would render the Kubernetes cluster unusable because of the version mismatch between Docker daemon and CLI. It's highly recommended to upgrade to KubeOne v1.0.0-alpha.3. - If you already provisioned a cluster using the v1.0.0-alpha.2 release, please hold the
docker-ce-cli
package to prevent it from being upgraded:- Ubuntu: run the following command over SSH on all control plane instances:
sudo apt-mark hold docker-ce-cli
- CentOS: we've started using
yum versionlock
to handle package locks. The best way to set it up on your control plane instances is to runkubeone upgrade -f
with the exact same config that's currently running.
- Ubuntu: run the following command over SSH on all control plane instances:
- The CoreOS cluster provisioning has been broken in this release due to the incorrect formatted Kubelet service file. This issue has been fixed in the v1.0.0-alpha.4 release.
Added
- Add the KubeOneCluster v1beta1 API (#894)
- Implemented automated conversion between v1alpha1 and v1beta1 APIs. It remains possible to use all
kubeone
commands with both v1alpha1 and v1beta1 manifests, however, migration to the v1beta1 manifest is recommended - Implement the Terraform integration for the v1beta1 API. Currently, the Terraform integration output format is the same for both APIs, but that might change in the future
- The kubeone config migrate command has been refactored to migrate v1alpha1 to v1beta1 manifests. The manifest is now provided using the --manifest flag instead of providing it as an argument. It's not possible to convert pre-v0.6.0 manifest to v1alpha1 anymore
- The example configurations are updated to the v1beta1 API
- Drop the leading 'v' in the Kubernetes version if it's provided. This fixes a bug causing provisioning to fail if the Kubernetes version starts with 'v'
- Implemented automated conversion between v1alpha1 and v1beta1 APIs. It remains possible to use all
Changed
General
- Fix the cluster provisioning issues caused by
docker-ce-cli
version mismatch (#896) - Fix CoreOS/Flatcar provisioning issues for Kubernetes 1.18 (#895)
Updated
- Update machine-controller to v1.14.0 (#899)
Checksums
SHA256 checksums can be found in the kubeone_1.0.0-alpha.2_checksums.txt
file.
v1.0.0-alpha.1
The KubeOne documentation has been migrated from GitHub to the new KubeOne docs website. Checkout the new website to find out how to get started with KubeOne.
Attention Needed
- The KubeOneCluster manifest (config file) is now provided using the
--manifest
flag, such askubeone install --manifest config.yaml
. Providing it as an argument will result in an error - RHSMOfflineToken has been removed from the CloudProviderSpec. This and other relevant fields are now located in the OperatingSystemSpec
- Packet Cloud Controller Manager (CCM) has been updated to v1.0.0. This update fixes the issue preventing users to provision new Packet clusters
Added
- Initial support for Flatcar Linux (#879)
- Currently, Flatcar Linux is supported only on AWS worker nodes
- Support for vSphere resource pools (#883)
- Support for Azure AZs (#883)
- Support for Flexvolumes on CoreOS and Flatcar (#885)
- Automatic cluster repairs (#888)
- Detect and delete broken etcd members
- Detect and delete outdated corev1.Node objects
Changed
General
- [Breaking] Replace positional argument for the config file with the global
--manifest
flag (#880)- The default value for the
--manifest
flag iskubeone.yaml
- The default value for the
- Ignore etcd data if it is present on the control plane nodes (#874)
- This allows clusters to be restored from a backup
Bug Fixes
- Fix CoreOS host architecture detection (#882)
Updated
- Update machine-controller to v1.13.1 (#885)
- Update Packet Cloud Controller Manager (CCM) to v1.0.0 (#884)
Removed
- Remove RHSMOfflineToken from the CloudProviderSpec (#883)
- RHSM settings are now located in the OperatingSystemSpec
Checksums
SHA256 checksums can be found in the kubeone_1.0.0-alpha.1_checksums.txt
file.
v1.0.0-alpha.0
Check out the documentation for this release to find out how to get started with KubeOne.
Added
- Add support for OpenStack external cloud controller manager (CCM) (#820)
- Add
Untaint
API field to remove default taints from the control plane nodes (#823) - Add the
PodPresets
feature (#837) - Add ability to provision static worker nodes (#834)
- Add ability to use an external CNI plugin (#862)
- Add ability to skip cluster provisioning when running the
install
command using the--no-init
flag (#871)
Changed
General
- machine-controller and machine-controller-webhook are bound to the control plane nodes (#832)
Bug Fixes
- Apply only addons with
.yaml
,.yml
and.json
extensions (#873)
Updated
Checksums
SHA256 checksums can be found in the kubeone_0.x.y_checksums.txt
file.
v0.11.1
Check out the documentation for this release to find out how to get started with KubeOne.
Added
- Add support for Kubernetes 1.18 (#841)
Changed
Bug Fixes
- Ensure machine-controller CRDs are Established before deploying MachineDeployments (#824)
- Fix
leader_ip
parsing from Terraform (#819)
Updated
- Update machine-controller to v1.11.1 (#808)
- NodeCSRApprover controller is enabled by default to automatically approve CSRs for kubelet serving certificates
- machine-controller types are updated to include recently added fields
- Terraform example scripts are updated with the new fields
Checksums
SHA256 checksums can be found in the kubeone_0.11.1_checksums.txt
file.
v0.11.0
Check out the documentation for this release to find out how to get started with KubeOne.
Changelog since v0.11.0-beta.3
For full changelog, please see the CHANGELOG.md
file.
Added
- Add support for ARM64 clusters (#783)
- Add ability to deploy Kubernetes manifests on the provisioning time (KubeOne Addons) (#782)
Changed
General
- The KubeOneCluster manifests is now parsed strictly (#802)
- The leader instance can be defined declarative using API (#790)
Bug Fixes
- Fix CentOS cluster provisioning (#770)
- Disable validation of replicas count in the workers definition (#775)
- Fix
apt
config file generation when proxy is enabled (#791) - Fix AWS shared credentials file handling (#806)
Updates
- Update machine-controller to v1.9.0 (#774)
Checksums
SHA256 checksums can be found in the kubeone_0.11.0_checksums.txt
file.
v0.11.0-beta.3
Check out the documentation for this release to find out how to get started with KubeOne.
Attention Needed
- Kubernetes 1.14 clusters are not supported as of this release because 1.14 isn't supported by the upstream anymore
- It remains possible and is advisable to upgrade 1.14 clusters to 1.15
- Currently, it also remains possible to provision 1.14 clusters, but that can be dropped at any time and it'll not be fixed if it stops working
- As of this release, it is not possible to upgrade 1.13 clusters to 1.14
- Please use an older version of KubeOne in the case you need to upgrade 1.13 clusters
Changelog since v0.11.0-beta.0
For full changelog, please see the CHANGELOG.md
file.
Added
- Add support for Kubernetes 1.17
- Fix cluster upgrade failures when upgrading from 1.16 to 1.17 (#764)
- Persist configured proxy in the system package managers (#749)
Changed
Bug Fixes
- Proxy settings defined in the config have precedence over those defined in Terraform (#760)
- Fix
kubeone status
reporting wrongetcd
status when the hostname is not provided by Terraform or config (#753)
Removed
- Remove ability to upgrade 1.13 clusters to 1.14 (#764)
- Removed FlexVolume support from the Canal CNI (#756)
Checksums
SHA256 checksums can be found in the kubeone_0.11.0-beta.3_checksums.txt
file.
v0.11.0-beta.0
Check out the documentation for this release to find out how to get started with KubeOne.
Attention Needed
- The AWS Terraform configuration has been refactored a in backward-incompatible way (#729)
- Terraform now handles setting up subnets
- All resources are tagged ensuring all cluster features offered by AWS CCM are supported
- The security of the setup has been increased
- Access to nodes and the Kubernetes API is now going over a bastion host
- The
aws-private
configuration has been removed - Check out the new Terraform configuration for more details
Added
- Add the
kubeone status
command which checks the health of the cluster, API server andetcd
(#734) - Add support for NodeLocalDNSCache (#704)
- Add ability to divert access to the Kubernetes API over SSH tunnel (#714)
- Add support for sourcing proxy settings from Terraform output (#698)
Changed
General
- [Breaking] The AWS Terraform configuration has been refactored (#729)
- Make vSphere Cloud Controller Manager read credentials from a Secret instead from
cloud-config
(#724)
Bug fixes
- Fix credentials handling if
.cloudProvider.Name
isnone
(#696) - Fix upgrades not determining hostname correctly causing upgrades to fail (#708)
- Fix
kubeone reset
failing to reset the cluster (#727) - Fix
configure-cloud-routes
bug for AWS causingkube-controller-manager
to log warnings (#725)
Updates
- Update machine-controller to v1.8.0 (#736)
- Update Canal CNI to v3.10 (#718)
- Update metrics-server to v0.3.6 (#720)
- Update DigitalOcean Cloud Controller Manager to v0.1.21 (#722)
- Update Hetzner Cloud Controller Manager to v1.5.0 (#726)
Docs
- GCE clusters must be configured as Regional to work properly (#732)
Checksums
SHA256 checksums can be found in the kubeone_0.11.0-beta.0_checksums.txt
file.
v0.10.0
Check out the documentation for this release to find out how to get started with KubeOne.
We have a new Slack channel on Kubernetes Slack! Join #kubeone
if you want to stay in touch with the KubeOne community and the latest development news.
Attention Needed
- Kubernetes 1.13 clusters are not supported as of this release because 1.13 isn't supported by the upstream anymore
- It remains possible to upgrade 1.13 clusters to 1.14 and is strongly advised
- Currently, it also remains possible to provision 1.13 clusters, but that can be dropped at any time and it'll not be fixed if it stops working
- KubeOne now uses Go modules! 🎉 (#550)
- This should not introduce any breaking changes
- If you're using
go get
to obtain KubeOne, you have to enable support for Go modules by setting theGO111MODULE
environment variable toon
- You can obtain KubeOne v0.10.0 using the following
go get
command:go get github.com/kubermatic/kubeone@v0.10.0
Known Issues
kubectl scale
is not working withkubectl
v1.15 to due an upstream issue. Please upgrade tokubectl
v1.16 if you want to use thekubectl scale
command.
Changelog since v0.10.0-alpha.3
For full changelog, please see the CHANGELOG.md
file.
Added
- Add support for Kubernetes 1.16
- Add support for sourcing credentials and
cloud-config
file from a YAML file (#623, #641) - Add the
StaticAuditLog
feature used to configure the audit log backend (#631) - Add
SystemPackages
API field used to control configuration of repositories and packages (#670) - Add ability to apply labels on the Node object using the
.workers.providerSpec.Labels
field (#677) - Add ability to apply taints on the worker nodes using the
.workers.providerSpec.Taints
field (#678) - Add an optional
TrustDevicePath
field to the worker spec for OpenStack (#686) - Add optional
BillingCycle
andTags
fields to the worker spec for Packet (#686) - Add ability to use AWS spot instances for worker nodes using the
isSpotInstance
field (#686) - Add support for Hetzner Private Networking (#596)
- Add
ShortNames
andAdditionalPrinterColumns
for Cluster-API CRDs (#689)
Changed
Bug Fixes
- Fix
kubeone install
andkubeone upgrade
generatingv1beta1
instead ofv1beta2
kubeadm
configuration file for 1.15 and 1.16 clusters (#670) - Fix
kubeone reset
not retrying deleting worker nodes on error (#639) - Fix
kubeone reset
not skipping deleting worker nodes if themachine-controller
CRDs are not deployed (#683)
Updates
- Update
machine-controller
to v1.5.7 (#682)
Proxy
- Write proxy configuration to the
/etc/environment
file (#687, #688) - Fix proxy configuration file (
/etc/kubeone/proxy-env
) generation (#650) - Fix
machine-controller
andmachine-controller-webhook
deployments not receiving the proxy configuration (#657)
Checksums
SHA256 checksums can be found in the kubeone_0.10.0_checksums.txt
file.
v0.10.0-alpha.3
Check out the documentation for this release to find out how to get started with KubeOne.
Changed
- Update
machine-controller
to v1.5.3 (#633)
Checksums
SHA256 checksums can be found in the kubeone_0.10.0-alpha.3_checksums.txt
file.
v0.10.0-alpha.2
Check out the documentation for this release to find out how to get started with KubeOne.
Changed
- Fix cluster provisioning failures when DynamicAuditLog feature is enabled (#630)
- Update
machine-controller
to v1.5.2 (#624)
Removed
- Remove
TemplateNetName
field from the vSphere workers spec (#624) - Remove the old KubeOne configuration API (#626)
Checksums
SHA256 checksums can be found in the kubeone_0.10.0-alpha.2_checksums.txt
file.