クラウドリソースの使用状況を追跡するにはどうすればよいですか?


14

JenkinsでAWSアプリケーションのデプロイを自動化しようとしています。

現在、UATなどのいずれかの環境でアプリケーションを更新する場合は、Dockerイメージをビルドし、現在のECSタスクを見つけて新しいイメージで更新し、実行中のECSクラスターを見つけて、タスクを更新します。

概して、継続的インテグレーション環境でクラウドリソースID(ECSクラスターID、ECSタスクID、EC2 IDなど)を追跡するためのベストプラクティスは何ですか?

回答:


9

Terraformや場合によってはFugueなど、クラウドの「オーケストレーション」ツールの1つを賢明に使用することが最善の方法のようです。

小規模な環境から始めて、それほど重要ではなく、それほど広範囲ではない環境を選び、それを慎重に自動化可能なコードに解読して、そこから先に進むことができます。

これは、グーグルやその他の流行語指向のメディアアプリケーションでは、広くコードとしてのインフラストラクチャと呼ばれます。

具体的には、TerraformのHCLファイルに環境が記述されている場合、「出力」としてエクスポートされたIDが必要であり、スクリプト/ Jenkinsジョブ/などからのIDを操作できます。


1
おかげで、テラフォームは私が使用しているものの代わりになるかもしれません。いくつかの研究を行う。
クリス

クラウドオーケストレーションツールを使用して展開と更新を行うことが答えです。私は実際に最初のビルドを自動化するためにCloudFormationを使用していますが、それを使用してまだ探していた部分を更新できることに気付いていませんでした。
クリス

これは、可視性の問題を処理する1つの方法です。現在、TotalCloud [ totalcloud.io]を使用しています。クラウドアカウントに存在するリソースの視覚的なトポロジビューを提供します。
ヴィールAbheekシンManhas

1

Netflixは、リソーススプロールの問題に対処する方法を提示しました。彼らは、リソースが使用されていないことが明らかな場合にリソースをクリーンアップする責任があるJanitor Monkeyを作成しました。

Amazon AWSで作成されたリソースを追跡するには、監査ログを生成し、Eddaも作成した時間(および履歴)を検索できるようにします。Eddaでは、AWSリソースを保存および検索できます。

Janitor MonkeyはEddaと統合される可能性があるという言及がありますが、それ以降、これらに関する情報はあまり公開されていません。

現在、AWS CloudTrailAWS Config Rulesを使用すると、サードパーティのソフトウェアがなくても同様の結果を達成できます。EddaとJanitor Monkeyが発表されたとき(2012年から2013年)、これらのサービスは両方ともこれらの種類の問題を解決する準備ができていませんでした。

CloudTrailとConfigを使用すると、リソースの追跡はすでに実施されています。行うべきことは、リストをときどき調べることによって、これらの処理を決定するスクリプトを作成することだけです。


1
おかげで、あなたのリンクを見て、awsはこれのための機能を持っているかもしれないので、私は間違った場所を見ているかもしれません。
クリス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.