使用Softlayer API时如何定义Softlayer位置?

2024-03-29 08:25:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个Python脚本(示例代码place\u order\u几个\u vm)_虚拟局域网.py在https://softlayer.github.io/python/)使用SoftLayer API。要设置的一个属性是“位置”。在此上下文中,如何为SoftLayer定义位置属性?你知道吗

到目前为止,我只能用“阿姆斯特丹”。其他任何东西,比如DAL05,都失败了。你知道吗

如果有人能提供一个在使用SoftLayer API时可以在此上下文中使用的位置的列表,我们将不胜感激。你知道吗


Tags: 代码pyhttpsiogithub脚本api示例
1条回答
网友
1楼 · 发布于 2024-03-29 08:25:34

该位置是您的vm将被供应的位置,您使用的python脚本示例是在AMSTERDAM位置放置一个新的vm订单。你知道吗

要获取所有可用于配置vm的位置,请使用此RESTAPI。你知道吗

方法:GET

https://[username]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Location/getDatacenters

参考文献:

https://softlayer.github.io/reference/services/SoftLayer_Location/getDatacenters/

你必须记住,每个地点的商品价格是不同的。你知道吗

要获取项目价格及其位置,可以使用以下rest api:

方法:GET

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/

相关问题 更多 >