メソッドの説明
クラスタを作成します。
パラメータの説明
パラメータ | タイプ | 必須 | 説明 |
clusterDescription | ClusterDescription | はい | 作成されるクラスタの説明 |
以下のクラスのパッケージ名はすべて com.aliyuncs.batchcompute.pojo.v20151111 です。
ClusterDescription の属性
すべての属性に getter メソッドと setter メソッドが使用できます。
属性 | タイプ | 必須 | 説明 |
name | String | はい | クラスタ名 |
description | String | いいえ | ジョブの簡単な説明 |
imageId | String | はい | ECS イメージ ID または登録済みイメージ ID を指定できます |
groups | Map | はい | インスタンスグループ |
instanceType | String | いいえ | クラスタ作成用のインスタンスタイプ。サポートされているインスタンスタイプはリージョンによって異なります |
userData | Map | いいえ | ユーザーデータ |
configs | Configs | いいえ | クラスタ構成(インスタンスのディスク構成など)。[Configs] で説明されています |
notification | Notification | いいえ | 通知設定。MNS のトピックまたはクラスタ関連イベントを設定できます |
GroupDescription の属性
すべての属性に getter メソッドと setter メソッドが使用できます。
属性 | タイプ | 必須 | 説明 |
desiredVMCount | int | はい | 起動するインスタンスの予想数 |
instanceType | String | はい | インスタンスタイプ |
resourceType | String | いいえ | リソースのタイプ。現在、このパラメータはデフォルト値の OnDemand にのみ設定できます |
SpotStrategy | String | はい | インスタンスのスポット戦略。ResourceType が Spot の場合にのみ有効になります。 オプション値を使用します: SpotWithPriceLimit:スポットインスタンスの最大価格を設定します。 SpotAsPriceGo:システムが価格を自動的に提供し、最大値は従量課金制価格です |
SpotPriceLimit | Float | いいえ | インスタンスの 1 時間あたりの最大価格。値には最大 3 つの小数を含めることができます。SpotStrategy が SpotWithPriceLimit の場合に有効になります |
Notification の属性
すべての属性に getter メソッドと setter メソッドが使用できます。
属性 | タイプ | 必須 | 説明 |
topic | Topic | いいえ | メッセージトピック |
Topic の属性
すべての属性に getter メソッドと setter メソッドが使用できます。
属性 | タイプ | 必須 | 説明 | |
endpoint | String | はい | MNS リージョンの「エンドポイント」。形式は | |
name | String | はい | トピックの名前 | |
events |
| はい | イベントのリスト。クラスタ関連イベントを入力してください |
レスポンスの説明
クラスタが正常に作成されると、CreateClusterResponse インスタンスが返されます。response.getClusterId() を使用して、作成されたクラスタの名前を取得できます。
タイプ | 説明 |
CreateClusterResponse | 作成されたクラスタの ID を取得します |
CreateClusterResponse パッケージ名は com.aliyuncs.batchcompute.model.v20151111 です。
以下にリストされているその他のレスポンスはこのパッケージの下にあります。
作成に失敗した場合、ClientException がスローされます。
サンプルコード
package com.aliyuncs.batchcompute.sample.v20151111;
import com.aliyuncs.batchcompute.main.v20151111.*;
import com.aliyuncs.batchcompute.model.v20151111.*;
import com.aliyuncs.batchcompute.pojo.v20151111.*;
import com.aliyuncs.exceptions.ClientException;
public class CreateCluster {
public static void main(String[] args) {
BatchCompute client = new BatchComputeClient("cn-shenzhen", "your_access_id", "your_access_secret");
try {
ClusterDescription clusterDescription = getClusterDesc();
CreateClusterResponse response = client.createCluster(clusterDescription);
String clusterId = response.getClusterId();
// 作成成功
System.out.println("Got cluster id:" + clusterId);
} catch (ClientException e) {
e.printStackTrace();
// 作成失敗
}
}
private static ClusterDescription getClusterDesc(){
ClusterDescription desc = new ClusterDescription();
desc.setName("cluster_test");
desc.setImageId("img-ubuntu");
desc.setDescription("demo");
GroupDescription groupDesc = new GroupDescription();
groupDesc.setDesiredVMCount(1);
groupDesc.setInstanceType("ecs.s3.large");
groupDesc.setResourceType("OnDemand");
desc.addGroup("group1", groupDesc);
return desc;
}
}