This repository provides Azure implementation of Kubernetes cloud provider interface. The in-tree cloud provider has been deprecated since v1.20 and only the bug fixes were allowed in the Kubernetes repository directory.
cloud-provider-azure
has been GA since v1.0.0 and its releases are maintained on Microsoft Container Registry (MCR).
The latest version of azure-cloud-controller-manager and azure-cloud-node-manager could be found at
mcr.microsoft.com/oss/kubernetes/azure-cloud-controller-manager:v1.23.1
mcr.microsoft.com/oss/kubernetes/azure-cloud-node-manager:v1.23.1
Version matrix:
Kubernetes version | cloud-provider version | cloud-provider branch | Notes |
---|---|---|---|
master | N/A | master | |
v1.23.x | v1.23.1 | release-1.23 | The release versions will match the k8s release versions since v1.23.0. |
v1.22.x | v1.1.4 | release-1.1 | |
v1.21.x | v1.0.8 | release-1.0 | |
v1.20.x | v0.7.11 | release-0.7 | |
v1.19.x | v0.6.0 | release-0.6 | |
v1.18.x | v0.5.1 | release-0.5 | |
v1.17.x | v0.4.1 | N/A | |
v1.16.x | v0.3.0 | N/A | |
v1.15.x | v0.2.0 | N/A |
Build binary for azure-cloud-controller-manager:
make all
Build docker image for azure-cloud-controller-manager:
IMAGE_REGISTRY=<registry> make image
More detailed directions for image building, please read here.
Run azure-cloud-controller-manager locally:
azure-cloud-controller-manager \
--cloud-provider=azure \
--cluster-name=kubernetes \
--controllers=*,-cloud-node \
--cloud-config=/etc/kubernetes/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 \
--port=10267 \
--v=2
Run azure-cloud-node-manager locally:
azure-cloud-node-manager \
--node-name=$(hostname) \
--wait-routes=true
It is recommended to run azure-cloud-controller-manager as Pods on master nodes. See here for the example.
Please checkout more details at Deploy Cloud Controller Manager.
Please check the following documents for e2e tests:
- Dependency management
- Cloud provider config
- Azure load balancer and annotations
- Azure permissions
- Azure availability zones
- Cross resource group nodes
- AzureDisk known issues
- AzureFile known issues
See kubernetes-sigs.github.io/cloud-provider-azure for more documentations.
Please see CONTRIBUTING.md for instructions on how to contribute.
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.