调用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

实例状态。取值范围:

  • Pending:启动中
  • Running:运行中
  • Succeeded:运行成功
  • Failed:运行失败
  • Scheduling:创建中
  • ScheduleFailed:创建失败
  • Restarting:重启中
  • Updating:更新中
  • Terminating:终止中
  • Expired:过期
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

实例状态。可能值:

  • Pending:启动中
  • Running:运行中
  • Succeeded:运行成功
  • Failed:运行失败
  • Scheduling:创建中
  • ScheduleFailed:创建失败
  • Restarting:重启中
  • Updating:更新中
  • Terminating:终止中
  • Expired:过期
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

事件类型,可能值:

  • Normal
  • Warning
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

实例的抢占策略。取值范围:

  • NoSpot(默认):正常按量付费实例。
  • SpotWithPriceLimit:设置上限价格的抢占式实例。
  • SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。
SpotPriceLimit double 0.025

抢占式实例的每小时最高价格。

仅当SpotStrategy为SpotWithPriceLimit时返回。

EphemeralStorage Integer 20

临时存储空间大小。单位为:GiB。

TenantEniInstanceId String i-xxx

该参数未开放使用。

Discount Integer 9

折扣。

RestartPolicy String Never

容器组的重启策略。取值范围:

  • Never:不重启
  • Always:始终重启
  • OnFailure:失败时重启
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。可能值:

  • None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。
  • HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。
  • Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有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

镜像拉取策略。可能值:

  • Alway:总是拉取。每次都拉取镜像。
  • IfNotPresent:按需拉取。优先使用本地镜像,本地没有镜像时则拉取镜像。
  • Never:从不拉取。使用本地镜像,不拉取镜像。
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

容器状态。可能值:

  • Waiting:启动中
  • Running:运行中
  • 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配置为/bin/bash时,需要配置为true。

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

容器状态,可能值:

  • Waiting
  • Running
  • 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。可能值:

  • None:该卷不感知任何后续在此卷或其子目录上执行的挂载操作。
  • HostToCotainer:该卷将会感知到后续在此卷或其子目录上的挂载操作。
  • Bidirectional:和HostToCotainer类似,能感知挂载操作。另外,该卷将被传播回主机和使用同一卷的所有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

指定的版本中选择字段的路径。目前只支持 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

数据卷类型,可能值:

  • EmptyDirVolume
  • NFSVolume
  • ConfigFileVolume
  • FlexVolume
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"
  } ]
}

错误码

访问错误中心查看更多错误码。