使用Softlayer API获取子网容量

时间:2016-10-27 17:27:10

标签: ibm-cloud-infrastructure

我们想知道子网中已有多少虚拟机,以及剩余容量是多少。我们应该使用什么Softlayer API来实现这一目标?

1 个答案:

答案 0 :(得分:0)

请尝试以下休息请求:

https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Network_Subnet/$SubnetID/getIpAddresses?objectMask=mask[ id, isBroadcast, isGateway, isNetwork,  isReserved, subnetId,  hardware, virtualGuest, guestNetworkComponentBinding, ipAddress, note, publicNetworkGateway,privateNetworkGateway, virtualLicenseCount, applicationDeliveryController]

好的,请看,上面的请求会将您的所有IP及其分配返回给硬件(裸机服务器)或虚拟客户机。现在你要看的第一件事是属性的价值:

  

isBroadcast isGateway isNetwork isReserved

如果这些值中的任何一个为真,那么保留IP并且它们将帮助您知道IP是什么类型(例如网关等)

然后,如果此属性不同于null,则需要查看“guestNetworkComponentBinding”,以便正在使用IP(在控制门户中,您将在此IP“主IP”的描述中看到)。

然后你需要查看“hardware”属性,如果这个值与null不同,IP用于Baremetal服务器,“hardware”属性将为您提供有关服务器的更多信息。

然后你需要查看“virtualGuest”属性,这与“hardware”属性相同,但是应用于虚拟客人。

然后你需要查看“applicationDeliveryController”属性,这个属性用于netscalers,如果此属性不为null,则IP用于设备。

对于上述所有值均为空的情况,不应使用IP(在控制门户中,我看到为将来的主IP地址保留说明)

那些是我能够看到的情况,如果你仍然遇到问题让我知道

此致