Skip to content

Kubernetes Cluster resource missing externalloadbalanceripaddress and enablecsi parameters #275

@danielboothcloud

Description

@danielboothcloud

Problem

The cloudstack_kubernetes_cluster resource is missing several parameters that are available in the CloudStack UI and API when creating Kubernetes clusters.

Missing Parameters

  1. externalloadbalanceripaddress - Required for HA clusters (multiple control nodes) on Shared networks

    • Available in the UI when HA is enabled
    • Required to specify the external load balancer IP for API server access across control nodes
    • Without this, HA clusters on Shared networks cannot be created via Terraform
  2. enablecsi - Enable CloudStack CSI (Container Storage Interface)

    • Available in the UI and API
    • Cannot enable CSI via Terraform

Impact

  • HA Kubernetes clusters on Shared networks cannot be deployed via Terraform
  • CSI cannot be enabled for clusters created via Terraform
  • Users must manually configure these settings in the UI after Terraform deployment

Environment

  • CloudStack: 4.22.0.0
  • terraform-provider-cloudstack: latest

Expected Behavior

The resource should support all parameters available in the CloudStack API:

resource "cloudstack_kubernetes_cluster" "example" {
  name                        = "my-cluster"
  zone                        = "zone1"
  kubernetes_version          = "1.33.1"
  service_offering            = "Medium Instance"
  size                        = 3
  control_nodes_size          = 3  # HA cluster

  # These should be available but aren't:
  externalloadbalanceripaddress = "10.0.0.100"  # Missing
  enablecsi                   = true           # Missing
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions