サーバーを Amazon Cloud に移行する作業を行っています。その理由は、明らかに、自動スケーリングの可能性、コスト、サービスなどです。
これまでのところ、私は熱心に実験し、フル機能のドキュメントに飛び込もうとしていますが、以前の経験がないため、多くの質問があります.
想定されるインフラストラクチャは次のとおりです。
+-----+
| ELB |
+--+--+
|
+--------------------|--------------------+
| Auto-Scaling Group |
|--------------------|--------------------|
| | |
| +---------+ | +---------+ |
| | varnish |<------+------>| varnish | |
| +----+----+ +---------+ |
| | | |
+-----------------------------------------+
| |
| |
| +------------+ |
+---->|Internal ELB|<-----+
+------+-----+
|
+-----------------------------------------+
| Auto-Scaling Group |
|-----------------------------------------|
| +---------+ | +---------+ |
| | Apache |<------+------>| Apache | |
| +----+----+ +----+----+ |
| | | |
+-----------------------------------------+
| +-----+ |
+-------->| RDS |<--------+
+-----+
つまり、Varnish インスタンスにトラフィックを送信する Elastic LoadBalancer があり、Varnish インスタンスはトラフィックを内部の Elastic LoadBalancer に送信し、トラフィックを Apache フロントエンドに送信します。
今のところ、CloudFormation
テンプレートを指定してインスタンスをブートストラップできるように見えるサービスのような AWS ツールを発見しました。これは素晴らしいようですが、ブートストラップしかできないようです。
少し経験がありPuppet
(そしてこの件に関して AWS の推奨を受けている)、私は素晴らしいツールである Puppet Master に飛び込みました。
実行可能または現実的ではないかもしれない私の考えは、テンプレートを使用して「Puppet Node Stack」を作成するCloudFormation
ことです。これにより、必要に応じてインスタンスが構成され、プロビジョニングされる puppet マスターが接続されます。
スタックの準備ができたら、とインスタンスの両方の Auto-Scaling グループを構成/作成する方法を考えています。Varnish
Apache
CFN には Auto Scaling グループとポリシーを構成するためのリソースがあるようです。そのため、それぞれに 2 つの異なるテンプレートを作成できると思います。
しかし、AS 機能は CFN サービスを介して実行され、すべての init 処理 (および実行user-data
) を実行しますか?
私はまた、PuppetがEC2タグを利用できることをあちこちで読みました.おそらく、対応するタグ(ロールなど)を持つ汎用スタックテンプレートでうまくいくでしょうか?
このアーキテクチャは現実的で実行可能ですか? フィードバックはありますか?
アドバイスありがとうございます。