EC2、VPC、S3リソースをプロビジョニングするためのクラウドフォーメーションテンプレートがありますが、そのテンプレートから特定のリソースタイプ(EC2のみなど)のスタックを作成したいとします。 aws cliを使用しましたが、リソースタイプ "AWS :: EC2 :: Instance"が表示されましたが、エラーが発生しましたCreateStackオペレーションを呼び出すときにエラーが発生しました(ValidationError):リソースタイプAWS :: S3 :: BucketパラメータResourceTypes [AWS :: EC2 :: Instance] "で許可されていません。 スタックリソースを賢明に作成するにはどうすればいいですか?aws cloudformテンプレートから特定のリソースタイプのスタックを作成する方法
0
A
答えて
0
方法1:
以下に示すようにResourceTypeが呼ばれる入力パラメータを追加します。作成するResource-Typeを入力としてCFNテンプレートに渡します。
Parameters:
ResourceType:
Description: Resource Types
Type: String
AllowedValues:
- EC2
- RDS
- VPC
- S3
対応する条件を追加:
Conditions:
CheckCreateEC2:
Fn::Equals: [ Ref: ResourceType, "EC2" ]
CheckCreateRDS:
Fn::Equals: [ Ref: ResourceType, "RDS" ]
CheckCreateVPC:
Fn::Equals: [ Ref: ResourceType, "VPC" ]
CheckCreateS3:
Fn::Equals: [ Ref: ResourceType, "S3" ]
そしてそれに応じてリソースタイプとcorressponding条件チェックを作成します。
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Condition: CheckCreateEC
Properties:
.
.
.
MyRDSInstance:
Type: AWS::RDS::DBInstance
Condition: CheckCreateRDS
Properties:
.
.
.
MyRDSInstance:
Type: AWS::S3::Bucket
Condition: CheckCreateRDS
Properties:
.
.
.
この方法であなたはのInputParameter が作成されるように渡すリソース型にcorresspondingのみリソース。
方法2:
することはできAWS Nested Stacks。これを使用すると、リソースタイプごとに個別の共通テンプレートを維持できますが、それらの間の依存関係は維持され、スタック全体が作成されます。
この方法は、リソースタイプごとに個別のテンプレートを管理できる場合は、より適しています。これにより、柔軟性と分離性が向上します(特定のリソースタイプの条件/パラメータを変更する必要がある場合は、特定のテンプレートを更新する必要があります)。
関連する問題
- 1. そのCloudformスタックを終了するためのIAMロールを持つAWS Cloudformテンプレート
- 2. AWS LambdaのMetricFilterをCloudformテンプレート内に定義する方法は?
- 3. 単体テストの方法AWS Cloudformテンプレート
- 4. AWS Cloudform JSONテンプレートからc#オブジェクト
- 5. userdataファイルをAWS Cloudformスタックに渡す
- 6. cloudformテンプレートを使用してcloudwatchイベントを作成するには?
- 7. AWS Cloudformテンプレートの設定が無効です
- 8. AWSリソースが属するCloudFormationスタックを特定する方法は?
- 9. AWS Cloudformテンプレート出力でウィンドウFQDN(ホスト名)を出力する方法は?
- 10. CloudformテンプレートのすべてのAWSリソースの出力パラメータを取得
- 11. cloudformテンプレートの展開を自動化する方法
- 12. 特定のデータファイルからMySQLでテーブルを作成する方法
- 13. 特定のVPCでAWS RDSを作成
- 14. 特定のテンプレートのデータ型の条件を作成する方法
- 15. AWS cloudformを使用してEC2インスタンスを起動する方法
- 16. AWS経由でジオロケーションを作成する方法:cloudfromationテンプレート?
- 17. Cloudformを使用してAWSオーロラでPostgresを指定する方法は?
- 18. 特定の条件でテンプレートが作成されるのを止める方法
- 19. 特定の型から派生した型のテンプレートを特化する方法
- 20. 一部のリソースタイプからプロパティページを非表示にする方法
- 21. 1から特定の番号へのリストの作成方法
- 22. CloudformテンプレートのCORS for API Gatewayを有効にする
- 23. 特定のAWSからのAWS DynamoDBアクセスを制限するVPC
- 24. AWSでCFTスタックの作成者を確認できますか?
- 25. Java Utilスタックの固定スタックサイズを作成する方法はありますか
- 26. RDD [文字列]から特定のフィールドのhashMapを作成する方法は?
- 27. Googleシート内の特定のセルからデータセットを作成する方法
- 28. llvm-generalの特定のブランチをスタックで使用する方法
- 29. Cloudformを使用して他のVPC EC2インスタンスからRDSにアクセスする方法
- 30. AWS S3ストレージでVHDからAMIを作成する方法
ありがとうございました。わかった。 –