AWS CloudFormation 取り込みの例: リソースの定義 - AMS Advanced Application デベロッパーガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS CloudFormation 取り込みの例: リソースの定義

AMS AWS CloudFormation 取り込みを使用する場合は、CloudFormation テンプレートをカスタマイズし、CloudFormation 取り込み変更タイプ (ct-36cn2avfrrj9v) を使用して RFC の AMS に送信します。複数回再利用できる CloudFormation テンプレートを作成するには、CloudFormation テンプレートでハードコーディングするのではなく、スタック設定パラメータを CloudFormation 取り込み変更タイプ実行入力に追加します。最大の利点は、テンプレートを再利用できることです。

AMS CloudFormation の取り込み変更タイプ入力スキーマを使用すると、CloudFormation テンプレートで最大 60 個のパラメータを選択し、カスタム値を指定できます。

この例では、AMS CloudFormation 取り込み CT のパラメータとして、さまざまな CloudFormation テンプレートで使用できるリソースプロパティを定義する方法を示します。このセクションの例では、SNS トピックの使用状況を具体的に示しています。

例 1: AWS CloudFormation SNSTopic リソースTopicNameプロパティをハードコードする

この例では、CloudFormation テンプレートで AWS CloudFormation SNSTopic リソースTopicNameプロパティをハードコードします。Parameters セクションは空であることに注意してください。

新しい CloudFormation テンプレートを作成することなく、新しいスタックの SNSTopic 名の値を変更できる CloudFormation テンプレートを作成するには、CloudFormation 取り込み変更タイプの AMS Parametersセクションを使用して、その設定を行うことができます。これにより、後で同じ CloudFormation テンプレートを使用して、別のSNSTopic名前の新しいスタックを作成します。

{ "AWSTemplateFormatVersion" : "2010-09-09", "Description" : "My SNS Topic", "Parameters" : { }, "Resources" : { "SNSTopic" : { "Type" : "AWS::SNS::Topic", "Properties" : { "TopicName" : "MyTopicName" } } } }

例 2: SNSTopic リソースを使用して AMS 変更タイプのパラメータを参照する

この例では、CloudFormation テンプレートで定義されたSNSTopicリソースTopicNameプロパティを使用して、AMS 変更タイプの を参照Parameterします。

{ "AWSTemplateFormatVersion" : "2010-09-09", "Description" : "My SNS Topic", "Parameters" : { "TopicName" : { "Type" : "String", "Description" : "Topic ID", "Default" : "MyTopicName" } }, "Resources" : { "SNSTopic" : { "Type" : "AWS::SNS::Topic", "Properties" : { "TopicName" : { "Ref" : "TopicName"} } } } }

例 3: AMS 取り込み変更タイプで JSON 実行パラメータファイルを送信して SNS トピックを作成する

この例では、SNS トピック を作成する AMS 取り込み CT を使用して JSON 実行パラメータファイルを送信しますTopicName。SNS トピックは、この例に示す変更可能な方法で CloudFormation テンプレートで定義する必要があります。

{ "Name": "cfn-ingest", "Description": "CFNIngest Web Application Stack", "CloudFormationTemplateS3Endpoint": "$S3_PRESIGNED_URL", "VpcId": "VPC_ID", "Tags": [ {"Key": "Enviroment Type", "Value": "Dev"} ], "Parameters": [ {"Name": "TopicName", "Value": "MyTopic1"} ], "TimeoutInMinutes": 60 }

例 4: 同じ CloudFormation テンプレートを参照する新しい変更タイプを送信する

この JSON の例では、CloudFormation テンプレートを変更せずに SNS TopicName値を変更します。代わりに、CloudFormation テンプレートから新しいデプロイ | 取り込み | スタックを送信する | 同じ CFN テンプレートを参照する変更タイプを作成します。

{ "Name": "cfn-ingest", "Description": "CFNIngest Web Application Stack", "CloudFormationTemplateS3Endpoint": "$S3_PRESIGNED_URL", "VpcId": "VPC_ID", "Tags": [ {"Key": "Enviroment Type", "Value": "Dev"} ], "Parameters": [ {"Name": "TopicName", "Value": "MyTopic2"} ], "TimeoutInMinutes": 60 }

例 5: CloudFormation テンプレートでデフォルトのパラメータ値を使用する

この例では、Parameters実行パラメータにTopicName値が指定されていないため、SNS TopicName = 'MyTopicName' が作成されます。Parameters 定義を指定しない場合、CloudFormation テンプレートのデフォルトのパラメータ値が使用されます。

{ "Name": "cfn-ingest", "Description": "CFNIngest Web Application Stack", "CloudFormationTemplateS3Endpoint": "$S3_PRESIGNED_URL", "VpcId": "VPC_ID", "Tags": [ {"Key": "Enviroment Type", "Value": "Dev"} ], "TimeoutInMinutes": 60 }