2012-02-01 4 views
1

次のように私はセットアップAWS自動スケーリングを持っています。AWS自動スケーリング機能していない/ CPU使用率は、サブ30%にとどまる

1)は、ロードバランサを作成し、それを1つのインスタンスを登録し、
2)ELBにヘルスチェックを追加しました。
3)2つのアラームが追加されました。
- CPU使用率 - > 60%で60%、スピンアップ1インスタンス。
- CPU使用率< 120%40%、スピンダウン1インスタンス。
4)問題のウェブサイトにトラフィックを送るjMeterスクリプトを書いた:250スレッド、200秒のランプアップ時間、ループカウント5

私が見ていることは非常に奇妙だった。

私は、より多くのユーザーでCPU使用率が上昇すると予想しています。しかし、代わりにCPU使用率は20〜30%の間にとどまっています(これは新しいインスタンスが決して起動しない理由です)。実行中のインスタンスは、100人を超えるユーザーに達するとタイムアウトエラーをスローします。

ウェブサイトが実際にタイムアウトしたときにCPU使用率が非常に低い理由を理解できなくなりました。

アイデア?

答えて

0

これはELBに問題がある可能性があります。 ELBは非常に迅速に拡張されません。ELBには一定の量のトラフィックが必要です。一度にそれを本当に強く打つと、それはそれを拡大するのに役立ちません。したがって、ELBはすべての接続を処理する問題を抱えている可能性があります。

このSSLはありますか? ELBでSSLをやっていますか?これは、アンダースケーリングされたELBにもオーバーヘッドを追加します。

ELBをまったく使用しないことを正直にお勧めします。ハプロキシははるかに優れた製品であり、ほとんどの場合ははるかに速い。私は必要に応じて詳細を述べることができますが、Amazonがcnameとhaproxyでできることをどのように処理するかを見てみましょう...

+0

EC2インスタンスでどのようにハプロキシを使用することができるか詳しく教えてください。 AWSオートスケーリングに関する私の読書はすべてELBのみに基づいています... –

+0

これはSSLではありませんが、今後SSLを追加することを考えていましたか? –

+0

さて、ちょうどhaproxyのページをチェックしてください。本当に素晴らしいプログラムです。クラウドウォッチを使用して、ハプロキシサーバーの背後にあるアプリケーションサーバーでアラームを設定し、ELBと同じように自動スケールすることができます。 – chantheman

0

あなたのニーズに合うように自動スケーリングをテストしているようです。 ASが新しいインスタンスを起動するかどうかを最初に確認するには、CPUアップチェックを25%でトリガーするようにしてください。私はこれが前進することを望んでいるよりもはるかに低いと認識していますが、それはあなたの初期設定が有効であることを確認するのに役立ちます。

2番目の手順として、アプリケーションを見て、CPUがスケーリングのためのASモニターを行うための最良のメトリックであるかどうかを確認する必要があります。あなたのアプリケーションのどこか他の場所にボトルネックがあり、必ずしもCPU関連ではない(Webサーバのチューニング、メモリ、データベース、ストレージなど)可能性があります。どのタイプのコンテンツを提供しているのかは言及していませんでした。それは静的であるか、インタプリタ(PHPのようなものなど)によって生成されますか?独自のカスタムメトリックデータをCloudWatchに送信し、このメトリックを使用してスケーリングを開始することもできます。

また、インスタンスがコールドスタートからのトラフィックを処理できるようになるまでにかかる時間を設定することもできます。 60秒以上かかる場合は、監視のしきい値時間を適切に調整する(またはクールダウン時間を設定する)ことができます。 Chanthemが指摘するように、ELBがインスタンスを登録するには時間がかかります(新しいインスタンスが別のAZにある場合は時間が長くなります)。

このすべてが役立つことを願っています。

0

私たちが発見したことは、t2インスタンスでautoscaleを使用しているときに負荷が重かった場合、それらのインスタンスのCPUクレジットが使い果たされ、その後、CPUの20%に制限されます(監視の観点から、 htopはまだ100%です)。内部的には最大負荷です。

これは、自動スケーリングに誤ったメトリックを送信し、ニュースインスタンスは起動しません。

メトリックを変更したり、自分自身を開発したり、mインスタンスに移動する必要があります。

関連する問題