創(chuàng)建一個(gè) BatchCompute 集群。

請求語法

請求行:

POST /clusters?IdempotentToken=vU7xaM9YCqqAFHAVvRVynoMBZSgD0MPn HTTP/1.1

請求方法為 POST ,請求資源為 clusters ,參數(shù)說明如下:

屬性名稱類型是否必須描述
IdempotentTokenstring用于保證請求的冪等性。由用戶生成該參數(shù)值,要保證在不同請求間唯一,最大不值過64個(gè)字符,字符包括了字母、數(shù)字以及下劃線。

請求數(shù)據(jù):

請求數(shù)據(jù)以 JSON 格式描述:

{
    "Name": "test-cluster",
    "Description": "demo",
    "InstanceType": "ecs.sn1ne.large",
    "ImageId": "img-ubuntu",
    "Bootstrap": "",
    "UserData": {
        "key2": "value2",
        "key1": "value1"
    },
    "EnvVars": {
        "key3": "value3",
        "key4": "value4"
    },
    "Notification": {
        "Topic": {
            "Name": "test-topic",
            "Endpoint": "http://[UserId].mns.[Region].aliyuncs.com/",
            "Events": [
                "OnClusterDeleted",
                "OnInstanceCreated",
                "OnInstanceActive"
            ]
        }
    },
    "Groups": {
        "group1": {
            "DesiredVMCount": 3,
            "InstanceType": "",
            "ResourceType": "OnDemand",
            "SpotStrategy": "",
            "SpotPriceLimit": 0.0
        }
    },
    "Configs": {
        "Disks": {
            "SystemDisk": {
                "Type": "cloud_efficiency",
                "Size": 50
            },
            "DataDisk": {
                "Type": "cloud_efficiency",
                "Size": 500,
                "MountPoint": "/home/my-data-disk"
            }
        },
        "Mounts": {
            "Locale": "GBK",
            "Lock": false,
            "CacheSupport": true,
            "CacheBlockSize": 262144,
            "CacheTotalSize": 536870912,
            "OSS": {
                "AccessKeyId": "[OSS Access Key Id]",
                "AccessKeySecret": "[OSS Access Key Id Secret]",
                "SecurityToken": ""
            },
            "Entries": [
                {
                    "Source": "nas://26a174a62f-sfi98.cn-shenzhen.nas.aliyuncs.com:/",
                    "Destination": "/home/admin/mydir1/",
                    "WriteSupport": true
                },
                {
                    "Source": "oss://my-test-bk/",
                    "Destination": "/home/admin/mydir3/",
                    "WriteSupport": false
                }
            ]
        },
        "Networks": {
            "VPC": {
                "VpcId": "[Your vpc id]",
                "CidrBlock": "192.168.0.0/16"
            },
            "Classic": {
                "AllowIpAddress": [],
                "AllowIpAddressEgress": [],
                "AllowSecurityGroup": [],
                "AllowSecurityGroupEgress": []
            }
        }
    }
}

屬性說明:

屬性名稱類型是否必須描述
Namestring集群名稱。長度為[2, 128]個(gè)英文或中文字符。必須以大小字母或中文開頭,不能以 http:// 和https:// 開頭。可以包含數(shù)字、半角冒號(:)、下劃線(_)或者連字符(-)。
Descriptionstring集群的描述信息。長度為[2, 256]個(gè)英文或中文字符。必須以大小字母或中文開頭,不能以 http:// 和 https:// 開頭??梢园瑪?shù)字、半角冒號(:)、下劃線(_)或者連字符(-)
InstanceTypestring構(gòu)建集群的實(shí)例類型。目前支持的ECS實(shí)例類型參閱 實(shí)例類型。
ImageIdstring鏡像標(biāo)識符。您可以使用官方定義的或自定義的鏡像。可以通過 獲取鏡像列表 獲取您可使用的所有鏡像標(biāo)識符。
DependencyIsvServicestring執(zhí)行程序依賴的阿里云提供的ISV服務(wù),目前提供的ISV服務(wù)有:“GTX”,默認(rèn)為空不依賴任何ISV服務(wù)。
Bootstrapstring實(shí)例啟動(dòng)運(yùn)行的命令。您可以指定Bootstrap來初始化您的環(huán)境。Bootstrap 與 JOB 指定的程序運(yùn)行命令有區(qū)別,JOB指定的程序是用來運(yùn)行您的作業(yè)。
UserDatamap<string, string>用戶自定義的信息,您可以定義 map 的 key 和 value 值。用戶程序使用 ECS 的 user server 獲取。
EnvVarsmap<string, string>虛擬機(jī)的環(huán)境變量,您可以定義 map 的 key 和 value 值。用戶程序從環(huán)境變量中獲取。
Groupsmap<string, object>集群的實(shí)例組群信息。key 是您自定義的 group name, value 是 GroupDesc 類型。 一個(gè)集群可以包含多個(gè)實(shí)例組,實(shí)例組有數(shù)量限制,參閱 用戶限額 。
Notificationobject用戶指定消息通知配置。
Configsobject集群的一些配置信息,比如實(shí)例的磁盤配置、網(wǎng)絡(luò)和掛載路徑。

返回信息

成功

狀態(tài)行:

HTTP/1.1 201 Created

響應(yīng)數(shù)據(jù):

{
    "Id":"cls-6ki3sg6sqlno7nt8fu0007"
}

屬性說明:

屬性名稱類型是否必須描述
Idstring作業(yè)標(biāo)識符。每個(gè)集群都有唯一的集群標(biāo)識符,你需要通過集群標(biāo)識符來管理您的集群。

