调用ApplyNodes添加一个或多个按量计费或抢占式计算节点到指定集群中。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
ehpc:ApplyNodes | Write |
|
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
ClusterId | string | 是 | 待添加节点的集群 ID。 您可以通过调用 ListClusters 获取集群 ID。 | ehpc-hz-FYUr32**** |
ImageId | string | 否 | 待添加节点的镜像 ID,仅在未指定 TargetImageId 时,ImageId 生效。 您可以通过调用 ListImages 和 ListCustomImages 接口获取镜像 ID。 说明
如果添加多个节点,仅指定了 TargetImageId 的节点会使用 TargetImageId。
| centos_7_06_64_20G_alibase_20190711.vhd |
ComputeSpotStrategy | string | 否 | 计算节点抢占策略。取值范围:
默认值:NoSpot | NoSpot |
ComputeSpotPriceLimit | float | 否 | 计算节点每小时最高价格,取值是浮点数,最多支持 3 位小数。参数 ComputeSpotStrategy 取值为 SpotWithPriceLimit 时生效。 当同时设置了 ComputeSpotPriceLimit 与 InstanceTypeModel.N.MaxPrice 时,按两者的最小值创建计算节点。 | 0.68 |
SystemDiskType | string | 否 | 系统盘的云盘类型。取值范围:
| cloud_ssd |
SystemDiskSize | integer | 否 | 系统盘的大小。单位:GB 取值范围:40~500 默认值:40 | 40 |
HostNamePrefix | string | 否 | 主机名前缀。方便您分类管理节点。 | compute |
HostNameSuffix | string | 否 | 主机名后缀。方便您分类管理节点。 | 01 |
AllocatePublicAddress | boolean | 否 | 是否分配公网地址。取值范围:
默认值:false | false |
InternetChargeType | string | 否 | 弹性公网 IP 付费类型。取值范围:
| PayByTraffic |
InternetMaxBandWidthIn | integer | 否 | 公网入带宽最大值,单位为 Mbit/s。取值范围:
| 10 |
InternetMaxBandWidthOut | integer | 否 | 公网出带宽最大值,单位为 Mbit/s。取值范围:0~100 默认值:0 | 10 |
Cores | integer | 否 | vCPU 个数。当参数 ResourceAmountType 为 Cores 时,该参数为必选。 同时指定 vCPU 和 Memory 可以定义节点规格。例如,vCPU=2、Memory=16 可以定义配置为 2 vCPU、16 GB 的所有节点规格。结合节点规格、可用区等因素确定可用节点规格集合,并根据价格排序为您创建价格最低的节点。 | 2 |
Memory | integer | 否 | 内存大小,当参数 ResourceAmountType 为 Cores 时,该参数为必选。单位:GB。 同时指定 vCPU 和 Memory 可以定义节点规格。例如,vCPU=2、Memory=16 可以定义配置为 2 vCPU、16 GB 的所有节点规格。结合节点规格、可用区等因素确定可用节点规格集合,并根据价格排序为您创建价格最低的节点。 | 16 |
InstanceFamilyLevel | string | 否 | 实例规格族级别,在指定 Cores 和 Memory 时才生效。取值范围:
默认值:EnterpriseLevel | EntryLevel |
TargetCapacity | integer | 是 | 期望添加的资源数量,具体资源数量依赖 ResourceAmountType 取值。
| 20 |
ResourceAmountType | string | 否 | 期望添加的资源类型。取值范围:
默认值:Instances | Instances |
PriorityStrategy | string | 否 | 抢占式节点申请策略。取值范围:
| LowPriceResourcePlanning |
StrictSatisfiedTargetCapacity | boolean | 否 | 是否满足 TargetCapacity 的数量要求。取值范围:
默认值:true | true |
SystemDiskLevel | string | 否 | 创建 ESSD 云盘作为系统盘使用时,设置云盘的性能等级。取值范围:
默认值:PL0 关于如何选择 ESSD 性能等级,请参见 ESSD 云盘。 | PL0 |
StrictResourceProvision | boolean | 否 | 是否必须满足 TargetCapacity 的数量要求。当 StrictSatisfiedTargetCapacity 为 true 时生效。取值范围:
默认值:false | false |
Round | integer | 否 | 分批创建节点的总批数。 取值范围:1~10 默认值:1 | 1 |
Interval | integer | 否 | 分批创建节点的时间间隔。单位:秒,取值范围:60~600 默认值:60 | 60 |
ZoneInfos | object [] | 是 | 可用区信息。最多可以添加 10 个。 | |
VSwitchId | string | 是 | 待添加节点的交换机 ID。N 的取值范围:1~10。 | vsw-bp1e47optm9g58zcu**** |
ZoneId | string | 是 | 待添加节点的可用区 ID。N 的取值范围:1~10。 说明
多个可用区 ID 之间不能相同。
| cn-hangzhou-b |
InstanceTypeModel | object [] | 否 | 抢占式实例信息。 | |
MaxPrice | float | 否 | 您可以为该抢占式实例支付的每小时最高价格。取值是浮点数,最多支持 3 位小数。 当参数 ComputeSpotStrategy 取值为 SpotWithPriceLimit 时才生效。 N 的取值范围:1~10 | 0.034 |
TargetImageId | string | 否 | 待添加节点的镜像 ID,该镜像必须为 Windows 镜像。 N 的取值范围:1~10 | win2016_1607_x64_dtc_zh-cn_40G_alibase_20210516.vhd |
InstanceType | string | 否 | 待添加的节点规格,默认使用上次扩容或者创建集群时的计算节点规格。 N 的取值范围:1~10 | ecs.n1.tiny |
Tag | object [] | 否 | 标签信息。 | |
Key | string | 否 | 待添加节点的标签键。一旦传入该值,则不允许为空字符串。最多支持 128 个字符,不能以 aliyun 和 acs:开头,不能包含 http://或 https://。 N 的取值范围:1~20 | TestKey |
Value | string | 否 | 待添加节点的标签值。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以 acs:开头,不能包含 http://或者 https://。 N 的取值范围:1~20 | TestValue |
JobQueue | string | 否 | 计算节点加入的队列名称。 您可以通过调用 ListQueues 获取已有队列名称。 | workq |
UserData | string | 否 | 实例自定义数据。需要以 Base64 方式编码,原始数据最多为 16 KB。Linux 操作系统支持 shell 脚本;Windows 操作系统支持 bat 和 powershell 两种格式,在 Base64 编码前,第一行为[bat]或者[powershell]。 说明
因为传输 API 请求时,不会加密您设置的 UserData,建议不要以明文方式传入机密的信息,例如密码和私钥等。如果必须传入,建议加密后,然后以 Base64 的方式编码后再传入,在实例内部以同样的方式反解密。
| ZWNobyBoZWxsbyBlY3Mh |
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "B745C159-3155-4B94-95D0-4B73D4D2****",
"SatisfiedAmount": 10,
"TaskId": "B745C159-3155-4B94-95D0-4B73D4D2****",
"Detail": "Resources Application is satisfied. Creating...",
"InstanceIds": {
"InstanceId": [
"null"
]
}
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidParams | The specified parameter %s is invalid. | 无效的参数:%s |
400 | NotEnabled | You have not enabled this service | 您的账户还未开通此服务 |
400 | InDebt | Your account has overdue payments. | 您的账户已欠费 |
400 | InvalidVswitch | The vSwitch parameter is invalid, or the number of available IP addresses is insufficient. | vSwitch参数无效或可用IP不足量 |
400 | InvalidImage | The image ID is invalid. | 无效镜像ID |
400 | InvaildSystemDiskSize | The system disk size must be greater than or equal to image size. | 系统盘大小必须大于或等于镜像大小 |
400 | InvalidInstanceType.NotSupported | The instance type is invalid. | 无效实例类型 |
400 | InvalidZoneId.ValueNotSupported | The specified ZoneId is invalid. | 无效区域ID |
403 | TooManyComputes | The number of computing nodes exceeds the quota. | 计算节点数超过用户配额 |
403 | TooManyLogins | The maximum number of logged on nodes is exceeded. | 登录节点数超过配额,默认不超过2个。如需更多,请参考使用限制文档中的提升配额方式。 |
403 | TooManyScc | The maximum number of SCC instances is exceeded. | SCC实例数量超过配额,默认不超过15个。如需更多,请参考使用限制文档中的提升配额方式。 |
403 | InvalidClusterStatus | The operation failed due to invalid cluster status. | 集群状态不允许执行本次操作。 |
403 | ConflictOpt | A conflicting operation is running. | 有冲突的操作在执行中,请您稍后再试。 |
403 | ImageNotSupported | The specified image is not supported. | 暂不支持所选的镜像,请您更换镜像后重试。 |
403 | InvalidCapacityNum.ValueNotSupported | The specified TargetCapacity is invalid. | 指定的目标容量值无效 |
403 | RecommendEmpty.InstanceTypeSoldOut | The resource is out of stock. | 资源已售光 |
403 | ResourceTargetAmount.NotSatisfied | The resource application is not satisfied. | 资源申请不满足 |
403 | RecommendEmpty.PriceNotSatisfied | The price limit is not satisfied. | 价格限制不满足 |
403 | QuotaExceed.PayasyougoInstance | The pay-as-you-go instance exceeds the quota. | 后付费实例已超出配额 |
403 | RecommendEmpty.InstanceTypeNoStock | The instanceTypes are out of usage. | 实例规格不可用 |
403 | RecommendEmpty.InstanceTypeNotAuthorized | The recommend instanceTypes are not authorized. | 推荐集合为空。地域/可用区下无合适的备选规格。 |
403 | InvalidOpt | The specified operation is invalid. Please try again later. | 未知的操作,请检查相关参数是否合理,检查后稍后重试。 |
404 | ImageNotFound | The specified image does not exist. | 指定的镜像不存在,请您检查该参数是否正确。 |
404 | ClusterNotFound | The specified cluster does not exist. | 指定的集群不存在,请您检查该参数是否正确。 |
404 | VolumeNotFound | The specified volume does not exist. | 指定的存储不存在,请您检查该参数是否正确。 |
404 | ManagerNotFound | The manager nodes do not exist or their status is abnormal. | 管理节点不存在或状态异常。 |
404 | ObjectNotFound | The specified object is not found. | 指定的对象未找到,请您检查该参数是否正确。 |
404 | VswitchNotFound | The specified vSwitch does not exist. | 指定的Vswitch不存在,请您检查该参数是否正确。 |
406 | EcsError | An error occurred while calling the ECS API operation. | ECS API调用出错 |
406 | EipError | The EIP API request failed. | 请求弹性IP失败 |
406 | DbError | A database service error occurred. | 数据库请求失败 |
406 | AliyunError | An Alibaba Cloud product error occurred. | 阿里云产品错误 |
407 | NotAuthorized | You are not authorized by RAM for this request. | 此请求未获得RAM授权 |
409 | PartFailure | Part of the batch operation failed. | 批量操作部分失败 |
500 | UnknownError | An unknown error occurred. | 未知错误 |
503 | ServiceUnavailable | The request has failed due to a temporary failure of the server | 请求失败,服务暂时不可用 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2024-03-05 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 看变更集 | ||||||||||||||||||||||
| ||||||||||||||||||||||||
2022-10-12 | OpenAPI 错误码发生变更 | 看变更集 | ||||||||||||||||||||||
|