CreateStack与 AWS SDK 或 CLI 配合使用 - AWS SDK 代码示例

文档 AWS SDK 示例 GitHub 存储库中还有更多 S AWS DK 示例

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CreateStack与 AWS SDK 或 CLI 配合使用

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

CLI
AWS CLI

创建 AWS 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" }

有关更多信息,请参阅AWS CloudFormation 用户指南中的堆栈。

  • 有关 API 的详细信息,请参阅AWS 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 网址中获取的('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 网址中获取的('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 的详细信息,请参阅 AWS Tools for PowerShell Cmdlet 参考CreateStack中的。