我正在尝试使用 Softlayer java API 来实现修改设备配置。
此过程与采购订单类似。有没有具体的API来升级和降级设备?我找到了虚拟访客的 getUpgradeRequest() 。如果您提供任何示例代码或 API 指南将会有所帮助。
谢谢修改设备配置页面 https://i.stack.imgur.com/XUEhD.png
for (Guest guest : Account.service(client).getVirtualGuests()){
if(guest.getFullyQualifiedDomainName().equals(deviceName)) {
Request rqt = Guest.service(client, guest.getId()).getUpgradeRequest();
rqt.setId(id);
rqt.setOrderId(orderId);
}
}
以下是升级 VSI 的 Java 示例。例如:
import java.util.ArrayList;
import java.util.List;
import com.softlayer.api.ApiClient;
import com.softlayer.api.RestApiClient;
import com.softlayer.api.service.container.product.Order;
import com.softlayer.api.service.container.product.order.Property;
import com.softlayer.api.service.product.item.Price;
import com.softlayer.api.service.virtual.Guest;
import com.softlayer.api.service.container.product.order.virtual.guest.Upgrade;
public class UpgradeVirtualGuest {
public static void main(String[] args) {
String username = "set me";
String apikey = "set me";
// Set the Virtual Guest to upgrade
Long vsiId = new Long(11498369);
// Declare item prices. In this case I’m updating the RAM
// Please set the new item Price
Long[] prices = { new Long(1641)};
List<Property> properties = new ArrayList<Property>();
Property maintenance = new Property();
maintenance.setName("MAINTENANCE_WINDOW");
maintenance.setValue("2015-10-05T9:00:00-05:00");
properties.add(maintenance);
Guest vsi = new Guest();
vsi.setId(vsiId);
String containerIdentifier = "SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade";
// Create a SoftLayer API client object
ApiClient client = new RestApiClient().withCredentials(username, apikey).withLoggingEnabled();
/*
* Set up Order template
*/
Upgrade upgradeOrder = new Upgrade();
upgradeOrder.setContainerIdentifier(containerIdentifier);
upgradeOrder.getProperties().addAll(properties);
upgradeOrder.getVirtualGuests().add(0, vsi);
// Add Item prices to list
for (Long i : prices) {
Price price = new Price();
price.setId(new Long(i));
upgradeOrder.getPrices().add(price);
}
try
{
Order orderResult = com.softlayer.api.service.product.Order.service(client).verifyOrder(upgradeOrder);
System.out.println("order successfully verified: " + orderResult);
} catch (Exception e) {
System.out.println(e);
}
}
}
如何获取虚拟访客升级的可用价格?
执行:
https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Virtual_Guest/[virtual_guest_ID]/getUpgradeItemPrices
Method: GET
参考:
https://forums.softlayer.com/forum/softlayer-developer-network/general-discussion/84916-changing-virtual-guest-maxmemory https://forums.softlayer.com/forum/softlayer-developer-network/general-discussion/84916-changing-virtual-guest-maxmemory(这个论坛很快就会过时,但现在对你有帮助)https://sldn.softlayer.com/es/reference/datatypes/SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade https://sldn.softlayer.com/es/reference/datatypes/SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade
http://sldn.softlayer.com/reference/services/SoftLayer_Product_Order http://sldn.softlayer.com/reference/services/SoftLayer_Product_Order
其他例子:
https://softlayer.github.io/php/upgrade_virtual_guest/ https://softlayer.github.io/php/upgrade_virtual_guest/
https://gist.github.com/underscorephil/3790139 https://gist.github.com/underscorephil/3790139
https://github.com/softlayer/softlayer-java/blob/master/examples/src/main/java/com/softlayer/api/example/OrderVirtualServer.java https://github.com/softlayer/softlayer-java/blob/master/examples/src/main/java/com/softlayer/api/example/OrderVirtualServer.java
https://softlayer.github.io/ https://softlayer.github.io/
Regards
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)