Skip to content

Generalize StorageProfile to VolumeSnapshots/VolumeReplications #3904

@SkalaNetworks

Description

@SkalaNetworks

StorageProfiles are extremely useful to map StorageClasses with their parameters (RWX, Block...)

They can also be used to map StorageClasses with their VolumeSnapshotClass, and that behaviour is used by DVs/VirtualMachineSnapshots to automatically infer how it should snapshot volumes.

This is useful because some storage backends may have multiple VolumeSnapshotClass for the same driver, and using only one default class would not work out.

The thing is, if I create a standalone VolumeSnapshot by myself, StorageProfiles are not used to automatically infer the class that should be used. The CDI has a MutatingWebhook for PVCs that can modify them on the fly to populate them with StorageProfile data. Could we do the same for VolumeSnapshots?

Same goes if using the CSI-Addon VolumeReplication, which is akin to to snapshots, excepts it backups the data to another remote storage backend (usually through mirroring, c.f Ceph/Rook/Ceph-CSI)

There's a notion of VolumeReplicationClasses, which could be useful to be auto-infered using a mapping in the StorageProfile.

I could understand that this feature is too broad and outside the scope of Kubevirt/the CDI project. I'm opening it to get feedback and because of "the Razor" on the Kubevirt documentation.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions