aws-cdk を使用して EC2 と RDS の間に DependsOn 関係を作成するにはどうすればいいですか? 質問する

aws-cdk を使用して EC2 と RDS の間に DependsOn 関係を作成するにはどうすればいいですか? 質問する

私は現在、AWS CDK の新機能(TypeScript) スタックを作成するEC2インスタンスとRDSデータベースインスタンス。

RDSインスタンスは、EC2インスタンスを起動でき、ユーザーデータが実行されます。

DepensOn私が抱えている問題は、 2 つのリソース間で (Cloudformation) 属性を定義する方法が見つからなかったことです。

回避策としては、ネット化されたスタックを使用することです。

コードは次のようになります。

const instance = new ec2.Instance(this, 'Instance', {...})
const rdsInstance = new rds.DatabaseInstance(this, 'DbInstance', {...})

ここで私は次のようなものを定義したいと思いますinstance.dependsOn(rdsInstance)

同じ問題に遭遇した人はいますか?

ベストアンサー1

ここでの解決策は、addDependency()を使用することですnode。これにより、必要な CloudFormation がすべて処理されますDependsOn

const instance = new ec2.Instance(this, 'Instance', {...});
const rdsInstance = new rds.DatabaseInstance(this, 'DbInstance', {...});

instance.node.addDependency(rdsInstance);

の JSDoc よりaddDependency():別のコンストラクトに順序の依存関係を追加します。依存関係のスコープ内のすべてのコンストラクトは、このコンストラクトのスコープ内のどのコンストラクトよりも前にデプロイされます。

おすすめ記事