调用DescribeContainerGroups批量获取ECI实例(即容器组)信息。
接口说明
当ECI实例运行终止后,底层计算资源将会被回收,实例信息的保留情况如下:
- 对于运行成功终止的ECI实例,保留最近运行成功的100个实例信息(所有地域总和),其余实例信息将被清理。
- 对于运行失败终止的ECI实例,实例信息仅保留24小时,之后将被清理。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | DescribeContainerGroups |
系统规定参数。取值:DescribeContainerGroups。 |
RegionId | String | 是 | cn-hangzhou |
实例所属的地域ID。 |
ZoneId | String | 否 | cn-hangzhou-h |
实例所属的可用区。如果取值为空,则表示由系统选择。 默认值为空。 |
VSwitchId | String | 否 | vsw-bp1jrgfqqy54kg5hc**** |
实例所属的虚拟交换机ID。 |
NextToken | String | 否 | d78f2dd8-5979-42fe-****-b16db43be5bc |
下一个查询开始的Token,NextToken为空表示没有下一个。 说明 首次查询时无需设置该参数,后续查询的Token从返回结果中获取。
|
Limit | Integer | 否 | 20 |
限定此次返回资源的数量。如果不设置,默认返回20个,最大不能超过20个。 说明 返回结果可能小于指定的数量,但不会多于指定的数量。
|
ContainerGroupIds | String | 否 | ["eci-bp17gw49eu09yiwm****", "eci-bp19aq49du01abcm****", "eci-2zegym1qhbmdfr1s****"] |
实例ID序列。最多20个,字符串需按照JSON格式传入。 |
ContainerGroupName | String | 否 | test |
实例名称,即容器组名称。 |
Status | String | 否 | Running |
实例状态。取值范围:
|
ResourceGroupId | String | 否 | rg-aekzh43v***** |
实例所属的资源组ID。如果创建实例时没有指定资源组,实例将自动加入账号下的默认资源组。 |
WithEvent | Boolean | 否 | true |
是否返事件信息。 |
Tag.N.Key | String | 否 | name |
实例标签键。 |
Tag.N.Value | String | 否 | test |
实例标签值。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
TotalCount | Integer | 1 |
实例数量。 |
NextToken | String | d78f2dd8-5979-42fe-****-b16db43be5bc |
下一个查询开始的Token。 |
RequestId | String | 89945DD3-9072-47D0-A318-353284CFC7B3 |
请求ID,唯一标识。 |
ContainerGroups | Array of ContainerGroup |
实例信息列表。 |
|
Status | String | Running |
实例状态。可能值:
|
CreationTime | String | 2018-08-02T15:00:00Z |
接到请求后的系统创建时间。UTC时间,RFC3339标准。 |
VpcId | String | vpc-1vzjjflab6wvjox**** |
实例所属的VPC ID。 |
InternetIp | String | 192.0.XX.XX |
公网IP。 |
TenantSecurityGroupId | String | sg-xxx |
该参数未开放使用。 |
SecurityGroupId | String | sg-bp12ujq5zpxuyjfo3o8r |
安全组ID。 |
HostAliases | Array of HostAliase |
自定义实例内一个容器的Hostname映射。 |
|
Hostnames | Array of String | ['hehe.com', 'haha.com'] |
主机名。 |
Ip | String | 192.0.XX.XX |
IP地址。 |
Tags | Array of Label |
实例的标签键值对。 |
|
Key | String | name |
标签键。 |
Value | String | test-xh |
标签值。 |
Events | Array of Event |
事件信息,上限 50。 |
|
Type | String | Normal |
事件类型,可能值:
|
LastTimestamp | String | 2018-08-02T15:00:00Z |
事件结束时间。 |
Message | String | Started container |
事件消息。 |
Name | String | test-xxx |
事件的归属对象名。 |
Reason | String | Created |
事件名。 |
Count | Integer | 20 |
事件数量。 |
FirstTimestamp | String | 2018-08-02T15:00:00Z |
事件起始时间。 |
SucceededTime | String | 2019-12-11T04:33:42Z |
容器全部成功退出后的时间。UTC时间,RFC3339标准。 |
SpotStrategy | String | NoSpot |
实例的抢占策略。取值范围:
|
SpotPriceLimit | double | 0.025 |
抢占式实例的每小时最高价格。 仅当SpotStrategy为SpotWithPriceLimit时返回。 |
EphemeralStorage | Integer | 20 |
临时存储空间大小。单位为:GiB。 |
TenantEniInstanceId | String | i-xxx |
该参数未开放使用。 |
Discount | Integer | 9 |
折扣。 |
RestartPolicy | String | Never |
容器组的重启策略。取值范围:
|
Memory | Float | 4.0 |
实例级别内存大小。 |
TenantVSwitchId | String | vsw-xxx |
该参数未开放使用。 |
Containers | Array of Container |
实例包含的容器列表。 |
|
LivenessProbe | Object |
存活探针。 |
|
SuccessThreshold | Integer | 1 |
从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认为1。当前必须为1。 |
InitialDelaySeconds | Integer | 10 |
检查开始执行的时间,以容器启动完成为起点计算。 |
FailureThreshold | Integer | 3 |
从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败),默认为3。 |
TimeoutSeconds | Integer | 10 |
检查超时的时间,默认为1秒,最小为1秒。 |
TcpSocket | Object |
TcpSocket。 |
|
Host | String | 1.2.3.4 |
主机名。 |
Port | Integer | 80 |
端口号。 |
Execs | Array of String | ["/bin/sh", "-c", "echo Hello world > /usr/share/message"] |
执行命令。 |
HttpGet | Object |
HttpGet。 |
|
Scheme | String | HTTP |
HTTP或HTTPS。 |
Path | String | /usr/nginx/ |
HttpGet检测的路径。 |
Port | Integer | 80 |
HttpGet检测的端口。 |
PeriodSeconds | Integer | 5 |
检查执行的周期,默认为10秒,最小为1秒。 |
Commands | Array of String | [/bin/sh echo] |
容器启动命令。 |
VolumeMounts | Array of VolumeMount |
挂载数据卷。 |
|
MountPropagation | String | None |
数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:
|
MountPath | String | /usr/share/ |
挂载目录,容器的挂载目录下的内容被Volume的内容直接覆盖。 |
ReadOnly | Boolean | false |
是否只读。 |
Name | String | test-empty |
数据卷名称。 |
Args | Array of String | ["hello"] |
容器启动参数。 |
Image | String | mysql |
容器镜像。 |
Ports | Array of Port |
暴露端口和协议。 |
|
Protocol | String | TCP |
协议类型。 |
Port | Integer | 8080 |
端口号。可能值:1~65535。 |
RestartCount | Integer | 0 |
重启次数。 |
ImagePullPolicy | String | Always |
镜像拉取策略。可能值:
|
StdinOnce | Boolean | true |
当标准输入为true时,标准输入流将在多个附加会话中保持开启状态。如果StdinOnce设为true,标准输入在容器开启时被打开,在首个客户端附加到标准输入之前都为空,然后会一直保持开启状态,接收数据,直到客户端连接断开,此时标准输入被关闭,在容器重启前一直保持关闭状态。 |
Cpu | Float | 2.0 |
容器的vCPU大小。 |
PreviousState | Object |
上一次状态。 |
|
StartTime | String | 2018-08-02T15:00:00Z |
容器运行开始时间。 |
FinishTime | String | 2018-08-02T15:00:00Z |
容器运行结束时间。 |
DetailStatus | String | working |
状态详情。 |
State | String | Terminated |
容器状态。可能值:
|
Message | String | Back-off 5m0s restarting failed container=test pod=test_eci-xxx(xxx) |
容器状态信息。 |
Signal | Integer | 1 |
容器状态信号。 |
ExitCode | Integer | 0 |
容器运行退出码。 |
Reason | String | Completed |
容器状态Reason。 |
Tty | Boolean | false |
是否开启交互。默认为false。例如:当Command配置为 |
WorkingDir | String | /usr/local/nginx |
工作目录。 |
CurrentState | Object |
容器当前状态。 |
|
StartTime | String | 2019-12-19T12:05:02Z |
容器运行开始时间。 |
FinishTime | String | 2018-08-02T15:00:00Z |
容器运行结束时间。 |
DetailStatus | String | working |
容器状态详情。 |
State | String | Terminated |
容器状态,可能值:
|
Message | String | Back-off 5m0s restarting failed container=test pod=test_eci-xxx(xxx) |
容器状态信息。 |
Signal | Integer | 1 |
容器状态信号。 |
ExitCode | Integer | 0 |
容器运行退出码。 |
Reason | String | Started |
容器状态Reason。 |
Ready | Boolean | true |
指定容器是否已通过其就绪探针。 |
Gpu | Integer | 1 |
GPU个数。 |
SecurityContext | Object |
实例运行的安全上下文。 |
|
ReadOnlyRootFilesystem | Boolean | true |
是否只读根文件系统,目前仅支持True。 |
RunAsUser | Long | 1000 |
用于运行容器进程入口点的UID。 |
Capability | Object |
容器的默认功能集。目前仅支持Cpu/Memory。 |
|
Adds | Array of String | [NET_ADMIN] |
枚举值,目前仅支持:NET_ADMIN。 |
Memory | Float | 2.0 |
容器内存大小。 |
Stdin | Boolean | true |
此容器是否应在容器运行时为标准输入分配缓冲区。如果未设置,则容器中标准输入的读取值将导致EOF。默认为false。 |
Name | String | nginx |
容器名称。 |
EnvironmentVars | Array of EnvironmentVar |
环境变量。 |
|
Key | String | PATH |
环境变量名。 |
Value | String | /usr/bin/ |
环境变量值。 |
ValueFrom | Object |
环境变量值的来源。 如果值不为空,则无法使用。 |
|
FieldRef | Object |
指定字段。 |
|
FieldPath | String | status.podIP |
字段的路径。 |
ReadinessProbe | Object |
就绪探针。 |
|
SuccessThreshold | Integer | 1 |
从上次检查失败后重新认定检查成功的检查次数阈值(必须是连续成功),默认为1。当前必须为1。 |
InitialDelaySeconds | Integer | 5 |
检查开始执行的时间,以容器启动完成为起点计算。 |
FailureThreshold | Integer | 3 |
从上次检查成功后认定检查失败的检查次数阈值(必须是连续失败),默认为3。 |
TimeoutSeconds | Integer | 5 |
检查超时的时间,默认为1秒,最小为1秒。 |
TcpSocket | Object |
TcpSocket。 |
|
Host | String | 1.2.3.4 |
Host。 |
Port | Integer | 8888 |
端口号。 |
Execs | Array of String | ["/bin/sh", "-c", "echo Hello world > /usr/share/message"] |
容器内检测的命令。 |
HttpGet | Object |
HttpGet。 |
|
Scheme | String | HTTP |
HTTP/HTTPS。 |
Path | String | /usr/local |
HttpGet检测的路径。 |
Port | Integer | 8080 |
HttpGet检测的端口号。 |
PeriodSeconds | Integer | 1 |
检查执行的周期,默认为10秒,最小为1秒。 |
EniInstanceId | String | eni-bp14rzqi6fd8satm**** |
弹性网卡ID。 |
InitContainers | Array of Container |
Init容器列表。 |
|
VolumeMounts | Array of VolumeMount |
数据卷挂载。 |
|
MountPropagation | String | None |
数据卷的挂载传播设置。挂载传播允许将Container挂载的卷共享到同一Pod中的其他Container,甚至可以共享到同一节点上的其他Pod。可能值:
|
MountPath | String | /usr/share/ |
挂载目录,容器的挂载目录下的内容被Volume的内容直接覆盖。 |
ReadOnly | Boolean | false |
默认值为False。 |
Name | String | test-empty |
数据卷名称,同 Volume 中的 Name。 |
Args | Array of String | ['hello world'] |
启动参数。 |
Image | String | nginx |
镜像。 |
Ports | Array of Port |
暴露端口和协议。 |
|
Protocol | String | TCP |
协议类型。 |
Port | Integer | 8888 |
端口号。可能值:1~65535。 |
RestartCount | Integer | 5 |
重启次数。 |
ImagePullPolicy | String | Always |
镜像拉取策略。 |
PreviousState | Object |
上一次状态。 |
|
StartTime | String | 2019-12-24T05:35:44Z |
容器运行开始时间。 |
FinishTime | String | 2019-12-24T05:35:44Z |
容器运行结束时间。 |
DetailStatus | String | working |
状态详情。 |
State | String | Terminated |
容器状态,枚举值:Waiting,Running,Terminated。 |
Message | String | Started container |
容器状态信息。 |
Signal | Integer | 1 |
容器状态信号。 |
ExitCode | Integer | 0 |
容器运行退出码。 |
Reason | String | completed |
容器状态 Reason。 |
WorkingDir | String | /usr/test |
工作目录。 |
Cpu | Float | 1.0 |
vCPU大小。 |
CurrentState | Object |
当前状态。 |
|
StartTime | String | 2018-08-02T15:00:00Z |
容器运行开始时间。 |
FinishTime | String | 2018-08-02T15:00:00Z |
容器运行结束时间。 |
DetailStatus | String | working |
状态详情。 |
State | String | Running |
容器状态,枚举值:Waiting,Running,Terminated。 |
Message | String | Created container |
事件消息。 |
Signal | Integer | 1 |
容器状态信号。 |
ExitCode | Integer | 0 |
容器退出码。 |
Reason | String | Started |
容器状态 Reason。 |
Command | Array of String | [/bin/sh echo] |
启动命令。 |
Ready | Boolean | true |
指定容器是否已通过其就绪探针。 |
Gpu | Integer | 1 |
GPU个数。 |
SecurityContext | Object |
容器运行的安全上下文。 |
|
ReadOnlyRootFilesystem | Boolean | true |
是否只读根文件系统,目前仅支持True。 |
RunAsUser | Long | 1557 |
用于运行容器进程入口点的UID。 |
Capability | Object |
容器的默认功能集。目前仅支持Cpu/Memory。 |
|
Adds | Array of String | NET_ADMIN |
枚举值,目前仅支持:NET_ADMIN。 |
Memory | Float | 2.0 |
内存大小。 |
Name | String | Init-xxx |
容器名称。 |
EnvironmentVars | Array of EnvironmentVar |
环境变量。 |
|
Key | String | PATH |
环境变量名。 |
Value | String | /usr/local/bin |
环境变量值。 |
ValueFrom | Object |
环境变量值的来源。 如果值不为空,则无法使用。 |
|
FieldRef | Object |
指定的字段。 |
|
FieldPath | String | status.podIP |
指定的版本中选择字段的路径。目前只支持 |
ContainerGroupId | String | eci-bp1jrgfqqy54kg5hc**** |
实例ID。 |
TenantEniIp | String | 10.10.XX.XX |
该参数未开放使用。 |
InstanceType | String | ecs.g5.large |
指定的ECS实例规格。 |
IntranetIp | String | 172.16.XX.XX |
内网IP。 |
Ipv6Address | String | 2001:XXXX:4:4:4:4:4:4 |
IPv6地址。 |
RegionId | String | cn-hangzhou |
实例所属的地域ID。 |
DnsConfig | Object |
DNS配置信息。 |
|
Searches | Array of String | [svc.local.kubenetes] |
DNS搜索域列表。 |
Options | Array of Option |
对象选项列表,每个对象由Name和Value(可选)构成。 |
|
Value | String | value |
对象变量值。 |
Name | String | name |
对象变量名。 |
NameServers | Array of String | [10.2.*.*] |
DNS服务器IP地址列表。 |
Volumes | Array of Volume |
数据卷信息。 |
|
Type | String | EmptyDirVolume |
数据卷类型,可能值:
|
DiskVolumeDiskId | String | d-xxxx |
DiskVolume的ID。 |
NFSVolumeReadOnly | Boolean | false |
是否只读。 |
ConfigFileVolumeConfigFileToPaths | Array of ConfigFileVolumeConfigFileToPath |
配置文件路径列表。 |
|
Path | String | /usr/bin/ |
相对文件路径。 |
Content | String | hello world |
配置文件内容 (32KB)。 |
FlexVolumeFsType | String | ntfs |
挂载的文件系统类型,默认取决于FlexVolume的script。 |
FlexVolumeDriver | String | flexvolume |
用于FlexVolume的驱动程序名称。 |
DiskVolumeFsType | String | xfs |
数据卷类型。 |
FlexVolumeOptions | String | [nolock,tcp,noresvport] |
FlexVolume对象选项列表。 |
NFSVolumeServer | String | 0eafxxxxx-xxxxx.cn-hangzhou.nas.aliyuncs.com |
NFS服务器地址。 |
NFSVolumePath | String | /eci |
NFS数据卷路径。 |
Name | String | test-empty |
数据卷名称。 |
RamRoleName | String | ram:PassRole |
实例RAM角色名称,ECI与ECS共用实例RAM角色,具体操作,请参见通过API使用实例RAM角色。 |
VSwitchId | String | vsw-bp1vzjjflab6wvjox**** |
虚拟交换机ID。 |
Cpu | Float | 2.0 |
实例级别vCPU大小。 |
ExpiredTime | String | 2018-08-02T15:00:00Z |
由于账户欠费导致实例运行失败的时间。UTC时间,RFC3339标准。 |
ResourceGroupId | String | rg-8db03793gfrz**** |
资源组ID。 |
ZoneId | String | cn-hangzhou-h |
实例所属的可用区。 |
ContainerGroupName | String | test |
实例名称。 |
EciSecurityContext | Object |
容器组运行的安全上下文。 |
|
Sysctls | Array of Sysctl |
系统信息。 |
|
Value | String | 65536 |
变量值。 |
Name | String | kernel.msgmax |
变量名。 |
FailedTime | String | 2018-08-02T15:00:00Z |
实例运行失败的时间。UTC时间,RFC3339标准。 |
示例
请求示例
https://eci.aliyuncs.com/?Action=DescribeContainerGroups
&RegionId=cn-hangzhou
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<DescribeContainerGroupsResponse>
<TotalCount>1</TotalCount>
<NextToken/>
<RequestId>CAABE95E-ED57-56CC-B361-48566745A3CC</RequestId>
<ContainerGroups>
<Discount>10</Discount>
<Memory>4</Memory>
<Containers>
<EnvironmentVars>
<ValueFrom>
<FieldRef/>
</ValueFrom>
<Value>/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</Value>
<Key>PATH</Key>
</EnvironmentVars>
<EnvironmentVars>
<ValueFrom>
<FieldRef/>
</ValueFrom>
<Value>1.15.10-1~stretch</Value>
<Key>NGINX_VERSION</Key>
</EnvironmentVars>
<EnvironmentVars>
<ValueFrom>
<FieldRef/>
</ValueFrom>
<Value>1.15.10.0.3.0-1~stretch</Value>
<Key>NJS_VERSION</Key>
</EnvironmentVars>
<ReadinessProbe>
<HttpGet/>
<TcpSocket/>
</ReadinessProbe>
<Memory>0</Memory>
<LivenessProbe>
<HttpGet/>
<TcpSocket/>
</LivenessProbe>
<Cpu>0</Cpu>
<Image>registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:latest</Image>
<Gpu>0</Gpu>
<PreviousState>
<FinishTime/>
<State/>
<StartTime/>
</PreviousState>
<Name>container-1</Name>
<RestartCount>0</RestartCount>
<Ready>true</Ready>
<WorkingDir/>
<ImagePullPolicy>IfNotPresent</ImagePullPolicy>
<CurrentState>
<FinishTime/>
<State>Running</State>
<StartTime>2021-09-08T02:49:52Z</StartTime>
</CurrentState>
<SecurityContext>
<Capability/>
</SecurityContext>
</Containers>
<Cpu>2</Cpu>
<EciSecurityContext/>
<FailedTime/>
<IntranetIp>172.16.XX.XX</IntranetIp>
<ContainerGroupName>container-group-1631069337474</ContainerGroupName>
<DnsConfig/>
<InternetIp/>
<ExpiredTime/>
<InstanceType>ecs.c5.large</InstanceType>
<SpotStrategy>SpotAsPriceGo</SpotStrategy>
<Status>Running</Status>
<ZoneId>cn-beijing-g</ZoneId>
<SucceededTime/>
<SecurityGroupId>sg-2ze81zoc3yl7a3we****</SecurityGroupId>
<VSwitchId>vsw-2ze23nqzig8inprou****</VSwitchId>
<RestartPolicy>Always</RestartPolicy>
<VpcId>vpc-2zeghwzptn5zii0w7****</VpcId>
<CreationTime>2021-09-08T02:49:40Z</CreationTime>
<EniInstanceId>eni-2ze80ferll5c3wjk****</EniInstanceId>
<ContainerGroupId>eci-2zeg7owsmm74shw8****</ContainerGroupId>
<RegionId>cn-beijing</RegionId>
</ContainerGroups>
</DescribeContainerGroupsResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"TotalCount" : 1,
"NextToken" : "",
"RequestId" : "CAABE95E-ED57-56CC-B361-48566745A3CC",
"ContainerGroups" : [ {
"Discount" : 10,
"Memory" : 4,
"Containers" : [ {
"EnvironmentVars" : [ {
"ValueFrom" : {
"FieldRef" : { }
},
"Value" : "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"Key" : "PATH"
}, {
"ValueFrom" : {
"FieldRef" : { }
},
"Value" : "1.15.10-1~stretch",
"Key" : "NGINX_VERSION"
}, {
"ValueFrom" : {
"FieldRef" : { }
},
"Value" : "1.15.10.0.3.0-1~stretch",
"Key" : "NJS_VERSION"
} ],
"ReadinessProbe" : {
"HttpGet" : { },
"TcpSocket" : { }
},
"Memory" : 0,
"LivenessProbe" : {
"HttpGet" : { },
"TcpSocket" : { }
},
"Cpu" : 0,
"Ports" : [ ],
"Image" : "registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:latest",
"Gpu" : 0,
"PreviousState" : {
"FinishTime" : "",
"State" : "",
"StartTime" : ""
},
"Name" : "container-1",
"RestartCount" : 0,
"Ready" : true,
"WorkingDir" : "",
"VolumeMounts" : [ ],
"ImagePullPolicy" : "IfNotPresent",
"CurrentState" : {
"FinishTime" : "",
"State" : "Running",
"StartTime" : "2021-09-08T02:49:52Z"
},
"SecurityContext" : {
"Capability" : { }
}
} ],
"Cpu" : 2,
"EciSecurityContext" : { },
"FailedTime" : "",
"IntranetIp" : "172.16.XX.XX",
"ContainerGroupName" : "container-group-1631069337474",
"Volumes" : [ ],
"DnsConfig" : { },
"InternetIp" : "",
"Events" : [ ],
"ExpiredTime" : "",
"InstanceType" : "ecs.c5.large",
"SpotStrategy" : "SpotAsPriceGo",
"Tags" : [ ],
"Status" : "Running",
"InitContainers" : [ ],
"ZoneId" : "cn-beijing-g",
"SucceededTime" : "",
"SecurityGroupId" : "sg-2ze81zoc3yl7a3we****",
"VSwitchId" : "vsw-2ze23nqzig8inprou****",
"RestartPolicy" : "Always",
"VpcId" : "vpc-2zeghwzptn5zii0w7****",
"CreationTime" : "2021-09-08T02:49:40Z",
"EniInstanceId" : "eni-2ze80ferll5c3wjk****",
"ContainerGroupId" : "eci-2zeg7owsmm74shw8****",
"RegionId" : "cn-beijing"
} ]
}
错误码
访问错误中心查看更多错误码。