Available in editions:  EE

The module lifecycle stageGeneral Availability

The cloud-provider-openstack module integrates Deckhouse Kubernetes Platform with OpenStack-based clouds. It allows the node-manager module to use OpenStack resources when provisioning nodes for a NodeGroup.

Features of the cloud-provider-openstack module:

  • Managing OpenStack resources via cloud-controller-manager:
    • updates OpenStack server and Kubernetes node metadata and removes from Kubernetes nodes that no longer exist in OpenStack;
    • creates load balancers (Octavia) for Services of the LoadBalancer type.
  • Provisioning block disks via the Cinder CSI driver (cinder.csi.openstack.org). Manila (filesystem) is not supported. The Cinder CSI driver supports re-authentication in OpenStack with service catalog refresh, which improves resilience for long-running pods with volumes.
  • Provisioning base infrastructure and CloudPermanent nodes using the Terraform/OpenTofu provider terraform-provider-openstack.
  • Provisioning CloudEphemeral nodes via Machine Controller Manager (MCM) or Cluster API (CAPI). Virtual machine parameters are set in the OpenStackInstanceClass resource.
  • Registering with node-manager so that OpenStackInstanceClass can be used when describing a NodeGroup.
  • Enabling CNI for new clusters automatically. By default, cni-cilium is used. The network mode depends on the podNetworkMode parameter.

The module is migrating CloudEphemeral node management from Machine Controller Manager (MCM) to Cluster API (CAPI). Existing NodeGroups continue to use MCM, while new ones are created with CAPI by default. For migrating existing groups, see How to migrate node groups to Cluster API (CAPI).