質問: ### 前提・実現したいこと ここに質問したいことを詳細に書いてください AWS でAuto Scallingを使用し、自動スケールアウト、スケールインしたい。 ### 発生している問題・エラーメッセージ Cloud Watch上でもCPU使用率は100%付近となっており、スケールアウト条件に到達しているはずではあるのですがスケールアウトしないという状況です。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/961329af1c14e252b5fab1d39839541b.png) ### 試したこと AWS EC2 Auto Scaling オートスケーリングの設定 こちらのページを参考に設定しました。 ただし、Application Load Balancerではなく、Classic Load Balancerを使用していますので、その点は変更しています。 Auto Scallingグループを作成した時に、EC2が1台起動しますが、yes > /dev/null でそのEC2インスタンスにCPUに負荷をかけ、Cloud Watch上で100%付近になっており、スケールアウト条件に到達しているはずではあるのですがスケールアウトしません。Auto Scallingのアクティビティ履歴を見ても、新たにEC2インスタンスを起動しようとしている履歴はありません。手動でターゲットグループの希望数を変更すればスケーリングはうまく行っています。 スケーリングポリシー等はこちらです。↓ ターゲットグループ 希望:1 最小:1 最大:3 ヘルスチェックのタイプ EC2 ヘルスチェックの猶予時間 300sec Decrease Group Size ポリシータイプ:ステップスケーリング 次の場合にポリシーを実行:アラート名 アラームしきい値を超えました: CPUUtilization <= 30(連続する 3600 秒 x 1) アクションを実行:削除 1 インスタンス 次の条件の場合 30 >= CPUUtilization > -無限大 Increase Group Size ポリシータイプ:ステップスケーリング 次の場合にポリシーを実行:アラート名 アラームしきい値を超えました: CPUUtilization >= 80(連続する 300 秒 x 1) アクションを実行:追加 1 インスタンス 次の条件の場合 80 <= CPUUtilization < +無限大 インスタンスは: 300 秒のウォームアップが各ステップ後に必要です
回答: TaichiYanagiyaさん(https://teratail.com/users/TaichiYanagiya)の追加・修正以来のコメントから、該当箇所を確認したところ、EC2インスタンスにアラームが当てられていませんでした。Auto Scallingのスケールポリシーにアラートを設定するだけでなく、EC2インスタンスにもアラームを設定する必要があったようです。 アラートを当てて後、再度CPUに負荷をかけたところ、無事スケールアウト・スケールインが自動でされたのを確認しました。ページを見てくださった皆様、解決方法を考えてくださった皆様、ありがとうございました。