Skip to content

Releases: kubernetes-sigs/cluster-api-provider-azure

v1.0.1

29 Nov 22:32
ad0a7a8
Compare
Choose a tag to compare

Changes by Kind

Bug or Regression

Dependencies

Added

Nothing has changed.

Changed

  • sigs.k8s.io/cluster-api/test: v1.0.0 → v1.0.1
  • sigs.k8s.io/cluster-api: v1.0.0 → v1.0.1
  • sigs.k8s.io/controller-runtime: v0.10.2 → v0.10.3

Removed

Nothing has changed.

v1.0.0

02 Nov 17:04
8b24810
Compare
Choose a tag to compare

Welcome to v1.0 / v1beta1, The production-ready release. This release follows the v1.0 release of Cluster API and is compatible with Cluster API v1beta1 types.

Read the CNCF blog post announcement to learn more about the experience of companies using Cluster API in production.

Changes by Kind

API Change

  • Audit API to follow CAPI conventions: all fields using omitempty have the +optional marker, Future.Data is now required. (#1781, @CecileRobertMichon)
  • Update api types to v1beta1 (#1740, @shysank)

Feature

  • Add functionality to peer a new VNet with an existing VNet in cluster deployment (#1694, @Jont828)
  • Windows Containerd support using Calico and HostProcess (#1672, @jsturtevant)
  • Add machine set support for availability sets (#1774, @alexander-demichev)
  • AzureMachineTemplate now supports propagation to AzureMachine for metadata fields (labels and annotations) (#1776, @jsturtevant)
  • Allow user to specify agent pool name in AMMP spec (instead of relying on the CR name in metadata) (#1742, @richardchen331)

Bug or Regression

  • Add conversion support for AzureMachinePoolMachine for v1alpha4 <=> v1beta1 (#1799, @devigned)
  • Fix resource group not getting updated if tags are added (#1721, @karuppiah7890)
  • Fix default diff issue when upgrading clusters from v1alpha3 to v1beta1 (#1771, @shysank)

Other (Cleanup or Flake)

Documentation

  • Docs: Add links to supported versions in quickstart (#1785, @dtzar)

Dependencies

Added

  • github.com/certifi/gocertifi: 2c3bb06
  • github.com/cockroachdb/errors: v1.2.4
  • github.com/cockroachdb/logtags: eb05cc2
  • github.com/getsentry/raven-go: v0.2.0
  • github.com/golang-jwt/jwt/v4: v4.0.0
  • github.com/josharian/intern: v1.0.0
  • github.com/opentracing/opentracing-go: v1.1.0
  • github.com/sagikazarmark/crypt: v0.1.0
  • go.etcd.io/etcd/pkg/v3: v3.5.0
  • go.etcd.io/etcd/raft/v3: v3.5.0
  • go.etcd.io/etcd/server/v3: v3.5.0
  • go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc: v0.20.0
  • go.opentelemetry.io/otel/exporters/otlp: v0.20.0
  • go.opentelemetry.io/otel/oteltest: v0.20.0
  • google.golang.org/grpc/cmd/protoc-gen-go-grpc: v1.1.0

Changed

Read more

v1.0.0-rc.0

29 Oct 00:49
2955024
Compare
Choose a tag to compare
v1.0.0-rc.0 Pre-release
Pre-release

🚨 This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.

v0.5.3

04 Oct 20:30
7f78c7b
Compare
Choose a tag to compare

Urgent Upgrade Notes

(No, really, you MUST read this before you upgrade)

  • Disable egress load balancer for AzureMachines when AllocatePublicIP is set to true.

    Action required: After you delete an AzureMachine created with a previous version with AllocatePublicIP set to true, you might want to manually clean up the Network Interface named <azuremachine name>-public-nic. (#1676, @whites11)

Changes by Kind

Deprecation

Feature

Bug or Regression

  • Assign all azs to public ip for backwards compatibility (#1744, @shysank)
  • Fixed wiring for AzureMachinePool's terminateNotificationTimeout field. (#1677, @whites11)
  • CAPZ will launch AKS with all the node pools defined including both system and user node pools. (#1741, @meixingdb)

Other (Cleanup or Flake)

Dependencies

Added

Nothing has changed.

Changed

  • github.com/onsi/gomega: v1.14.0 → v1.15.0
  • go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.22.0 → v0.23.0
  • go.opentelemetry.io/contrib: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.0.0-RC2 → v1.0.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.0.0-RC2 → v1.0.0
  • go.opentelemetry.io/otel/exporters/prometheus: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/internal/metric: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/metric: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/sdk/export/metric: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/sdk/metric: v0.22.0 → v0.23.0
  • go.opentelemetry.io/otel/sdk: v1.0.0-RC2 → v1.0.0
  • go.opentelemetry.io/otel/trace: v1.0.0-RC2 → v1.0.0
  • go.opentelemetry.io/otel: v1.0.0-RC2 → v1.0.0
  • go.uber.org/zap: v1.18.1 → v1.19.0
  • golang.org/x/sys: 0f9fa26 → bfb29a6
  • google.golang.org/grpc: v1.39.0 → v1.40.0
  • k8s.io/api: v0.21.3 → v0.21.4
  • k8s.io/apiextensions-apiserver: v0.21.3 → v0.21.4
  • k8s.io/apimachinery: v0.21.3 → v0.21.4
  • k8s.io/apiserver: v0.21.3 → v0.21.4
  • k8s.io/cli-runtime: v0.21.3 → v0.21.4
  • k8s.io/client-go: v0.21.3 → v0.21.4
  • k8s.io/cluster-bootstrap: v0.21.2 → v0.21.4
  • k8s.io/code-generator: v0.21.3 → v0.21.4
  • k8s.io/component-base: v0.21.3 → v0.21.4
  • k8s.io/component-helpers: v0.21.3 → v0.21.4
  • k8s.io/kubectl: v0.21.3 → v0.21.4
  • k8s.io/metrics: v0.21.3 → v0.21.4
  • k8s.io/utils: 7f3ee0f → efc7438
  • sigs.k8s.io/apiserver-network-proxy/konnectivity-client: v0.0.19 → v0.0.22
  • sigs.k8s.io/cluster-api/test: v0.4.1 → v0.4.3
  • sigs.k8s.io/cluster-api: v0.4.1 → v0.4.3
  • sigs.k8s.io/controller-runtime: v0.9.6 → v0.9.7

Removed

  • go.opentelemetry.io/otel/oteltest: v1.0.0-RC2

Thanks to all our contributors! 😊

v0.5.2

24 Aug 22:25
6029a88
Compare
Choose a tag to compare

Changes by Kind

Feature

  • Add 'x-ms-correlation-id' headers to all Azure API calls via distributed traces. (#1460, @arschles) [SIG Cluster Lifecycle]
  • Adds ability to run Windows Kubernetes e2e tests against CI and PR artifacts (#1388, @jsturtevant) [SIG Cluster Lifecycle]
  • Allow for using SP Identity directly embedded in a secret without relying on aad pod identity (#1514, @shysank) [SIG Cluster Lifecycle]
  • Default Ubuntu to 20.04 for new k8s versions (#1508, @mboersma) [SIG Cluster Lifecycle]
  • Export traces to Jaeger and update OpenTelemetry (#1498, @mboersma) [SIG Cluster Lifecycle]
  • Spec aadProfile contains a Legacy Spec for legacy AAD support and Managed Spec for new/managed AAD support. (#1560, @LochanRn) [SIG Cluster Lifecycle]
  • Update cluster-api dependency to v0.4.1 (#1620, @nader-ziada) [SIG Cluster Lifecycle]
  • Update e2e tests to use k8s v1.22.1 (#1588, @nader-ziada) [SIG Cluster Lifecycle]
  • Updated Calico to v3.20.0 (#1603, @nader-ziada) [SIG Cluster Lifecycle]

Failing Test

  • Fix: update MINIMUM_KIND_VERSION to v0.10.0 (#1641, @feiskyer) [SIG Cluster Lifecycle]

Bug or Regression

  • Added missing watch filter label (#1625, @fiunchinho) [SIG Cluster Lifecycle]
  • Assign default outbound load balancers for v1alpha3 clusters (#1623, @shysank) [SIG Cluster Lifecycle]
  • Don't create outbound LB if using NatGateway (#1589, @jackfrancis) [SIG Cluster Lifecycle]
  • Fix AzureClusterIdentity conversion and add missing webhook (#1642, @nprokopic) [SIG Cluster Lifecycle]
  • Fix immutable error message for AzureEnvironment (#1631, @fiunchinho) [SIG Cluster Lifecycle]
  • Fix managed clusters custom VNet delete issue (#1598, @LochanRn) [SIG Cluster Lifecycle]
  • Lowercase AzureManagedMachinePool providerID (#1586, @Evalle) [SIG Cluster Lifecycle]
  • Return empty string for outbound LB name if there is no outbound LB configured (#1613, @shysank) [SIG Cluster Lifecycle]

Other (Cleanup or Flake)

  • Cloud: Refactor managed cluster scope to interface (#1582, @nprokopic) [SIG Cluster Lifecycle]
  • Cloud: Refactor managed machine pool (#1602, @nprokopic) [SIG Cluster Lifecycle]

Uncategorized

  • Cluster templates now use 8 GB of etcd db data (was 2 GB) (#1635, @jackfrancis) [SIG Cluster Lifecycle]
  • Fix DNS issues with VXLAN Calico when using AzureClusterIdentity (Updated Calico to v3.19.2) (#1583, @CecileRobertMichon) [SIG Cluster Lifecycle]
  • Update Azure compute API to 2021-04-01 (#1646, @jackfrancis) [SIG Cluster Lifecycle]
  • Update azure-sdk-for-go to v55.8.0 (#1643, @jackfrancis) [SIG Cluster Lifecycle]

Dependencies

Added

  • github.com/cenkalti/backoff/v4: v4.1.1
  • github.com/cncf/xds/go: fbca930
  • github.com/rivo/uniseg: v0.2.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.0.0-RC2
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.0.0-RC2
  • go.opentelemetry.io/otel/exporters/prometheus: v0.22.0
  • go.opentelemetry.io/otel/internal/metric: v0.22.0
  • go.opentelemetry.io/proto/otlp: v0.9.0

Changed

  • github.com/Azure/azure-sdk-for-go: v55.2.0+incompatible → v55.8.0+incompatible
  • github.com/apache/thrift: v0.13.0 → v0.12.0
  • github.com/aws/aws-sdk-go: v1.27.0 → v1.15.11
  • github.com/benbjohnson/clock: v1.0.3 → v1.1.0
  • github.com/envoyproxy/go-control-plane: 668b12f → 63b5d3c
  • github.com/felixge/httpsnoop: v1.0.1 → v1.0.2
  • github.com/go-kit/kit: v0.10.0 → v0.9.0
  • github.com/gorilla/mux: v1.7.3 → v1.7.2
  • github.com/hashicorp/consul/api: v1.3.0 → v1.1.0
  • github.com/hashicorp/consul/sdk: v0.3.0 → v0.1.1
  • github.com/jmespath/go-jmespath: c2b33e8 → bd40a43
  • github.com/mattn/go-runewidth: v0.0.9 → v0.0.13
  • github.com/onsi/gomega: v1.13.0 → v1.14.0
  • github.com/openzipkin/zipkin-go: v0.2.2 → v0.1.6
  • github.com/spf13/cobra: v1.1.3 → v1.2.1
  • github.com/spf13/viper: v1.8.0 → v1.8.1
  • go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.20.0 → v0.22.0
  • go.opentelemetry.io/contrib: v0.20.0 → v0.22.0
  • go.opentelemetry.io/otel/metric: v0.20.0 → v0.22.0
  • go.opentelemetry.io/otel/oteltest: v0.20.0 → v1.0.0-RC2
  • go.opentelemetry.io/otel/sdk/export/metric: v0.20.0 → v0.22.0
  • go.opentelemetry.io/otel/sdk/metric: v0.20.0 → v0.22.0
  • go.opentelemetry.io/otel/sdk: c99d5e9 → v1.0.0-RC2
  • go.opentelemetry.io/otel/trace: v0.20.0 → v1.0.0-RC2
  • go.opentelemetry.io/otel: v0.20.0 → v1.0.0-RC2
  • go.uber.org/zap: v1.17.0 → v1.18.1
  • golang.org/x/oauth2: d040287 → a41e5a7
  • golang.org/x/sys: ebe580a → 0f9fa26
  • golang.org/x/time: 38a9dc6 → 1f47c86
  • google.golang.org/grpc: v1.38.0 → v1.39.0
  • google.golang.org/protobuf: v1.26.0 → v1.27.1
  • k8s.io/api: v0.21.2 → v0.21.3
  • k8s.io/apiextensions-apiserver: v0.21.2 → v0.21.3
  • k8s.io/apimachinery: v0.21.2 → v0.21.3
  • k8s.io/apiserver: v0.21.2 → v0.21.3
  • k8s.io/cli-runtime: v0.21.2 → v0.21.3
  • k8s.io/client-go: v0.21.2 → v0.21.3
  • k8s.io/code-generator: v0.21.2 → v0.21.3
  • k8s.io/component-base: v0.21.2 → v0.21.3
  • k8s.io/component-helpers: v0.21.2 → v0.21.3
  • k8s.io/kubectl: v0.21.2 → v0.21.3
  • k8s.io/metrics: v0.21.2 → v0.21.3
  • k8s.io/utils: 6fdb442 → 7f3ee0f
  • sigs.k8s.io/cluster-api/test: v0.4.0 → v0.4.1
  • sigs.k8s.io/cluster-api: v0.4.0 → v0.4.1
  • sigs.k8s.io/controller-runtime: v0.9.1 → v0.9.6
  • sigs.k8s.io/structured-merge-diff/v4: v4.1.0 → v4.1.2

Removed

  • github.com/Knetic/govaluate: 9aa4983
  • github.com/VividCortex/gohistogram: v1.0.0
  • github.com/afex/hystrix-go: fa1af6a
  • github.com/aryann/difflib: e206f87
  • github.com/aws/aws-lambda-go: v1.13.3
  • github.com/aws/aws-sdk-go-v2: v0.18.0
  • github.com/casbin/casbin/v2: v2.1.2
  • github.com/cenkalti/backoff: v2.2.1+incompatible
  • github.com/clbanning/x2j: 8252494
  • github.com/codahale/hdrh...
Read more

v0.5.1

28 Jul 22:25
10e1f1d
Compare
Choose a tag to compare

Release notes for v0.5.1

Notable changes since v0.5.0

Changes by Kind

Feature

Documentation

Bug or Regression

  • Add user assigned identity to azurejson machinepool secret (#1542, @praveenghuge)
  • Fix nat gateway flavor Public IP not found error (#1527, @shysank)
  • Fix to ensure Azure Bastion resource and other cluster resources are deleted when resource group is not owned. (#1507, @devigned)
  • Fixes an issue with AzureManagedMachinePools not re-reconciling on updates to the corresponding MachinePool resources. (#1547, @alexeldeib)
  • Mode spec in the AzureManagedMachinePool is used to specify the mode of an agentPool i.e System or User.
    Removed defaultPoolRef from AzureManagedControlPlane. (#1520, @LochanRn)
  • Set role assignment name default for AzureMachinePools (#1539, @praveenghuge)
  • Webhook registration accepts both v1 and v1beta1 admissions (#1540, @Evalle)
  • Get Cloud Provider config Service Principal credentials from AzureClusterIdentity when not using Managed Identity (#1523, @CecileRobertMichon)
  • Consistent validation for AzureMachineTemplate and AzureMachine (#1516, @ykakarap)
  • Remove AzureClusterIdentity OwnerReference for AzureCluster on upgrade from v1alpha3 to v1alpha4 (#1550, @Ankitasw)

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

Thanks to all our contributors! 😊

v0.5.0

12 Jul 22:02
92c88f2
Compare
Choose a tag to compare

v0.5.0 (v1alpha4)

Cluster API support

This release supports the v1alpha4/v0.4.x version of Cluster API

Getting started

Quick start: https://cluster-api.sigs.k8s.io/user/quick-start.html

🔦 Highlights

Multi-tenancy

The capability to set credentials using environment variables is now deprecated and will be removed in future releases, the recommended approach is to use AzureClusterIdentity as explained here.

AzureMachinePool rolling upgrades

Introduced AzureMachinePool rolling upgrade strategy with cordon and drain which provides MaxSurge, MaxUnavailable, and DeletePolicy options modeled after MachineDeployments.

GPU nodes with NVIDIA operator

The “nvidia-gpu” flavor now uses the nvidia gpu-operator for installing and managing gpu components. gpu-operator is installed using a ClusterResourceSet.

Added Private Cluster flexibility

Ability to configure Node outbound, and Control Plane Outbound load balancer for private clusters providing the option to have more than one frontend IPs. This also provides the ability to disable the outbound load balancers for private clusters thereby reducing the number of components exposed to the internet.

Changelog since v0.4.15

⚠️ Breaking Changes

(No, really, you MUST read this before you upgrade)

  • Renamed AzureMachinePool, AzureManagedControlPlane, AzureManagedMachinePool, AzureManagedCluster api group to infrastructure.x-k8s.io:
    • The API group for AzureMachinePool, AzureManagedControlPlane, AzureManagedMachinePool, and AzureManagedCluster was renamed from exp.infrastructure.x-k8s.io to infrastructure.x-k8s.io. Previously created AzureMachinePool, AzureManagedControlPlane, AzureManagedMachinePool, AzureManagedCluster objects under the exp.infrastructure.x-k8s.io group are no longer supported and will not reconcile. In order to migrate your existing clusters using the experimental MachinePool and AKS features, it is recommended to either create a new cluster and migrate workloads, or migrate your existing MachinePool and ManagedCluster objects using a tool like Kubernetes CustomResourceDefinition Migration Tool. (#1389, @CecileRobertMichon)

Changes by Kind

✨ Feature

  • Add Azure machine pool rolling upgrades with MaxSurge, MaxUnavailable and DeletePolicy. (#1332, @devigned)
  • Add deprecation warning for using credentials from environment variables (#1477, @nader-ziada)
  • Added new field to SubnetSpec so that users can specify the Nat Gateway to use when creating subnets. (#1188, @fiunchinho)
  • Added support for using Azure Bastion to get console access to virtual machines in the cluster through the Azure Portal. (#1300, @whites11)
  • Allow using Marketplace images in AzureMachinePools.
    Allow using Shared Image Gallery images requiring a Plan in AzureMachines and AzureMachinePools. (#1469, @whites11)
  • Cordon and drain AzureMachinePoolMachines prior to delete or upgrade operations (#1435, @devigned)
  • Expose cloud provider backoff config (#1415, @Ankitasw)
  • Expose cloud provider rate limit config (#1373, @shysank)
  • Immutable validation for AzureMachine update (#1409, @shivi28)
  • Make LB IdleTimeoutInMinutes configurable (#1413, @CecileRobertMichon)
  • Make control plane outbound lb configurable (#1466, @shysank)
  • Multitenancy for managed clusters. (#1386, @shysank)
  • SinglePlacementGroup=false for Azure VMSS (MachinePool) (#1492, @jackfrancis)
  • Update aad-pod-identity to v1.8.0 which upgrades CRDs from apiextensions/v1beta1 to apiextensions/v1
  • Additional Tags for managed clusters (#1393, @LochanRn)
  • Make azure credentials optional in manager deployment (#1445, @CecileRobertMichon)
  • Update Windows VM naming to use the AzureMachine name as prefix (#1408, @CecileRobertMichon)
  • Change OSDisk.DiskSizeGB to be optional (#1398, @nader-ziada)
  • Added support for externally managed infrastructure (#1389, @CecileRobertMichon)

📖 Documentation

  • Add documentation for using Flannel as CNI (#1374, @lastcoolnameleft)
  • Fix broken link in docs after clusterctl changes (#1476, @fiunchinho)
  • Update the AzureMachinePool docs with deployment strategy, delete policy, and AzureMachinePoolMachine details. (#1459, @devigned)

🐛 Bug or Regression

  • AzureClusterIdentity should not have an owner reference of a Cluster (#1506, @nader-ziada)
  • Don't delete AzureIdentities from other Clusters (#1502, @CecileRobertMichon)
  • Fix deletion and speed up provisioning for CAPI clusters using AzureManagedCluster + AzureManagedControlPlane (AKS). (#1397, @alexeldeib)
  • Fix nil panic in AzureMachinePoolMachine scope when no node is found for the providerID (#1490, @devigned)
  • Make azure.json secret key backward compatible.
    *- This be removed in capz v0.6.x, and you should use the new control-plane-azure.json and worker-node-azure.json fields for configuring your clusters ** (#1405, @shysank)
  • Save subnet details back to scope when reconciling already existing subnets (#1401, @fiunchinho)

🔧 Other (Cleanup or Flake)

  • Improve error messaging around bootstrap extension provisioning (#1450, @CecileRobertMichon)
  • Make tilt watch relevant folders (#1489, @fiunchinho)
  • Update AzureFile and AzureDisk templates to v1 (#1379, @CecileRobertMichon)
  • Update OOT cloud-provider version and enable LB test (#1323, @CecileRobertMichon)
  • Update external cloud provider templates to v1.0 (#1486, @CecileRobertMichon)
  • Update release-notes version to v0.9.0
    Update controller tools to v0.6.1
    Update conversion gen to v0.21.2
    Update golangci-lint to v1.41.1
    Update mockgen to v1.6.0
    Update go apidiff to v0.1.0
    Update ginkgo to v1.16.4
    Update kustomize to v4.1.3 (#1467, @CecileRobertMichon)
  • Windows e2e tests from kubernetes are run against capz workl...
Read more

v0.4.15

19 May 20:35
v0.4.15
957858d
Compare
Choose a tag to compare

Release notes for v0.4.15

Notable changes since v0.4.14

Changes by Kind

Bug or Regression

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

Thanks to all our contributors! 😊

v0.4.14

14 Apr 16:00
30d294a
Compare
Choose a tag to compare

Release notes for v0.4.14

Notable changes since v0.4.13

Changes by Kind

Bug or Regression

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

v0.4.13

11 Mar 23:20
v0.4.13
091f469
Compare
Choose a tag to compare

Release notes for v0.4.13

Notable changes since v0.4.12

Changes by Kind

Bug Fix

  • Do not include VMSS customData in the hash tag calculation to correct a reconcile cycle caused when the bootstrap token refreshes. (#1197, @devigned)
  • Added omitempty option to the AzureMachinePool/Status/Instances field to avoid null errors when the field is not set. (1172, @whites11)
  • Remove hardcoded namespace value (#1209, @nader-ziada)
  • Do not add tags to managed resource group if err occurs (#1224, @LochanRn)
  • Ensure VM and VMSS extensions are applied once (#1217, @CecileRobertMichon)
  • Set OS type Linux for managed node pool when submitting Azure API request (#1175, @nprokopic)

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

Thanks to all our contributors! 😊