K8SSTORAGE: K8s Storage
A Kubernetes Persistent Volume Claim (PVC) and its backing storage, managing stateful data for workloads.
Default definition. This article describes the default
K8SSTORAGE definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches K8SSTORAGE.Entity properties
| Property | Value |
|---|---|
| Entity code | K8SSTORAGE |
| Display name | K8s Storage |
| Plural | K8s Storage |
| Level | 406 |
Use cases
K8SSTORAGE represents the PVC/PV pairing that provides durable storage to stateful workloads. The General panel captures the PVC name, namespace (objectLookup to K8SNAMESPACE), storage class, and status (Bound, Pending, Available, Released, Failed, Terminating) reflecting the PV lifecycle. Access mode multiselect supports the four Kubernetes access modes because workload compatibility depends on this.
Fields
PVC Information
| Field | Type | Required | Notes |
|---|---|---|---|
name | text | Yes | Persistent Volume Claim name |
namespace | reference → K8SNAMESPACE | Yes | Namespace |
storageClass | text | e.g., gp2, fast-ssd | |
status | enum | Yes | Status Valid ids: 1 (Bound), 2 (Pending), 3 (Available), 4 (Released), 5 (Failed), 6 (Terminating). |
Storage Configuration
| Field | Type | Required | Notes |
|---|---|---|---|
size | number | Yes | Size (GB) |
accessMode | multiselect | Yes | Access Modes |
volumeMode | enum | Volume Mode Valid ids: 1 (Filesystem), 2 (Block). | |
reclaimPolicy | enum | Reclaim Policy Valid ids: 1 (Retain), 2 (Delete), 3 (Recycle). |
Binding Information
| Field | Type | Required | Notes |
|---|---|---|---|
volumeName | text | Bound PV name Read only. | |
volumeHandle | text | CSI volume handle Read only. | |
nodeAffinity | text (multi-line) | Node selection constraints | |
usedBy | text (multi-line) | Pods using this PVC Read only. |
Performance Specifications
| Field | Type | Required | Notes |
|---|---|---|---|
iopsRequested | number | IOPS Requested | |
iopsProvisioned | number | IOPS Provisioned Read only. | |
throughputMB | number | Throughput (MB/s) | |
volumeType | enum | Volume Type Valid ids: 1 (gp2), 2 (gp3), 3 (io1), 4 (io2), 5 (st1), 6 (sc1), 7 (standard), 8 (premium). | |
encryptionEnabled | boolean | Encryption Enabled | |
encryptionKey | text | Encryption Key |
Usage Metrics
| Field | Type | Required | Notes |
|---|---|---|---|
usedSpace | number | Used Space (GB) Read only. | |
availableSpace | number | Available Space (GB) Read only. | |
usagePercent | gauge | Usage % Read only. | |
currentIOPS | number | Current IOPS Read only. | |
currentThroughput | number | Current Throughput (MB/s) Read only. | |
lastResizeTime | datetime | Last Resize Read only. |
Volume Snapshots
| Field | Type | Required | Notes |
|---|---|---|---|
snapshotsEnabled | boolean | Snapshots Enabled | |
snapshotClass | text | Snapshot Class | |
snapshotPolicy | enum | Snapshot Policy Valid ids: 1 (Daily), 2 (Weekly), 3 (Monthly), 4 (On-demand), 5 (Custom). | |
retentionDays | number | Retention Days | |
lastSnapshotTime | datetime | Last Snapshot Read only. | |
snapshotCount | number | Total Snapshots Read only. | |
snapshots | text (multi-line) | List of available snapshots Read only. |
Backup Configuration
| Field | Type | Required | Notes |
|---|---|---|---|
backupEnabled | boolean | Backup Enabled | |
backupProvider | enum | Backup Provider Valid ids: 1 (None), 2 (Velero), 3 (Kasten K10), 4 (AWS Backup), 5 (Azure Backup), 6 (GCP Backup), 7 (Custom). | |
backupSchedule | text | Cron format | |
backupRetention | number | Backup Retention (days) | |
lastBackupTime | datetime | Last Backup Read only. |
Restore Information
| Field | Type | Required | Notes |
|---|---|---|---|
restoreEnabled | boolean | Restore Available Read only. | |
restorePoints | number | Available Restore Points Read only. | |
lastRestoreTime | datetime | Last Restore Read only. | |
restoreHistory | text (multi-line) | Restore History Read only. |
Advanced Settings
| Field | Type | Required | Notes |
|---|---|---|---|
labels | text (multi-line) | Key-value pairs (JSON) | |
annotations | text (multi-line) | Key-value pairs (JSON) | |
selector | text (multi-line) | PV selector (JSON) |
CSI Configuration
| Field | Type | Required | Notes |
|---|---|---|---|
csiDriver | text | CSI Driver | |
csiVolumeAttributes | text (multi-line) | CSI volume attributes (JSON) | |
mountOptions | text (multi-line) | One option per line | |
allowVolumeExpansion | boolean | Allow Volume Expansion | |
volumeBindingMode | enum | Volume Binding Mode Valid ids: 1 (Immediate), 2 (WaitForFirstConsumer). |
Storage Cost Analysis
| Field | Type | Required | Notes |
|---|---|---|---|
estimatedMonthlyCost | number | Est. Monthly Cost Read only. | |
actualMonthlyCost | number | Actual Monthly Cost Read only. | |
costPerGB | number | Cost per GB Read only. | |
costPerIOPS | number | Cost per IOPS Read only. | |
costCenter | text | Cost Center | |
projectCode | text | Project Code | |
costAllocation | text (multi-line) | Cost breakdown by workload |
Storage Metrics
| Field | Type | Required | Notes |
|---|---|---|---|
readLatency | number | Read Latency (ms) Read only. | |
writeLatency | number | Write Latency (ms) Read only. | |
readThroughput | number | Read Throughput (MB/s) Read only. | |
writeThroughput | number | Write Throughput (MB/s) Read only. | |
queueDepth | number | Queue Depth Read only. | |
errorRate | gauge | Error Rate % Read only. | |
availability | gauge | Availability % Read only. | |
lastHealthCheck | datetime | Last Health Check Read only. |
Relationships
- Lookups:
namespacepoints at aK8SNAMESPACErecord. - Related lists:
K8SWORKLOAD.
Creating a K8s Storage via the API
POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json
{
"entity": "K8SSTORAGE",
"level": 406,
"comboKey": "SUB:<your-sub-id>|ENT:",
"name": "Example",
"namespace": "",
"status": "1",
"size": 1
}
Listing K8s Storage records
# All k8s storage in your tenant
GET /v1/entities/K8SSTORAGE/SUB