将 CreateStack 与 Amazon SDK 或 CLI 配合使用 - Amazon CloudFormation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

CreateStack 与 Amazon SDK 或 CLI 配合使用

以下代码示例演示如何使用 CreateStack

CLI
Amazon CLI

创建 Amazon CloudFormation 堆栈

以下 create-stacks 命令使用 sampletemplate.json 模板创建了名为 myteststack 的堆栈:

aws cloudformation create-stack --stack-name myteststack --template-body file://sampletemplate.json --parameters ParameterKey=KeyPairName,ParameterValue=TestKey ParameterKey=SubnetIDs,ParameterValue=SubnetID1\\,SubnetID2

输出:

{ "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896" }

有关更多信息,请参阅《Amazon CloudFormation 用户指南》中的“堆栈”。

  • 有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 CreateStack

PowerShell
适用于 PowerShell 的工具

示例 1:使用指定名称创建新堆栈。模板是从提供的内容中解析出来的,使用了自定义参数(“PK1”和“PK2”代表模板内容中声明的参数名称,“PV1”和“PV2”代表这些参数的值)。也可以使用“键”和“值”来指定自定义参数,而不是“ParameterKey”和“ParameterValue”。如果堆栈创建失败,则不会将其回滚。

New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" }) ` -DisableRollback $true

示例 2:使用指定名称创建新堆栈。模板是从提供的内容中解析出来的,使用了自定义参数(“PK1”和“PK2”代表模板内容中声明的参数名称,“PV1”和“PV2”代表这些参数的值)。也可以使用“键”和“值”来指定自定义参数,而不是“ParameterKey”和“ParameterValue”。如果堆栈创建失败,则会将其回滚。

$p1 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p1.ParameterKey = "PK1" $p1.ParameterValue = "PV1" $p2 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p2.ParameterKey = "PK2" $p2.ParameterValue = "PV2" New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( $p1, $p2 ) ` -OnFailure "ROLLBACK"

示例 3:使用指定名称创建新堆栈。模板是从 Amazon S3 URL 获得的,使用了自定义参数(“PK1”代表模板内容中声明的参数名称,“PV1”代表该参数的值)。也可以使用“键”和“值”来指定自定义参数,而不是“ParameterKey”和“ParameterValue”。如果堆栈创建失败,则会将其回滚(与指定 -DisableRollback $false 时相同)。

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/mytemplates/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }

示例 4:使用指定名称创建新堆栈。模板是从 Amazon S3 URL 获得的,使用了自定义参数(“PK1”代表模板内容中声明的参数名称,“PV1”代表该参数的值)。也可以使用“键”和“值”来指定自定义参数,而不是“ParameterKey”和“ParameterValue”。如果堆栈创建失败,则会将其回滚(与指定 -DisableRollback $false 时相同)。指定的通知 AEN 将收到发布的堆栈相关事件。

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/mytemplates/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" } ` -NotificationARN @( "arn1", "arn2" )
  • 有关 API 详细信息,请参阅《Amazon Tools for PowerShell Cmdlet 参考》中的 CreateStack

有关 Amazon SDK 开发人员指南和代码示例的完整列表,请参阅 将 Amazon CloudFormation 与 Amazon 开发工具包配合使用。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。