全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
批量计算

创建集群

更新时间:2017-09-14 16:47:20

create_cluster

参数说明:

所有类型的参数将被转换为包含属性信息的字典对象。

参数 类型 描述
cluster_desc ClusterDescription object, str, dict 集群的描述信息

返回值说明:

create_cluster 方法将返回一个CreateResponse对象, 以下是 CreateResponse 对象的属性。可以通过 response.Id 的方式获取新集群的标识符。

属性 类型 描述
Id str 新集群的标识符

e.g.

  1. try:
  2. # Init a Client object.
  3. client = ...
  4. # Refer to ClusterDescription.
  5. cluster_desc = ClusterDescription(...)
  6. cluster = client.create_cluster(cluster_desc)
  7. # Print out the cluster id.
  8. print (cluster.Id)
  9. except ClientError, e:
  10. print (e)

(1)ClusterDescription 类

参数说明:

参数 类型 描述
properties dict, str, ClusterDescription object 包含集群描述信息的对象

属性说明:

Groups中的信息请参考GroupDescription描述类型的介绍。

序号 属性 类型 描述
1. Name str 集群名称
2. Description str 集群的简短描述信息
3. ImageId str 镜像标识符,目前仅支持Ecs中的镜像标识符
4. UserData dict 一个KeyValue映射,用户自定义的信息,使用ECS的metaserver获取
5. Groups GroupDescription object 集群的实例组信息,以JSON格式描述
6. Configs Configs object 集群的配置信息
7. Notification Notification object 消息通知配置

方法说明 :

序号 方法 描述
1. add_group(group_name, group) 增加一个实例组
2. get_group(group_name) 通过实例组名获取实例组信息
3. delete_group(group_name) 删除某个实例组

(2)GroupDescription 类

参数说明:

参数 类型 描述
properties dict, str, GroupDescription object 集群的实例组信息

属性说明:

序号 属性 类型 描述
1. DesiredVMCount int 期望实例数量
2. InstanceType str 集群的实例类型
3. ResourceType str 资源类型。支持“OnDemand”, “Spot”
4. SpotStrategy str 实例的竞价策略,只有在ResourceType为Spot的情况下有效。取值范围:SpotWithPriceLimit:设置上限价格的竞价实例;SpotAsPriceGo:系统自动出价,最高按量付费价格。
5. SpotPriceLimit float 实例的每小时最高价格(每个实例规格的价格而非每核小时的价格)。支持最大 3 位小数,SpotStrategy 为 SpotWithPriceLimit 生效。

(3)Configs 类

参数说明:

参数 类型 描述
properties dict, str, GroupDescription object 集群的配置信息

属性说明:

序号 属性 类型 描述
1. Disks Disks object 集群实例的磁盘配置
2. Mounts Mounts object 创建集群时的网络磁盘挂载配置信息。
3. Networks Networks object 集群中包含的实例的网络配置信息,由Networks描述。

方法说明:

序号 方法 描述
1. addsystem_disk(size, type) 设置系统盘的大小和类型,目前类型支持“cloud” 和 “ephemeral”
1. adddata_disk(size, type, mount_point) 增加并设置一块数据盘,目前类型支持“cloud”和“ephemeral”

(4)Disks 类

参数说明:

参数 类型 描述
properties dict, str, Disks object 集群的磁盘配置信息

属性说明:

序号 属性 类型 描述
1. SystemDisk SystemDisk object 系统盘配置信息
2. DataDisk DataDisk object 数据盘配置信息

(5)SystemDisk 类

参数说明:

参数 类型 描述
properties dict, str, SystemDisk object 系统盘配置信息

属性说明:

序号 属性 类型 描述
1. Size int 系统盘大小
2. Type str 数据盘类型

(6)DataDisk 类

参数说明:

参数 类型 描述
properties dict, str, DataDisk object 数据盘配置信息

属性说明:

序号 属性 类型 描述
1. Size int 系统盘大小
2. Type str 数据盘类型
3. MountPoint str 数据盘在linux系统下要mount到的目录

(7) Notification 类

参数说明:

参数 类型 描述
properties dict, str, Command object 用户程序相关命令行参数

属性说明:

