问题描述
我发出以下 URL 以使用当前操作系统重新加载虚拟来宾。 rest/v3/SoftLayer_Virtual_Guest/1234/reloadOperatingSystem
我应该指定什么参数来使用不同的操作系统重新加载虚拟来宾?
解决方法
SoftLayer_Virtual_Guest::reloadOperatingSystem 服务具有用于继续重新加载的确认协议。要在没有确认的情况下继续重新加载,只需将‘FORCE’作为令牌参数传入,这样您就可以使用如下请求:
方法POST:
https://api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/123456/reloadOperatingSystem
身体:
{
"parameters":[
"FORCE",{
"itemPrices":[
{
"id":211481
}
]
}
]
}
此外,您还可以通过按描述过滤项目来获取操作系统价格:
方法获取:
https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/1035/getItems.json?objectMask=mask[description,id,prices[id]]&objectFilter={"items":{"description":{"operation":"*= Ubuntu"}}}
输出示例:
[
{
"description": "Ubuntu Linux 18.04 LTS Bionic Beaver LAMP Install (64 bit)","id": 11429,"prices": [
{
"id": 211481
}
]
}
]
请记住使用在虚拟来宾中使用的相同包 ID,下面是获取它的方法(猜测 123456 是虚拟来宾标识符)。
方法获取:
https://api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/123456/getObject.json?objectMask=mask[typeId,billingItem[categoryCode,package[name,id]]]
输出示例:
{
"typeId": 1,"billingItem": {
"categoryCode": "guest_core","package": {
"id": 1035,"name": "Public Virtual Server (hourly)"
}
}
}