从SoftLayer API获取磁盘使用情况

时间:2017-01-30 11:52:35

标签: ibm-cloud-infrastructure

我正在创建一个使用SoftLayer API监控虚拟服务器的脚本。

我可以通过为每个虚拟服务器获取blockDevice和关联的diskImage来获取当前磁盘空间,如指定的here,但是如何获取已用/可用空间在每个块设备上,我可以计算可用空间的百分比吗?

以下是我目前提取数据的方式:

$server = SoapClient::getClient("SoftLayer_Virtual_Guest", $id, $username, $apikey);
$server->setObjectMask("mask[maxCpu,maxCpuUnits,maxMemory,statusId,status[keyName],bandwidthAllocation,billingCycleBandwidthUsage[amountOut,type],metricTrackingObjectId,billingItem[recurringMonths,nextInvoiceTotalRecurringAmount],datacenter[name,longName],blockDevices[statusId,status[keyName],diskImage[capacity,typeId,type[keyName],units]]]");
$server_data = $server->getObject();

问题是各种块设备只保存对磁盘映像的引用,而磁盘映像又有一个capacity字段,但似乎没有任何东西可以链接到实际使用的空间。

1 个答案:

答案 0 :(得分:1)

抱歉信息没有存储在softlayer数据库中,您只能看到图像模板中的磁盘使用情况,但是从配置的服务器中看不到这些信息。

此致