我正在尝试使用SoftLayer API将VSI从SAN迁移到本地磁盘。我最初尝试将editObject
方法与SoftLayer_Virtual_Guest
服务一起使用,虽然命令返回true
但没有启动任何事务且VSI仍在使用SAN存储。 REST或Python示例将非常受欢迎。
使用Chrome开发工具并通过门户网站迁移VSI会显示正在调用placeOrder(请求网址:https://control.softlayer.com/sales/productorder/placeorder),但看不到placeOrder会接受VSI ID。
答案 0 :(得分:0)
没错,您应该使用placeOrder方法,并且需要在“ virtualGuests ”属性中指定VSI,在示例下方
https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Product_Order/verifyOrder
Method: Post
{
"parameters":[
{
"complexType":"SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade",
"packageId":46,
"prices":[
{
"id":13899,
"categories":[
{
"categoryCode":"guest_disk0",
"id":81,
"name":"First Disk"
}
]
}
],
"properties":[
{
"name":"MAINTENANCE_WINDOW",
"value":"2016-11-04T18:51:37.165Z"
}
],
"virtualGuests":[
{
"id":25011999
}
]
}
]
}
替换: $ user , $ apiKey , 25011999 (vsiId)和 13899 (价格来自新磁盘,在这种情况下是要迁移的本地磁盘价格)和您自己的信息。
要从您的vsi获取升级项目价格,请尝试以下请求:
https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Virtual_Guest/25011999/getUpgradeItemPrices
Method: Get
使用您自己的信息替换: $ user , $ apiKey 和 25011999
<强>参考文献:强>