序号 属性 类型 描述
1. Topic Topic Object 消息Topic

(8) Topic 类

参数说明:

参数 类型 描述
properties dict, str, Command object 用户程序相关命令行参数

属性说明:

序号 属性 类型 描述
1. Endpoint str MNS区域endpoint,格式如: http://${your_user_id}.mns.${region}-internal.aliyuncs.com/ ,请尽量使用内网Endpoint。
2. Name str Topic名称。
3. Events list 事件列表,请填写cluster相关的事件名。

(9) Mounts 类

参数说明:

参数 类型 描述
properties dict, str, Command object 创建集群时的网络磁盘挂载配置信息。

属性说明:

序号 属性 类型 描述
1. Entries array 网络磁盘挂载点信息列表, 由MountPoint描述。
2. Locale str 挂载OSS,NAS存储时语言选项。
3. Lock bool 挂载OSS,NAS存储时文件锁支持选项。
4. NAS dict NAS配置信息。
5. OSS dict OSS配置信息。

(10) MountPoint 类

参数说明:

参数 类型 描述
properties dict, str, Command object 网络挂载点。

属性说明:

序号 属性名称 类型 描述
1. Source str 网络磁盘挂载来源路径,可以是nas://和oss://开头的字符串。
2. Destination str 网络磁盘本地挂载点路径。
3. WriteSupport bool 挂载点是否可写。

(11) NAS 类

参数说明:

参数 类型 描述
properties dict, str, Command object NAS配置信息。

属性说明:

序号 属性名称 类型 描述
1. AccessGroup list 需要将集群实例加入到的NAS访问组。
2. FileSystem list 需要访问的文件系统。

(12) OSS 类

参数说明:

参数 类型 描述
properties dict, str, Command object OSS配置信息。

属性说明:

序号 属性名称 类型 描述
1. AccessKeyId str OSS挂载使用的Access ID。
2. AccessKeySecret str OSS挂载使用的Access Secret。
3. SecurityToken str OSS挂载使用的Security Token。

Notice:

关于Mounts的注意事项

  1. Job级别的Mounts参数会覆盖Cluster级别的配置信息;
  2. Modify Cluster后,需要调用RecreateInstance接口才能使新指定的Mounts配置生效;
  3. 挂载NAS需要以nas://做为source的前缀,否则会出错;

(13) Networks 类

参数说明:

参数 类型 描述
properties dict, str, Command object 创建集群时的网络配置信息。

属性说明:

序号 属性名称 类型 描述
1. Classic dict 经典网络配置信息, 由Classic描述。

(14) Classic 类

参数说明:

参数 类型 描述
properties dict, str, Command object 经典网络配置信息。

属性说明:

序号 属性名称 类型 描述
1. AllowIpAddress list 允许流量入的IP地址。
2. AllowIpAddressEgress list 允许流量出的IP地址。
3. AllowSecurityGroup list 允许流量入的安全组。
4. AllowSecurityGroupEgress list 允许流量的安全组。

e.g.

  1. try:
  2. # some other codes here
  3. Client = Client(...
  4. ...
  5. cluster_desc = ClusterDescription()
  6. group_desc = GroupDescription()
  7. configs = Configs()
  8. group_desc.DesiredVMCount = 1
  9. group_desc.InstanceType = "ecs.t1.small"
  10. cluster_desc.add_group("group1", group_desc)
  11. configs.add_system_disk(40, 'ephemeral')
  12. configs.add_data_disk(40, 'ephemeral')
  13. cluster_desc.Configs = configs
  14. cluster_desc.Name = "BatchcomputePythonSDK"
  15. # image_id is a image created in batchcompute service before.
  16. # or an Ecs image Id.
  17. cluster_desc.ImageId = image_id
  18. print cluster_desc.Configs.Disks.SystemDisk.Type
  19. print cluster_desc.Configs.Disks.SystemDisk.Size
  20. print cluster_desc.Configs.Disks.DataDisk.Type
  21. print cluster_desc.Configs.Disks.DataDisk.Size
  22. print client.create_cluster(cluster_desc).Id
  23. except ClientError, e:
  24. print (e.get_status_code(), e.get_code(), e.get_requestid(), e.get_msg())
本文导读目录