錯(cuò)誤

錯(cuò)誤響應(yīng)格式請參閱 返回結(jié)果。

創(chuàng)建集群特有的錯(cuò)誤碼:

狀態(tài)碼錯(cuò)誤碼錯(cuò)誤信息語義
400IdempotentTokenMismatchSpecified idempotent token mismatch.說明該token已經(jīng)被使用過,并且該請求參數(shù)與之前的請求不一樣。
400InvalidJsonFormatThe request body has an invalid json format.請求body是一個(gè)非法的JSON格式。
400InvalidHttpBodySpecified parameter HttpBody is not valid. Its type must be object.http body必須是一個(gè)object。
400MissingNameName is mandatory for this action.缺少Name參數(shù)。
400MissingConfigs.Networks.VPC.OppositeRouterIdConfigs.Networks.VPC.OppositeRouterId is mandatory for this action.缺少Configs.Networks.VPC.OppositeRouterId參數(shù)。
400MissingConfigs.Networks.VPC.OppositeAccessPointIdConfigs.Networks.VPC.OppositeAccessPointId is mandatory for this action.缺少Configs.Networks.VPC.OppositeAccessPointId參數(shù)。
400MissingConfigs.Networks.VPC.OppositeRegionIdConfigs.Networks.VPC.OppositeRegionId is mandatory for this action.缺少Configs.Networks.VPC.OppositeRegionId參數(shù)。
400InvalidNameSpecified parameter Name is not valid. Its type must be string.Name必須是一個(gè)string。
400InvalidNameSpecified parameter Name is not valid. Its length must be in [1, 64].Name的長度必須在1與64之間。
400InvalidNameSpecified parameter Name is not valid. It must only contain characters within [a-zA-Z0-9_-], and must not start with [0-9].Name中只能包括字母數(shù)字和_-,但不能以數(shù)字開頭。
400InvalidDescriptionSpecified parameter Description is not valid. Its type must be string.Description必須是一個(gè)string。
400InvalidDescriptionSpecified parameter Description is not valid. Its length must be in [0, 1024].Description的長度必須在0與1024之間。
400MissingImageIdImageId is mandatory for this action.缺少ImageId參數(shù)。
400InvalidImageIdSpecified parameter ImageId is not valid. Its type must be string.ImageId必須是一個(gè)string。
400InvalidImageIdSpecified parameter ImageId is not valid. Its length must be in [1, 256].ImageId的長度必須在1與256之間。
400InvalidUserDataSpecified parameter UserData is not valid. Its type must be object.UserData必須是一個(gè)object。
400InvalidUserDataSpecified parameter UserData is not valid. Its size must be in [0, 64].UserData的大小必須在0與64之間。
400InvalidUserData.{key}Specified parameter UserData.{key} is not valid. Its length must be in [1, 128].UserData.{key}的大小必須在1與128之間。
400InvalidUserData.{key}.valueSpecified parameter UserData.{key}.value is not valid. Its type must be string.UserData.{key}對應(yīng)的Value必須是一個(gè)string。
400InvalidUserData.{key}.valueSpecified parameter UserData.{key}.value is not valid. Its length must be in [0, 1024].UserData.{key}對應(yīng)的value的長度必須在0與1024之間。
400InvalidGroupsSpecified parameter Groups is not valid. Its type must be object.Groups必須是一個(gè)object。
400InvalidGroups.{key}Specified parameter Groups.{key} is not valid. Its type must be object.Groups.{key}必須是一個(gè)object。
400InvalidGroups.{key}Specified parameter Groups.{key} is not valid. Its size must be in [1, 64].Groups.{key}的大小必須在1與64之間。
400MissingDesiredVMCountDesiredVMCount is mandatory for this action.缺少DesiredVMCount參數(shù)。
400InvalidDesiredVMCountSpecified parameter DesiredVMCount is not valid. Its type must be integer.DesiredVMCount必須是一個(gè)integer。
400InvalidDesiredVMCountSpecified parameter DesiredVMCount is not valid. It must be in [1, 65536].DesiredVMCount的大小必須在1與65536之間。
400InvalidCidrBlockSpecified parameter CidrBlock is not valid. Configs.Networks.VPC.CidrBlock is not valid.無效的CidrBlock。
403QuotaExhausted.MaxClusterCountThe MaxClusterCount ({value}) quota is exhausted.Cluster數(shù)量不能超過{value}。
403QuotaExhausted.MaxClusterGroupCountThe MaxClusterGroupCount ({value}) quota is exhausted.一個(gè)Cluster中的Group的數(shù)量不能超過{value}。
403QuotaExhausted.MaxClusterGroupDesiredVMCountThe MaxClusterGroupDesiredVMCount ({value}) quota is exhausted.一個(gè)Cluster中的一個(gè)Group的DesiredVMCount不能超過{value}。
403QuotaExhausted.Configs.Networks.VPC.OppositeRouterTypeThe Configs.Networks.VPC.OppositeRouterType ({value}) is forbidden.Configs.Networks.VPC.OppositeRouterType不允許取值{value}。
400MissingInstanceTypeInstanceType is mandatory for this action.缺少InstanceType參數(shù)。
400InvalidInstanceTypeSpecified parameter InstanceType is not valid.InstanceType參數(shù)取值不合法。
400MissingResourceTypeResourceType is mandatory for this action.缺少ResourceType參數(shù)。
400InvalidResourceTypeSpecified parameter ResourceType is not valid.ResourceType參數(shù)取值不合法。
400Invalid{Parameter}Specified parameter {Parameter} is not valid.{Parameter}參數(shù)不合法。