Virtual Machine local snapshot usage
HyperCloud adds a new tag to the VM monitoring data returned by the orchestrator API calls one.vm.monitoring
and one.vm.info
. This tag is called HYPERCLOUD_LOCAL_SNAPUSAGE
. It contains base64-encoded zlib-compressed JSON. Example data:
<VM>
<MONITORING>
<HYPERCLOUD_LOCAL_SNAPUSAGE>
<![CDATA[eJy1js1qwzAQhO95DJ29oN/dVV+lBKOV5NaQ2CFqeqjxu1eFtucE2tswMN83mzqtOZ3GtqRLe13fxltLL1U9PR82NZ97bD1vaknnXqp1qWDAgVaD+ll8174WTVYmiNEJeDQWBKUCxYCOLE2ObV9druv73Oa+KGObPzrU6kgmWK0HdWu/LUWMhgj34R45hThJxghcbJdbRkguVWCfikXvONMjcnbMqPk+d5ZkHSGBQZ3BRxMgeVe6W2InY+GS/8sttWph1hD0NIF3/YAU/XXAClVOJMn8mftRynE/HPdPyHe1IQ==]]>
</HYPERCLOUD_LOCAL_SNAPUSAGE>
</MONITORING>
</VM>
Which is then parsed into:
[lancelot] root@hypercloud-dashboard:~# hypercloud vm show 3 | grep HYPERCLOUD_LOCAL_SNAPUSAGE | awk '{print $NF}' | base64 -d | openssl zlib -d | jq
{
"local_snapshot_usage" : [
{
"images" : [
{
"provisioned_size" : 209715200,
"used_size" : 79691776,
"snapshot" : "one-4ed072bf-993b-4612-b6be-79563727f382",
"name" : "one-1-3-0"
},
{
"used_size" : 8388608,
"provisioned_size" : 209715200,
"name" : "one-1-3-0",
"snapshot" : "one-759fbc69-8d2b-4286-a3ae-84ad26438c72"
},
{
"name" : "one-1-3-0",
"snapshot" : "one-cba23767-160c-4915-a43d-84b95206d8dc",
"used_size" : 8388608,
"provisioned_size" : 209715200
},
{
"snapshot" : "one-bee0b880-50ff-430c-bd05-a42b7e8a7ba1",
"name" : "one-1-3-0",
"provisioned_size" : 209715200,
"used_size" : 8388608
},
{
"provisioned_size" : 209715200,
"used_size" : 8388608,
"name" : "one-1-3-0"
}
]
}
]
}
[lancelot] root@hypercloud-dashboard:~#
Which indicates that there are four local snapshots plus the base image volumes with their respective usage information.