GitPedia

Cloud provider azure

Cloud provider for Azure

From kubernetes-sigs·Updated June 25, 2026·View on GitHub·

This repository provides the Azure implementation of the Kubernetes cloud provider [interface](https://github.com/kubernetes/cloud-provider). The project is written primarily in Go, distributed under the Apache License 2.0 license, first published in 2018. Key topics include: azure, cloud-providers, k8s-sig-cloud-provider, kubernetes.

Latest release: v1.36.2
June 17, 2026View Changelog →

Cloud provider for Azure

Go Report Card
Coverage Status
GitHub stars
GitHub stars

Introduction

This repository provides the Azure implementation of the Kubernetes cloud provider interface.

This is the "external" or "out-of-tree" cloud provider for Azure. The "in-tree" cloud provider has been deprecated since v1.20 and only bug fixes are allowed in its Kubernetes repository directory.

Current status

cloud-provider-azure has been GA since v1.0.0. Releases are available from the Microsoft Container Registry (MCR).

The latest release of azure-cloud-controller-manager and azure-cloud-node-manager can be found at

  • mcr.microsoft.com/oss/v2/kubernetes/azure-cloud-controller-manager:v1.34.3
  • mcr.microsoft.com/oss/v2/kubernetes/azure-cloud-node-manager:v1.34.3

Version matrix

(Minor release versions match Kubernetes minor release versions.)

Kubernetes versioncloud-provider versioncloud-provider branch
masterN/Amaster
v1.y.xv1.y.zrelease-1.y
v1.33.xv1.33.zrelease-1.33
v1.32.xv1.32.zrelease-1.32
v1.31.xv1.31.zrelease-1.31
v1.30.xv1.30.zrelease-1.30
v1.29.xv1.29.zrelease-1.29
v1.28.xv1.28.zrelease-1.28

AKS version matrix

The table below shows the cloud-controller-manager and cloud-node-manager versions supported in Azure Kubernetes Service (AKS).

AKS versioncloud-controller-manager versioncloud-node-manager version
v1.33.xv1.33.1v1.33.0
v1.32.xv1.32.6v1.32.5
v1.31.xv1.31.7v1.31.6
v1.30.xv1.30.13v1.30.12
v1.29.xv1.29.15v1.29.15
v1.28.xv1.28.14v1.28.14
v1.27.xv1.27.21v1.27.20

Build

To build the binary for azure-cloud-controller-manager:

sh
make all

To build the Docker image for azure-cloud-controller-manager:

sh
IMAGE_REGISTRY=<registry> make image

For detailed directions on image building, please read here.

Run

To run azure-cloud-controller-manager locally:

sh
azure-cloud-controller-manager \ --cloud-provider=azure \ --cluster-name=kubernetes \ --controllers=*,-cloud-node \ --cloud-config=/etc/kubernetes/cloud-config/azure.json \ --kubeconfig=/etc/kubernetes/kubeconfig \ --allocate-node-cidrs=true \ --configure-cloud-routes=true \ --cluster-cidr=10.240.0.0/16 \ --route-reconciliation-period=10s \ --leader-elect=true \ --secure-port=10267 \ --v=2

To run azure-cloud-node-manager locally:

sh
azure-cloud-node-manager \ --node-name=$(hostname) \ --wait-routes=true

It is recommended to run azure-cloud-controller-manager as a Deployment with multiple replicas, or directly with kubelet as static Pods on each control plane Node. See here for an example.

Get more detail at Deploy Cloud Controller Manager.

E2E tests

Please read the following documents for e2e test information:

Documentation

Refer https://cloud-provider-azure.sigs.k8s.io/ for the documentation of Cloud Provider Azure (documents are hosted in documentation branch).

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.

License

Apache License 2.0.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from kubernetes-sigs/cloud-provider-azure via the GitHub API.Last fetched: 6/28/2026