AWS CloudFormation
User Guide (API Version 2010-05-15)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

描述并列出堆栈

可以使用两个 AWS CLI 命令获取您的 AWS CloudFormation 堆栈的相关信息:aws cloudformation list-stacksaws cloudformation describe-stacks

注意

请参阅AWS CloudFormation 资源了解 IAM 策略会对用户使用这两个 AWS CLI 命令产生哪些限制。

aws cloudformation list-stacks

使用 aws cloudformation list-stacks 命令可以获取您已创建的任何堆栈的列表(甚至包括已在 90 天内删除的堆栈)。您可以使用选项按堆栈状态(如 CREATE_COMPLETEDELETE_COMPLETE)筛选结果。aws cloudformation list-stacks 命令可返回有关任何正在运行或已删除的堆栈的汇总信息,包括名称、堆栈标识符、模板和状态。

注意

aws cloudformation list-stacks 命令可返回 90 天内删除的堆栈的信息。

以下示例显示具有 CREATE_COMPLETE 状态的所有堆栈的汇总信息:

PROMPT> aws cloudformation list-stacks --stack-status-filter CREATE_COMPLETE [ { "StackId": "arn:aws:cloudformation:us-east-2:123456789012:stack/myteststack/ 644df8e0-0dff-11e3-8e2f-5088487c4896", "TemplateDescription": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "StackStatusReason": null, "CreationTime": "2013-08-26T03:27:10.190Z", "StackName": "myteststack", "StackStatus": "CREATE_COMPLETE" } ]

aws cloudformation describe-stacks

aws cloudformation describe-stacks 命令提供正在运行的堆栈的相关信息。您可以使用选项按堆栈名称筛选结果。此命令将返回有关堆栈的信息,包括名称、堆栈标识符和状态。

以下示例显示 myteststack 堆栈的汇总信息:

PROMPT> aws cloudformation describe-stacks --stack-name myteststack { "Stacks": [ { "StackId": "arn:aws:cloudformation:us-east-2:123456789012:stack/myteststack/a69442d0-0b8f-11e3-8b8a-500150b352e0", "Description": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "Tags": [], "Outputs": [ { "Description": "Name of S3 bucket to hold website content", "OutputKey": "BucketName", "OutputValue": "myteststack-s3bucket-jssofi1zie2w" } ], "StackStatusReason": null, "CreationTime": "2013-08-23T01:02:15.422Z", "Capabilities": [], "StackName": "myteststack", "StackStatus": "CREATE_COMPLETE", "DisableRollback": false } ] }

如果您未使用 --stack-name 选项将输出限制为一个堆栈,则将返回所有正在运行的堆栈的相关信息。

堆栈状态代码

您可以指定一个或多个堆栈状态代码,只列出具有指定状态代码的堆栈。下表说明了各个堆栈状态代码:

堆栈状态 说明

CREATE_COMPLETE

成功创建一个或多个堆栈。

CREATE_IN_PROGRESS

正在创建一个或多个堆栈。

CREATE_FAILED

一个或多个堆栈创建失败。查看堆栈事件可了解所有相关错误消息。创建失败的可能原因包括:没有足够的权限使用堆栈中的所有资源,参数值被 AWS 服务拒绝,或者在资源创建期间超时。

DELETE_COMPLETE

成功删除一个或多个堆栈。已删除的堆栈在 90 天内保留可供查看。

DELETE_FAILED

一个或多个堆栈删除失败。由于删除失败,您可能有一些资源仍在运行,但是您不使用或更新堆栈。再次删除堆栈或查看堆栈事件可了解所有相关错误消息。

DELETE_IN_PROGRESS

正在删除一个或多个堆栈。

REVIEW_IN_PROGRESS 持续创建一个或多个具有预期 StackId 但不含任何模板或资源的堆栈。

重要

具有此状态代码的堆栈将针对可能的最大堆栈数量进行计数。

ROLLBACK_COMPLETE

在堆栈创建失败或明确取消堆栈创建后成功删除一个或多个堆栈。在创建堆栈操作期间创建的所有资源都被删除。

此状态仅在堆栈创建失败后存在。它表示已适当清除未完全创建的堆栈中的所有操作。在此状态下,只能执行删除操作。

ROLLBACK_FAILED

在堆栈创建失败或明确取消堆栈创建后删除一个或多个堆栈失败。删除堆栈或查看堆栈事件了解所有相关错误消息。

ROLLBACK_IN_PROGRESS

在堆栈创建失败或明确取消堆栈创建后正在删除一个或多个堆栈。

UPDATE_COMPLETE

成功更新一个或多个堆栈。

UPDATE_COMPLETE_CLEANUP_IN_PROGRESS

成功更新一个或多个堆栈后正在删除堆栈的旧资源。对于需要替换资源的堆栈更新,AWS CloudFormation 首先创建新资源,然后删除旧资源,以帮助减少堆栈中断。在这种状态下,堆栈已更新可用,但 AWS CloudFormation 仍然会删除旧资源。

UPDATE_IN_PROGRESS

正在更新一个或多个堆栈。

UPDATE_ROLLBACK_COMPLETE

在堆栈更新失败后将一个或多个堆栈成功返回之前的工作状态。

UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS

堆栈更新失败后正在删除一个或多个堆栈的新资源。在这种状态下,堆栈已回滚到之前的工作状态并且可用,但 AWS CloudFormation 仍会删除它在堆栈更新期间创建的所有新资源。

UPDATE_ROLLBACK_FAILED

在堆栈更新失败后将一个或多个堆栈返回之前的工作状态失败。在这种状态下,您可以删除堆栈或继续回滚。您可能需要修复错误,然后堆栈才能返回工作状态。您也可以联系客户支持将堆栈恢复到可用状态。

UPDATE_ROLLBACK_IN_PROGRESS

堆栈更新失败后正在将一个或多个堆栈返回之前的工作状态。