Available in editions:  CE, BE, SE, SE+, EE

The module lifecycle stageGeneral Availability

The cloud-provider-azure module integrates Deckhouse Kubernetes Platform with Microsoft Azure. It allows the node-manager module to use Azure resources when provisioning nodes for a NodeGroup.

Features of the cloud-provider-azure module:

  • Managing Azure resources via cloud-controller-manager:
    • creates network routes for the PodNetwork network on the Azure side;
    • creates load balancers for Services of the LoadBalancer type;
    • updates cluster node metadata and removes from Kubernetes nodes that no longer exist in Azure.
  • Provisioning disks via the Azure Disk CSI driver (disk.csi.azure.com) and creating StorageClasses for Azure disk types so that PersistentVolumes can be requested from the cluster.
  • Provisioning base infrastructure and CloudPermanent nodes using the Terraform/OpenTofu provider terraform-provider-azurerm.
  • Provisioning CloudEphemeral nodes via Machine Controller Manager (MCM). Virtual machine parameters are set in the AzureInstanceClass resource.
  • Registering with node-manager so that AzureInstanceClass can be used when describing a NodeGroup.
  • Enabling CNI for new clusters automatically. By default, cni-cilium is used.

For utilities such as ntpdate and chrony to work correctly, make sure the load balancer has rules for UDP traffic. If outbound UDP is blocked, add a rule to the existing load balancer or create a Service of the LoadBalancer type with a UDP port.