Third‑Party Storage Capability Annotation Guide
Feature Overview: By adding a StorageDescription ConfigMap in the
kube-publicnamespace, the platform automatically detects each third‑party StorageClass's snapshot support as well as supported volume modes and access modes (including block‑specific access modes). The PVC creation screen will then display only the valid options, helping you choose and use the right storage features with ease.
TOC
1. Getting Started
1.1 Create or Update the ConfigMap
Important: Perform the following operation in the
kube-publicnamespace, otherwise the platform will not recognize the storage capabilities.
Edit or create a ConfigMap whose name starts with sd-, for example sd-capabilities-enhanced:
Required label
1.2 Populate the data field
Each key corresponds to a StorageClass provisioner; the value is a YAML string that describes its capabilities. Key fields:
If
blockAccessModesis omitted, the platform will fall back toaccessModesfor Block volumes.
1.3 Apply the configuration
Once applied, the UI automatically adjusts available options, for example:
- When Block volume mode is selected, the access‑mode dropdown is populated with
blockAccessModes. - If
snapshot: true, snapshot‑related operations become available on the PVC page.
2. Sample ConfigMap
3. Update Existing Capability Descriptions
- Locate the
provisionerkey you want to modify. - Adjust the field values to reflect the actual capabilities.
- Re‑apply the ConfigMap with
kubectl apply -f .... The platform polls for updates and refreshes the UI automatically; you can also refresh the browser to see the changes immediately.
4. Compatibility with the Legacy Format
- If
blockAccessModesis missing, Block volumes will inheritaccessModes. - You do not need to delete old ConfigMaps; simply add the new fields for a smooth upgrade.