kubernetes-sigs / cluster-api-provider-openstack

Cluster API implementation for OpenStack
https://cluster-api-openstack.sigs.k8s.io/
Apache License 2.0
287 stars 252 forks source link

Support availability zones and volume types for root volumes #1021

Closed mdbooth closed 2 years ago

mdbooth commented 2 years ago

/kind feature

Describe the solution you'd like Complex OpenStack deployments will often have many availability zones for both compute and storage, and there is no requirement for there to be a 1-1 mapping between the two. Additionally most OpenStack deployments will have more than a single volume type, for example to differentiate storage with different performance. To take advantage of this, we need to allow the user to specify the availability zone and volume type of their root volumes, while still allowing Cinder to pick defaults if they are not given explicitly.

We currently have support for this in OpenShift implemented here: https://github.com/openshift/cluster-api-provider-openstack/blob/36ecd2d1cbd8dc997e88ebbf8ad6c86ff2fb1668/pkg/apis/openstackproviderconfig/v1alpha1/types.go#L245-L252

jichenjc commented 2 years ago

/assign

I think it's related to BFV , we can replicate openshift to our code base

jichenjc commented 2 years ago

I think we don't have cinder interaction at all ...which means some e2e for cinder is helpful

mdbooth commented 2 years ago

I think we don't have cinder interaction at all ...which means some e2e for cinder is helpful

I'm working on it! I'm looking to create a 2 node devstack deployment so we can have 2 AZs with cinder in both.

jichenjc commented 2 years ago

ok, so I will hold this effort and glad to provide any help if I can :)

mdbooth commented 2 years ago

I'm working on test support in https://github.com/kubernetes-sigs/cluster-api-provider-openstack/pull/1026.

hidekazuna commented 2 years ago

This is done by #1030