DLE API/CLI– extend to support multiple volumes
Goal
DLE API/CLI need to support the case of "logical" (dump/restore) data provisioning when we have 2 or more volumes and some rotation logic:
- which snapshot belongs to which volume
- which clone belongs to clone volume
- what volume is active
- what are the characteristics of each volume (disk space used, etc)
- do we have spare volumes or all volumes are "busy" so we won't be able to perform next refresh unless we delete some clones (perhaps, this should be a warning of the global state of DLE)
- each volume is supposed to have a single snapshot –
dataStateAt
is also an attribute of a volume?
TODO / How to implement
TBD – @akartasov please add details here
- Add a new field
Pool string
to theSnapshot
struct - Clone contains a link to a snapshot that will contain a mention of the pool
- Add to the
GET /status
response an active pool - Add to
GET /status
disk space metrics- Return "N/A" if data cannot be provided, e.g. files-related details on LVM.
- Use both physical and logical sizes (
Used
andLogicalReferenced
) for clones and snapshots.
Acceptance criteria
As an admin or user of DLE, I can see the info about all volumes available. Particularly, I can understand the details of data refresh policy and what to expect during the next refresh attempt.
Edited by Artyom Kartasov