Softlayer API,用于基于数据中心获取程序包的处理器值

时间:2018-08-21 06:32:20

标签: api ibm-cloud-infrastructure

https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/271/getItems.json

为此,它给了我3台服务器

  • 1)四核Intel Xeon E7-4850 v2(48核,2.30 GHz)
  • 2)四核Intel Xeon E7-4820 v2(32核,2.00 GHz)
  • 3)四核Intel Xeon E7-4890 v2(60核,2.80 GHz)

但是如果我在softlayer上选择Washington-01,它只会给我两台服务器:-

  • 1)四核Intel Xeon E7-4850 v2(48核,2.30 GHz)
  • 2)四核Intel Xeon E7-4820 v2(32核,2.00 GHz)

如何根据数据中心过滤此响应?

1 个答案:

答案 0 :(得分:0)

门户显示不同数量的原因是因为它具有多种算法,可以通过位置冲突,项目冲突等来缩小最佳选择的范围,

您可以使用以下Rest api示例通过DC进行过滤:

https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/271/getItems?objectMask=mask[attributes[attributeTypeKeyName], itemCategory[questions[fieldType, itemCategoryReferences]], prices[attributes[itemPriceAttributeType],categories[categoryCode],pricingLocationGroup[locations]],activeUsagePrices[pricingLocationGroup[locations]],locationConflicts]&objectFilter={"items":{"prices":{"pricingLocationGroup":{"locations":{"name":{"operation":"*= wdc"}}}}}}

它将通过使用掩码返回location,locationConflicts等信息,还使用过滤器根据需要按数据中心进行搜索,另一方面,当它是标准价格时,考虑到locationGroupId为“ null” ,这意味着它将可以在任何DC上工作。

更新

当前,门户使用Product_Package_Server::getAllObjects,您将看到属性“数据中心”内所有可用位置的列表(这是门户如何缩小每台服务器的可用位置的列表),此时Quad Intel wdc01上不提供Xeon E7-4890 v2(60核,2.80 GHz),因为您可以通过以下请求进行验证:

https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package_Server/getAllObjects?objectFilter={"datacenters":{"operation":"*= wdc01"}}

有关更多信息,请参见下文:

https://softlayer.github.io/article/object-filters/

https://softlayer.github.io/article/object-masks/