apache / apache/cloudstack-terraform-provider
Kubernetes Cluster resource missing externalloadbalanceripaddress and enablecsi parameters
- Dominant language
- Go
- Stars
- 53
- Forks
- 67
- Avg merge
- 3d 14h
- Merged PRs (30d)
- 15
Description
## 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:
```hcl
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
}
Contributor guide
Assessment
This issue has not been assessed yet.