使用 SoftLayer API 时如何定义 Softlayer 位置?
how is Softlayer location defined when working with SoftLayer API?
我正在开发一个使用 SoftLayer API 的 Python 脚本(示例代码 place_order_several_vms_vlan.py 在 https://softlayer.github.io/python/)。要设置的一个属性是 "location"。在此上下文中如何为 SoftLayer 定义位置属性?
到目前为止,我只能使用"AMSTERDAM"。其他任何东西,例如 DAL05,都失败了。
如果有人可以提供使用 SoftLayer 时可在此上下文中使用的位置列表,我们将不胜感激 API。
该位置是您的 vm 将被配置的位置,您使用的 python 脚本示例是在 AMSTERDAM 位置下新的 vm 订单。
要获取所有可用于配置您的虚拟机的位置,请使用其余部分 api。
方法:获取
https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Location/getDatacenters
参考:
https://softlayer.github.io/reference/services/SoftLayer_Location/getDatacenters/
请注意,每个地点的商品价格都不同。
要获取商品价格及其位置,您可以使用以下剩余 api:
方法:获取
https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/46/getItemPrices?objectMask=mask[pricingLocationGroup[locations]]
响应例如将是这样的:
{
"currentPriceFlag": null,
"hourlyRecurringFee": ".018",
"id": 112475,
"itemId": 857,
"laborFee": "0",
"locationGroupId": 503,
"onSaleFlag": null,
"oneTimeFee": "0",
"quantity": null,
"recurringFee": "11.21",
"setupFee": "0",
"sort": 0,
"tierMinimumThreshold": null,
"item": {
"capacity": "1",
"description": "1 x 2.0 GHz or higher Core",
"id": 857,
"itemTaxCategoryId": 166,
"keyName": "GUEST_CORE_1",
"softwareDescriptionId": null,
"units": "CORE",
"upgradeItemId": null
},
"pricingLocationGroup": {
"description": "Location Group 2",
"id": 503,
"locationGroupTypeId": 82,
"name": "Location Group 2",
"securityLevelId": null,
"locations": [
{
"id": 449610,
"longName": "Montreal 1",
"name": "mon01",
"statusId": 2
},
{
"id": 449618,
"longName": "Montreal 2",
"name": "mon02",
"statusId": 2
},
{
"id": 448994,
"longName": "Toronto 1",
"name": "tor01",
"statusId": 2
},
{
"id": 350993,
"longName": "Toronto 2",
"name": "tor02",
"statusId": 2
},
{
"id": 221894,
"longName": "Amsterdam 2",
"name": "ams02",
"statusId": 2
},
{
"id": 265592,
"longName": "Amsterdam 1",
"name": "ams01",
"statusId": 2
},
{
"id": 814994,
"longName": "Amsterdam 3",
"name": "ams03",
"statusId": 2
}
]
}
},
例如对于商品“1 x 2.0 GHz 或更高核心”,商品价格 ID 将为 "id":112475,您将看到该商品的可用位置。
如果您找不到某件商品的位置是因为该商品价格是标准的,则意味着该商品的所有位置都可用。
参考:
https://softlayer.github.io/reference/services/SoftLayer_Product_Package/getItemPrices/
我正在开发一个使用 SoftLayer API 的 Python 脚本(示例代码 place_order_several_vms_vlan.py 在 https://softlayer.github.io/python/)。要设置的一个属性是 "location"。在此上下文中如何为 SoftLayer 定义位置属性?
到目前为止,我只能使用"AMSTERDAM"。其他任何东西,例如 DAL05,都失败了。
如果有人可以提供使用 SoftLayer 时可在此上下文中使用的位置列表,我们将不胜感激 API。
该位置是您的 vm 将被配置的位置,您使用的 python 脚本示例是在 AMSTERDAM 位置下新的 vm 订单。
要获取所有可用于配置您的虚拟机的位置,请使用其余部分 api。
方法:获取
https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Location/getDatacenters
参考:
https://softlayer.github.io/reference/services/SoftLayer_Location/getDatacenters/
请注意,每个地点的商品价格都不同。
要获取商品价格及其位置,您可以使用以下剩余 api:
方法:获取
https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/46/getItemPrices?objectMask=mask[pricingLocationGroup[locations]]
响应例如将是这样的:
{
"currentPriceFlag": null,
"hourlyRecurringFee": ".018",
"id": 112475,
"itemId": 857,
"laborFee": "0",
"locationGroupId": 503,
"onSaleFlag": null,
"oneTimeFee": "0",
"quantity": null,
"recurringFee": "11.21",
"setupFee": "0",
"sort": 0,
"tierMinimumThreshold": null,
"item": {
"capacity": "1",
"description": "1 x 2.0 GHz or higher Core",
"id": 857,
"itemTaxCategoryId": 166,
"keyName": "GUEST_CORE_1",
"softwareDescriptionId": null,
"units": "CORE",
"upgradeItemId": null
},
"pricingLocationGroup": {
"description": "Location Group 2",
"id": 503,
"locationGroupTypeId": 82,
"name": "Location Group 2",
"securityLevelId": null,
"locations": [
{
"id": 449610,
"longName": "Montreal 1",
"name": "mon01",
"statusId": 2
},
{
"id": 449618,
"longName": "Montreal 2",
"name": "mon02",
"statusId": 2
},
{
"id": 448994,
"longName": "Toronto 1",
"name": "tor01",
"statusId": 2
},
{
"id": 350993,
"longName": "Toronto 2",
"name": "tor02",
"statusId": 2
},
{
"id": 221894,
"longName": "Amsterdam 2",
"name": "ams02",
"statusId": 2
},
{
"id": 265592,
"longName": "Amsterdam 1",
"name": "ams01",
"statusId": 2
},
{
"id": 814994,
"longName": "Amsterdam 3",
"name": "ams03",
"statusId": 2
}
]
}
},
例如对于商品“1 x 2.0 GHz 或更高核心”,商品价格 ID 将为 "id":112475,您将看到该商品的可用位置。
如果您找不到某件商品的位置是因为该商品价格是标准的,则意味着该商品的所有位置都可用。
参考:
https://softlayer.github.io/reference/services/SoftLayer_Product_Package/getItemPrices/