0

最近、私は、terraformを使用してAWSインフラストラクチャを構築して、いくつかのアプリケーションでクラスタ環境をセットアップする状況に遭遇しました。テラフォームスクリプトを適用すると、必要なモジュールがすべてビルドされ、複数のインスタンスが完全にスピンされてから終了します。これはこのようなことを意味するかもしれないし、とにかくそのようなインフラを構築するためにterraformが大きく働くことは何もない。指定した順序でterrafromを使用してAWSインフラストラクチャを構築

クラスタ化された方法でアプリケーションを展開するためにこのようなインフラストラクチャを設定しようとしている場合、構成管理ツールを使用しています。 ec2インスタンスの構築中に、CMスクリプトが呼び出され、それに応じて構成されます。問題はモジュールに依存している場合に起こります。

2(A & B)のコンポーネントがAutoscaleグループの一部であり、2(C & D)のコンポーネントが通常のec2インスタンスであるとします。ここで最初にCを作成したい場合は、Cインスタンスが完全に構成されているAに依存しているか、またはその逆の場合、どのようにしてterraformがこれを達成するのに役立つかを制御できます。

誰かが私の手助けをしてくれますか?事前

答えて

0

ありがとうございますdepends_onパラメータを使用することができます。リソースは他のリソースに明示的に依存することができます。一度依存リソースが正常にプロビジョニングされると、Terraformは順番にリソースを構築します。

https://www.terraform.io/intro/getting-started/dependencies.html

1

他の答えは文字通りの意味で正しいですが、全体的にこれは回避するためのものです。 CMコードをビルドして、成功するまで収束し続けるようにします。特にシェフの場合は、chef-clientクックブックを使用してシェフを実行するサービスを一定間隔で自動的に展開することができます(デフォルトでは30分ですが、短くしたい場合があります)。 "正しい"オーダーを実行するのはうれしいですが、ビザンチンの失敗を扱うときは、オーダーにかかわらず信頼できるコンバージェンスを保証するために過去の自己に感謝します。

関連する問題