-
Notifications
You must be signed in to change notification settings - Fork 56
Description
Describe the solution you'd like
Ability to add extra disks to ProxmoxMachines and ProxmoxMachineTemplates beyond the ...spec.disks.bootVolume
.
Anything else you would like to add:
Currently can only attach a single disk (for the bootVolume). Other providers allow creating additional disks for data storage. Eg vSphere has:
VSphereMachineTemplate.spec.template.spec.dataDisks[]
VSphereMachine.spec.dataDisks[]
GCP has:
GCPMachineTemplate.spec.template.spec.additionalDisks[]
GCPMachine.spec.additionalDisks[]
AWS has:
AWSMachineTemplate.spec.template.spec.nonRootVolumes[]
AWSMachine.spec.nonRootVolumes[]
etc. These are lists that take multiple disks. In this provider, there is only a single:
ProxmoxMachine.spec.disks.bootVolume
ProxmoxMachineTemplate.spec.template.spec.disks.bootVolume
object.
I suggest a non-breaking solution of keeping the ...spec.disks.bootVolume object, and create a ...spec.disks.additionalVolumes[] list. So will be able to specify, eg:
spec:
disks:
bootVolume:
disk: boot
sizeGb: 100
additionalVolumes:
- disk: data-0
sizeGb: 100
- disk: data-1
sizeGb: 50
The alternative is to scrap ...spec.disks.bootVolume since there will always be a bootVolume, move its properties to the root of ..spec. Ie just its diskGiB, like GCP & vSphere. Then change ...spec.disks from an object to a list of extra disks. But while a simpler structure, would be a breaking change.
Environment:
Cluster-api-provider-proxmox version: 0.7.1