如果您需要通过配置文件方式快速创建和管理ECI类型的伸缩组,则可以通过调用API ApplyScalingGroup来实现该功能。
接口说明
接口说明
ApplyScalingGroup 目前支持以 Kubernetes Deployment 资源定义格式快速创建 ECI 伸缩组。同时支持 ECI 实例对 Kubernetes YAML 拓展 annotation,更多信息,请参见本文的《支持的 annotation 列表》。
YAML 配置与伸缩组的映射关系:通过 YAML 中定义的namespace、kind、name三元组映射伸缩组name,一个地域(region)下同一个 YAMLl 配置只能映射同一个伸缩组。例如:
如果使用默认命名空间(namespace)下name为nginx的 Deployment YAML 配置,则映射同地域(region)下名称为k8s_default_Deployment_nginx的伸缩组。
基于 YAML 配置管理伸缩组的逻辑:
当 YAML 配置映射伸缩组存在时,会基于 YAML 配置更新伸缩组。
当 YAML 配置映射伸缩组不存在时,会基于 YAML 配置创建对应伸缩组。
注意事项
当 YAML 配置未指定 VPC、vSwitch、安全组 annotation 时,系统会自动创建默认 VPC,在该 VPC 下会创建默认交换机,以及创建弹性伸缩的默认安全组(
ess-default-sg)。其中,安全组策略默认开放 TCP 协议的 22、3389 端口以及 ICMP(IPv4)协议,如果您有其他端口协议需求,可另行调整安全组策略。当使用公网镜像时,需配置开启公网访问能力,设置
k8s.aliyun.com/eci-with-eip pod annotation开启 EIP 功能。ApplyScalingGroup 应用 YAML 配置后,伸缩组及伸缩配置会立即生效,如果指定 replicas>0,则会自动创建资源。
支持的 annotation 列表
更多 annotation 信息,请参考ECI Pod Annotation 。
| 参数 | 示例值 | 说明 |
| k8s.aliyun.com/ess-scaling-group-min-size | 1 | 伸缩组最小值。默认值:0。 |
| k8s.aliyun.com/ess-scaling-group-max-size | 20 | 伸缩组最大值。默认值:max(replicas, 30)。 |
| k8s.aliyun.com/eci-ntp-server | 100.100.. | NTP Server。 |
| k8s.aliyun.com/eci-use-specs | 2-4Gi | 2 核 4 G 规格配置。更多信息,请参见多规格创建 Pod。 |
| k8s.aliyun.com/eci-vswitch | vsw-bp1xpiowfm5vo8o3c**** | 指定交换机 ID,支持指定多个交换机实现多可用区功能。 |
| k8s.aliyun.com/eci-security-group | sg-bp1dktddjsg5nktv**** | 指定安全组 ID。要求如下:支持指定一个或多个安全组,最多可以指定 5 个安全组;指定的安全组必须属于同一 VPC;指定的安全组的类型必须相同。 |
| k8s.aliyun.com/eci-sls-enable | "false" | 配置为 false 表示关闭日志采集功能。通过 SLS CRD 方式采集日志时,如果某些 Pod 不需要采集日志,可配置该 Annotation 来关闭日志采集功能,避免系统自动创建 Logtail 而造成资源浪费。 |
| k8s.aliyun.com/eci-spot-strategy | SpotAsPriceGo | 抢占式实例的出价策略,可根据需要进行配置。SpotWithPriceLimit:自定义设置抢占实例价格上限。此时必须设置k8s.aliyun.com/eci-spot-price-limit;SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。 |
| k8s.aliyun.com/eci-spot-price-limit | "0.5" | 抢占式实例的每小时价格上限,最多支持精确到小数点后三位。仅当k8s.aliyun.com/eci-spot-strategy设置为SpotWithPriceLimit时有效。 |
| k8s.aliyun.com/eci-with-eip | "true" | 配置为 true 表示自动创建并绑定 EIP。 |
| k8s.aliyun.com/eci-data-cache-bucket | default | 指定 DataCache 的 Bucket。使用 DataCache 创建 Pod 时必须配置。 |
| k8s.aliyun.com/eci-data-cache-pl | PL1 | 基于 DataCache 创建的云盘的性能等级。默认使用 ESSD 云盘,性能等级默认为 PL1。 |
| k8s.aliyun.com/eci-data-cache-provisionedIops | "40000" | ESSD AutoPL 云盘预配置的读写 IOPS。取值范围:0~min{50000, 1000 * 容量-基准性能},基准性能=min{1800+50 * 容量, 50000}。更多信息,请参见ESSD AutoPL 云盘。如果添加了该 Annotation,则基于 DataCache 创建的云盘类型为 ESSD AutoPL 云盘。 |
| k8s.aliyun.com/eci-data-cache-burstingEnabled | "true" | ESSD AutoPL 云盘是否开启 Burst(性能突发)。更多信息,请参见ESSD AutoPL 云盘。如果添加了该 Annotation,则基于 DataCache 创建的云盘类型为 ESSD AutoPL 云盘。 |
| k8s.aliyun.com/eci-custom-tags | "env:test,name:alice" | 绑定的标签(Tag)字符串,最多可以绑定 3 个标签。标签键和标签值之间用半角冒号(:)隔开,多个标签之间用半角逗号(,)隔开。 |
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
调试
授权信息
|
操作 |
访问级别 |
资源类型 |
条件关键字 |
关联操作 |
|
ess:ApplyScalingGroup |
create |
*全部资源
|
无 | 无 |
请求参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| ClientToken |
string |
否 |
保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性。 |
123e4567-e89b-12d3-a456-42665544**** |
| Content |
string |
是 |
配置文件内容。 |
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx annotations: k8s.aliyun.com/eip-bandwidth: 10 k8s.aliyun.com/eci-with-eip: true spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80 |
| RegionId |
string |
否 |
所属地域的 ID。 |
cn-hangzhou |
返回参数
|
名称 |
类型 |
描述 |
示例值 |
|
object |
Schema of Response |
||
| RequestId |
string |
请求 ID。 |
CC107349-57B7-4405-B1BF-9BF5AF7F**** |
| ScalingGroupId |
string |
生效的伸缩组 ID。 |
asg-bp1igpak5ft1flyp**** |
示例
正常返回示例
JSON格式
{
"RequestId": "CC107349-57B7-4405-B1BF-9BF5AF7F****",
"ScalingGroupId": "asg-bp1igpak5ft1flyp****"
}
错误码
|
HTTP status code |
错误码 |
错误信息 |
描述 |
|---|---|---|---|
| 400 | IdempotentParameterMismatch | The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical. |
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。