v0.22.0
ATTN: 🚀
The big reveal with this release is 1st class AKS-curated golden OS images during provisioning (Azure Public Cloud only for now). This means:
-
major reduction in transient vm deployment errors due to external I/O dependencies (e.g.,
k8s.gcr.io
)- observational error rate reduction from 0.1% to 0.001% for vm provisioning due to runtime paving
-
major reduction in median cluster deployment time
- from ~6 minutes to ~4 minutes for a "small" (3 nodes) VMSS-backed cluster
- from ~15 minutes to ~7 minutes for a "large" (55 nodes) VMSS-backed cluster
-
PRs #3708 #3718 #3720 #3724 #3721 #3742 #3764 #3784 #3801 #3809 #3819 #3826 #3844 #3849 #3862 (@CecileRobertMichon @jackfrancis) tells the tale
Additionally a notable change is a reduction in k8s versions that can be used to create new clusters. Going forward we will allow 2 (most commonly the 2 most recent) patch versions for each k8s minor release train in a set of Kubernetes minor releases. For now that set is 1.7 through 1.11 (1.12 pre-dot-zero releases are also offered). This has no effect on pre-existing clusters, which can be scaled without regard to whether or not they are running a specific version of k8s in the list of versions that are enabled for creation; and those clusters are also able to be upgraded at any time to any of the versions in the new reduced versions set.
- PR #3750 (@CecileRobertMichon) tells the tale
FEATURES: 🌈
- Kubernetes 1.11.3 (PR #3823 @mboersma)
- Kubernetes 1.12.0-beta.1 (PR #3825 @jackfrancis)
- Availability zone support for Kubernetes 1.12+ (PRs #3453 @sozercan)
- Add k8s health monitor script for docker and kubelet (PRs #3782 #3817 @mboersma)
- Azure CNI v1.0.11 for both Linux and Windows (PR #3722 @jackfrancis)
- Support for kubernetes clusters with user assigned MSI (PR #3736 @kkmsft)
- Update to go-autorest v10.15.4 (PR #3843 @ultimateboy)
- Update keyvault-flexvol image and default to enabled (PR #3841 @ritazh)
- Enable user-configurable addons manifests (PR #3840 @tariq1890)
Caveat: This change introduces a minor change in addons if duplicate addon names are found. With this change, the first (as opposed to the last one in previous releases) add-on of the list of add-ons with duplicate addon names will end up being selected. Although acs-engine accepts multiple add-ons with the same name, this practice is highly discouraged and we recommend that you sanitize your apimodel to include only unique add-on names.
BUGS FIXED: 🐞
- Create kube manifest dirs on node provision. (PR #3744 @tariq1890)
- Enable pod priority for kubelet by default (PR #3743 @chengliangli0918)
- Check for nil before using osPublisher (PR #3768 @cherwin)
- Fix kubeletConfig for Windows agent nodes (PR #3753 @PatrickLang)
- add missing apimodel cli parameter description (PR #3775 @serbrech)
- Remove etcd binaries from agent VMs (PR #3793 @tariq1890)
- Windows nodes not working with kubenet plugin (PR #3800 @PatrickLang)
- Remove deprecated method calls in kubeclient (PR #3805 @tariq1890)
- Fix version deprecation validation for VMSS and windows clusters (PR #3818 @tariq1890)
- Only enable aggregated api if rbac != disabled (PR #3813 @jackfrancis)
- Removing code duplication in addon logic (PR #3832 @tariq1890)
DEV IMPROVEMENTS/CHORES: 🔧
- Minor if else optimization in the kubernetes base template (PR #3758 @tariq1890)
- Layer
ADD source-code
prior tomake bootstrap
layer in Dockerfile (PR #3767 @ashish-amarnath) - Using dep 0.5.0 and adding dep check to the CI/CD cycle (PR #3709 @tariq1890)
- Make cmd more testable by abstracting authArgs and AzureClient (PR #3756 @serbrech)
- Store Azure CNI version in api model (PR #3804 @jackfrancis)
- Enable "gosimple" linter plugin (PR #3802 @mboersma)
- Update to go 1.11 and fix new linting errors (PR #3763 @mboersma)
- Docs updates!
- Ingress routing in mixed OS cluster (PR #3734 @PatrickLang)
- Fix swapped username/password in Windows tutorial (PR #3761 @PatrickLang)
- Documentation for Container monitoring addon (PR #3735 @rashmichandrashekar)
- Update go prerequisite to 1.11 and add links (PR #3838 @mboersma)
- CI/E2E maintenance/improvements!