cloud-provider-azure

module
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 4, 2021 License: Apache-2.0

README

Cloud provider for Azure

Go Report Card GitHub stars GitHub stars

Introduction

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.

Current status

cloud-provider-azure is under Beta stage 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:v0.7.0
  • mcr.microsoft.com/oss/kubernetes/azure-cloud-node-manager:v0.7.0

Version matrix:

Kubernetes version cloud-provider version cloud-provider branch
master N/A master
v1.20.x v0.7.0 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

Build azure-cloud-controller-manager with pure make:

make

or with bazel:

make bazel-build

Build docker image for azure-cloud-controller-manager:

IMAGE_REGISTRY=<registry> make image

Run

Run azure-cloud-controller-manager locally:

azure-cloud-controller-manager --cloud-provider=azure \
    --cluster-name=kubernetes \
    --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 \
    --v=2

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.

E2E tests

Please check the following documents for e2e tests:

Documentation

See kubernetes-sigs.github.io/cloud-provider-azure for more documentations.

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.

Directories

Path Synopsis
cmd
cloud-controller-manager/app
Package app implements a server that runs a set of active components.
Package app implements a server that runs a set of active components.
hack
pkg
auth
Package auth provides a general library to authorize Azure ARM clients.
Package auth provides a general library to authorize Azure ARM clients.
azureclients
Package clients contains a set of Azure ARM clients.
Package clients contains a set of Azure ARM clients.
azureclients/armclient
Package armclient implements the client for ARM.
Package armclient implements the client for ARM.
azureclients/armclient/mockarmclient
Package mockarmclient implements the mock client for ARM.
Package mockarmclient implements the mock client for ARM.
azureclients/containerserviceclient
Package containerserviceclient implements the client for azure container service.
Package containerserviceclient implements the client for azure container service.
azureclients/containerserviceclient/mockcontainerserviceclient
Package mockcontainerserviceclient implements the mock client for azure container service.
Package mockcontainerserviceclient implements the mock client for azure container service.
azureclients/deploymentclient
Package deploymentclient implements the client for azure deployments.
Package deploymentclient implements the client for azure deployments.
azureclients/deploymentclient/mockdeploymentclient
Package mockdeploymentclient implements the mock client for azure deployments.
Package mockdeploymentclient implements the mock client for azure deployments.
azureclients/diskclient
Package diskclient implements the client for Disks.
Package diskclient implements the client for Disks.
azureclients/diskclient/mockdiskclient
Package mockdiskclient implements the mock client for Disks.
Package mockdiskclient implements the mock client for Disks.
azureclients/fileclient
Package fileclient implements the client for azure file.
Package fileclient implements the client for azure file.
azureclients/fileclient/mockfileclient
Package mockfileclient implements the mock client for azure file.
Package mockfileclient implements the mock client for azure file.
azureclients/interfaceclient
Package interfaceclient implements the client for network interfaces.
Package interfaceclient implements the client for network interfaces.
azureclients/interfaceclient/mockinterfaceclient
Package mockinterfaceclient implements the mock client for network interfaces.
Package mockinterfaceclient implements the mock client for network interfaces.
azureclients/loadbalancerclient
Package loadbalancerclient implements the client for LoadBalancer.
Package loadbalancerclient implements the client for LoadBalancer.
azureclients/loadbalancerclient/mockloadbalancerclient
Package mockloadbalancerclient implements the mock client for LoadBalancer.
Package mockloadbalancerclient implements the mock client for LoadBalancer.
azureclients/publicipclient
Package publicipclient implements the client for PublicIPAddress.
Package publicipclient implements the client for PublicIPAddress.
azureclients/publicipclient/mockpublicipclient
Package mockpublicipclient implements the mock client for PublicIPAddress.
Package mockpublicipclient implements the mock client for PublicIPAddress.
azureclients/routeclient
Package routeclient implements the client for Route.
Package routeclient implements the client for Route.
azureclients/routeclient/mockrouteclient
Package mockrouteclient implements the mock client for Route.
Package mockrouteclient implements the mock client for Route.
azureclients/routetableclient
Package routetableclient implements the client for RouteTable.
Package routetableclient implements the client for RouteTable.
azureclients/routetableclient/mockroutetableclient
Package mockroutetableclient implements the mock client for RouteTable.
Package mockroutetableclient implements the mock client for RouteTable.
azureclients/securitygroupclient
Package securitygroupclient implements the client for SecurityGroups.
Package securitygroupclient implements the client for SecurityGroups.
azureclients/securitygroupclient/mocksecuritygroupclient
Package mocksecuritygroupclient implements the mock client for SecurityGroups.
Package mocksecuritygroupclient implements the mock client for SecurityGroups.
azureclients/snapshotclient
Package snapshotclient implements the client for Snapshots.
Package snapshotclient implements the client for Snapshots.
azureclients/snapshotclient/mocksnapshotclient
Package mocksnapshotclient implements the mock client for Snapshots.
Package mocksnapshotclient implements the mock client for Snapshots.
azureclients/storageaccountclient
Package storageaccountclient implements the client for StorageAccounts.
Package storageaccountclient implements the client for StorageAccounts.
azureclients/storageaccountclient/mockstorageaccountclient
Package mockstorageaccountclient implements the mock client for StorageAccounts.
Package mockstorageaccountclient implements the mock client for StorageAccounts.
azureclients/subnetclient
Package subnetclient implements the client for Subnet.
Package subnetclient implements the client for Subnet.
azureclients/subnetclient/mocksubnetclient
Package mocksubnetclient implements the mock client for Subnet.
Package mocksubnetclient implements the mock client for Subnet.
azureclients/vmclient
Package vmclient implements the client for VirtualMachines.
Package vmclient implements the client for VirtualMachines.
azureclients/vmclient/mockvmclient
Package mockvmclient implements the mock client for VirtualMachines.
Package mockvmclient implements the mock client for VirtualMachines.
azureclients/vmsizeclient
Package vmsizeclient implements the client for VirtualMachineSizes.
Package vmsizeclient implements the client for VirtualMachineSizes.
azureclients/vmsizeclient/mockvmsizeclient
Package mockvmsizeclient implements the mock client for VirtualMachineSizes.
Package mockvmsizeclient implements the mock client for VirtualMachineSizes.
azureclients/vmssclient
Package vmssclient implements the client for VMSS.
Package vmssclient implements the client for VMSS.
azureclients/vmssclient/mockvmssclient
Package mockvmssclient implements the mock client for VMSS.
Package mockvmssclient implements the mock client for VMSS.
azureclients/vmssvmclient
Package vmssvmclient implements the client for VirtualMachineScaleSetVM.
Package vmssvmclient implements the client for VirtualMachineScaleSetVM.
azureclients/vmssvmclient/mockvmssvmclient
Package mockvmssvmclient implements the mock client for VirtualMachineScaleSetVM.
Package mockvmssvmclient implements the mock client for VirtualMachineScaleSetVM.
cache
Package cache is an implementation of Azure caches.
Package cache is an implementation of Azure caches.
metrics
Package metrics is an implementation of Azure CloudProvider metrics.
Package metrics is an implementation of Azure CloudProvider metrics.
provider
Package azure is an implementation of CloudProvider Interface, LoadBalancer and Instances for Azure.
Package azure is an implementation of CloudProvider Interface, LoadBalancer and Instances for Azure.
retry
Package retry defines a general library to handle errors and retries for various Azure clients.
Package retry defines a general library to handle errors and retries for various Azure clients.
version
Package version supplies version information collected at build time to kubernetes components.
Package version supplies version information collected at build time to kubernetes components.
version/verflag
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
azclient Module
tests

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL