201 ステータスコードとクラスタ ID が返されます。
POST /clusters?IdempotentToken={IdempotentToken}
{
"Name": "test-ubuntu",
"Description": "demo",
"ImageId": "m-2309yqb5n",
"InstanceType": "bcs.a2.large",
"UserData": {
"key1": "value1"
},
"Notification": {
"Topic": {
"Name": "test-topic",
"Endpoint": "http://[UserId].mns.[Region].aliyuncs.com/",
"Events": [
"OnClusterDeleted",
"OnInstanceCreated",
"OnInstanceActive"
]
}
},
"Configs": {
"Disks": {
"SystemDisk": {
"Type": "cloud",
"Size": 500
},
"DataDisk": {
"Type": "cloud",
"Size": 500,
"MountPoint": "/path/to/mount"
}
},
"Mounts": {
"Entries": [
{
"Destination": "/home/admin/mount-dest",
"Source": "oss://your-bucket/mount-source",
"WriteSupport": true
}
],
"Locale": "GBK",
"Lock": false,
"CacheSupport": true,
"NAS": {
"AccessGroup": [
"group1",
"group2"
],
"FileSystem": [
"filesystem1",
"filesystem2"
]
},
"OSS": {
"AccessKeyId": "",
"AccessKeySecret": "",
"AccessSecurityToken": ""
}
},
"Networks": {
"Classic": {
"AllowIpAddress": [],
"AllowIpAddressEgress": [],
"AllowSecurityGroup": [],
"AllowSecurityGroupEgress": []
},
"VPC": {
"CidrBlock": "10.0.0.0/8"
}
}
},
"Groups": {
"group1": {
"DesiredVMCount": 3,
"InstanceType": "",
"ResourceType": "OnDemand",
"SpotStrategy": "SpotAsPriceGo",
"SpotPriceLimit": 0.0
}
}
}属性の説明
属性 | タイプ | 必須 | 説明 |
Name | String | はい | クラスタ名。 |
ImageId | String | はい | イメージ ID。 |
InstanceType | string | はい | クラスタをセットアップするためのインスタンスタイプ。 |
Groups | object | はい | クラスタ内のインスタンスグループに関する情報。 |
Description | string | いいえ | クラスタの説明。 |
UserData | object | いいえ | キーと値のマッピング。ユーザー定義であり、ECS のメタサーバーを使用して取得できます。 |
Notification | object | いいえ | 通知メッセージの設定。 |
Configs | object | いいえ | インスタンスのディスク設定など、クラスタの設定。 |
IdempotentToken | String | いいえ | リクエストを保証するために使用されるべき等性。値はクライアントによって生成されます。すべてのリクエスト間で一意である必要があり、文字、数字、アンダースコアを含む最大 64 文字を含めることができます。 |
レスポンス
成功
{
"Id":"usr-cluster-1"
}属性の説明
属性 | タイプ | 説明 |
Id | String | ジョブ ID。 |
エラーコード
エラーコード | エラーメッセージ | ステータスコード | 構文 |
IdempotentTokenMismatch | 指定されたべき等性トークンが一致しません。 | 400 | トークンは既に使用されており、以前のリクエストのトークンとは異なります。 |
InvalidJsonFormat | リクエスト本文の JSON 形式が無効です。 | 400 | リクエスト本文の JSON 形式が無効です。 |
InvalidHttpBody | 指定されたパラメータ HttpBody が無効です。タイプはオブジェクトである必要があります。 | 400 | Http Body はオブジェクトである必要があります。 |
MissingName | このアクションには Name が必須です。 | 400 | パラメータ Name がありません。 |
MissingConfigs.Networks.VPC.OppositeRouterId | このアクションには Configs.Networks.VPC.OppositeRouterId が必須です。 | 400 | パラメータ Configs.Networks.VPC.OppositeRouterId がありません。 |
MissingConfigs.Networks.VPC.OppositeAccessPointId | このアクションには Configs.Networks.VPC.OppositeAccessPointId が必須です。 | 400 | パラメータ Configs.Networks.VPC.OppositeAccessPointId がありません。 |
MissingConfigs.Networks.VPC.OppositeRegionId | このアクションには Configs.Networks.VPC.OppositeRegionId が必須です。 | 400 | パラメータ Configs.Networks.VPC.OppositeRegionId がありません。 |
InvalidName | 指定されたパラメータ Name が無効です。タイプは文字列である必要があります。 | 400 | Name は文字列である必要があります。 |
InvalidName | 指定されたパラメータ Name が無効です。長さは [1, 64] の範囲内である必要があります。 | 400 | Name の長さは [1, 64] の範囲内である必要があります。 |
InvalidName | 指定されたパラメータ Name が無効です。[a-zA-Z0-9_-] 内の文字のみを含める必要があり、[0-9] で始めることはできません。 | 400 | Name には、文字、数字、アンダースコア、ハイフンのみを含めることができ、数字で始めることはできません。 |
InvalidDescription | 指定されたパラメータ Description が無効です。タイプは文字列である必要があります。 | 400 | Description は文字列である必要があります。 |
InvalidDescription | 指定されたパラメータ Description が無効です。長さは [0, 1024] の範囲内である必要があります。 | 400 | Description の長さは [0, 1024] の範囲内である必要があります。 |
MissingImageId | このアクションには ImageId が必須です。 | 400 | パラメータ ImageId がありません。 |
InvalidImageId | 指定されたパラメータ ImageId が無効です。タイプは文字列である必要があります。 | 400 | ImageId は文字列である必要があります。 |
InvalidImageId | 指定されたパラメータ ImageId が無効です。長さは [1, 256] の範囲内である必要があります。 | 400 | ImageId の長さは [1, 256] の範囲内である必要があります。 |
InvalidUserData | 指定されたパラメータ UserData が無効です。タイプはオブジェクトである必要があります。 | 400 | UserData はオブジェクトである必要があります。 |
InvalidUserData | 指定されたパラメータ UserData が無効です。サイズは [0, 64] の範囲内である必要があります。 | 400 | UserData のサイズは [0, 64] の範囲内である必要があります。 |
InvalidUserData.{key} | 指定されたパラメータ UserData.{key} が無効です。長さは [1, 128] の範囲内である必要があります。 | 400 | UserData.{key} のサイズは [1, 128] の範囲内である必要があります。 |
InvalidUserData.{key}.value | 指定されたパラメータ UserData.{key}.value が無効です。タイプは文字列である必要があります。 | 400 | UserData.{key} の値は文字列である必要があります。 |
InvalidUserData.{key}.value | 指定されたパラメータ UserData.{key}.value が無効です。長さは [0, 1024] の範囲内である必要があります。 | 400 | UserData.{key} の長さは [0, 1024] の範囲内である必要があります。 |
InvalidGroups | 指定されたパラメータ Groups が無効です。タイプはオブジェクトである必要があります。 | 400 | Groups はオブジェクトである必要があります。 |
InvalidGroups.{key} | 指定されたパラメータ Groups.{key} が無効です。タイプはオブジェクトである必要があります。 | 400 | Groups.{key} はオブジェクトである必要があります。 |
InvalidGroups.{key} | 指定されたパラメータ Groups.{key} が無効です。サイズは [1, 64] の範囲内である必要があります。 | 400 | Groups.{key} の値は [1, 64] の範囲内である必要があります。 |
MissingDesiredVMCount | このアクションには DesiredVMCount が必須です。 | 400 | パラメータ DesiredVMCount がありません。 |
InvalidDesiredVMCount | 指定されたパラメータ DesiredVMCount が無効です。タイプは整数である必要があります。 | 400 | DesiredVMCount は整数である必要があります。 |
InvalidDesiredVMCount | 指定されたパラメータ DesiredVMCount が無効です。[1, 65536] の範囲内である必要があります。 | 400 | DesiredVMCount の値は [1, 65536] の範囲内である必要があります。 |
InvalidCidrBlock | 指定されたパラメータ CidrBlock が無効です。Configs.Networks.VPC.CidrBlock が無効です。 | 400 | CIDRBlock が無効です。 |
QuotaExhausted.MaxClusterCount | MaxClusterCount ({value}) クォータが上限に達しました。 | 403 | クラスタ数は {value} を超えることはできません。 |
QuotaExhausted.MaxClusterGroupCount | MaxClusterGroupCount ({value}) クォータが上限に達しました。 | 403 | クラスタ内のグループ数は {value} を超えることはできません。 |
QuotaExhausted.MaxClusterGroupDesiredVMCount | MaxClusterGroupDesiredVMCount ({value}) クォータが上限に達しました。 | 403 | クラスタ内のグループの DesiredVMCount は {value} を超えることはできません。 |
QuotaExhausted.Configs.Networks.VPC.OppositeRouterType | Configs.Networks.VPC.OppositeRouterType ({value}) は禁止されています。 | 403 | Configs.Networks.VPC.OppositeRouterType の値は {value} にすることはできません。 |
MissingInstanceType | このアクションには InstanceType が必須です。 | 400 | パラメータ InstanceType がありません。 |
InvalidInstanceType | 指定されたパラメータ InstanceType が無効です。 | 400 | InstanceType の値が無効です。 |
MissingResourceType | このアクションには ResourceType が必須です。 | 400 | パラメータ ResourceType がありません。 |
InvalidResourceType | 指定されたパラメータ ResourceType が無効です。 | 400 | ResourceType の値が無効です。 |
Invalid{Parameter} | 指定されたパラメータ {Parameter} が無効です。 | 400 | {Parameter} パラメータが無効です。 |