全部产品
阿里云办公

修改集群

更新时间:2018-11-18 12:15:43

接口

updateCluster

参数

ClusterDescription 实例。修改集群(只能修改某些配置)。详情请看API文档

返回值

成功后返回一个 UpdateClusterResponse 实例。如果失败,抛出异常: ClientException

例子

Java 源码:

  1. import com.aliyuncs.batchcompute.main.v20151111.*;
  2. import com.aliyuncs.batchcompute.model.v20151111.*;
  3. import com.aliyuncs.batchcompute.pojo.v20151111.*;
  4. import com.aliyuncs.exceptions.ClientException;
  5. public class UpdateCluster {
  6. static String ACCESS_KEY_ID = "xxx"; //这里填写您的 AccessKeyId
  7. static String ACCESS_KEY_SECRET = "xxx"; //这里填写您的 AccessKeySecret
  8. static String REGION_ID = "cn-xxx"; //这里填写 region
  9. static String ClusterId = "cls-xxx";
  10. public static void main(String[] args) {
  11. BatchCompute client = new BatchComputeClient(REGION_ID, ACCESS_KEY_ID, ACCESS_KEY_SECRET);
  12. try{
  13. ClusterDescription desc = new ClusterDescription();
  14. GroupDescription groupDesc = new GroupDescription();
  15. //可以修改期望VM数量: 0到n
  16. groupDesc.setDesiredVMCount(2);
  17. //ResourceType为spot时可以修改竞价策略
  18. //groupDesc.setSpotStrategy("SpotWithPriceLimit");
  19. //groupDesc.setSpotPriceLimit(10.0f);
  20. //可以修改实例类型
  21. groupDesc.setInstanceType("ecs.sn2ne.large");
  22. desc.addGroup("group1", groupDesc);
  23. UpdateClusterResponse response = client.updateCluster(ClusterId, desc);
  24. //扩展接口
  25. ChangeClusterDesiredVMCountResponse rsp = client.changeClusterDesiredVMCount(ClusterId, "group1", 3);
  26. //成功
  27. }catch(ClientException e){
  28. e.printStackTrace();
  29. //失败
  30. }
  31. }
  32. }

执行结果:通过获取集群信息接口获取集群最新状态如下

  1. {
  2. Name: cluster_test
  3. State: Active
  4. GroupInstanceType:ecs. sn2ne.large
  5. GroupVmNumber: 3
  6. }
  • 注意: 这个是个异步接口,不会立即生效。

扩展接口

另外我们还提供了直接修改 Group 内实例个数的接口您可以根据业务需要进行接口调用。参考 SDK 代码。

  1. String ClusterId = "cls-6kie8e833lnov8gg50k00j";
  2. client.changeClusterDesiredVMCount(ClusterId, "group1", 3);