0
1

AWSでAuto Scaling Groupの作成

Last updated at Posted at 2024-01-05

オートスケーリンググループ

このチュートリアルでは、以下の要件を持つアプリケーションのケースをシミュレートします。アーキテクチャを導入するために、お客様やプロジェクトマネージャーに同様の質問をすることができます。

質問1:強いトラフィックがある場合、アプリケーションが正常に動作するために必要なインスタンス数はいくつですか?つまり、最小限で何台必要ですか?

このチュートリアルでは、アプリケーションは常に最低でも2つの実行中のインスタンスを持っている必要があります。

質問2:AWSのインスタンスにはコストがかかり、無料ではありません。したがって、そのアプリケーションにデプロイできる最大のインスタンス数はいくつですか?

このチュートリアルでは、アプリケーションは最大で5つの実行中のインスタンスを持っている必要があります。

質問3:トラフィックが通常の場合、アプリケーションが良好な状態で動作するための理想的なインスタンス数は何ですか?

このチュートリアルでは、すべてが順調な場合、アプリケーションはできれば3つの実行中のインスタンスを持っている必要があります。

質問4:追加のインスタンスをデプロイするか、逆に不要なインスタンスを削除するための基準は何ですか?

このチュートリアルでは、CPU使用率が40%を超えると、追加のインスタンスがデプロイされる条件です。

チュートリアルの目的

次のアーキテクチャをどのように構築するかを見ていきます。

00e.png

このチュートリアルでは、Application Load Balancerは使用しないことにします。なぜなら、Auto Scaling Groupの作成に焦点を当てるからです。次回のチュートリアルでは、Auto Scaling GroupLoad Balancerを一緒に設定する方法について説明します。

セキュリティグループの作成

EC2 ダッシュボード」にアクセスしてください。「セキュリティグループ」をクリックしてください。

Screenshot 2024-01-06 at 3.46.50.png

セキュリティグループを作成」をクリックしてください。

Screenshot 2024-01-06 at 3.54.07.png

MyInstanceSecurityGroup」というセキュリティグループに名前を付けてください。

Screenshot 2024-01-06 at 3.58.29 copy.png

インバウンドルール」セクションに移動してください。

Screenshot 2024-01-06 at 3.58.29 copy 2.png

ルールを追加」ボタンをクリックしてください。

Screenshot 2024-01-06 at 3.58.29.png

選択肢として、「SSH」を選び、ソースとして「Anywhere-IPv4」を選択してください。
Anywhere-IPv4」は「0.0.0.0/0」と同じです。

Screenshot 2024-01-06 at 4.06.18.png

セキュリティグループを作成」をクリックしてください。

Screenshot 2024-01-06 at 4.13.59.png

起動テンプレートの作成

EC2 ダッシュボード」にアクセスしてください。「起動テンプレート」をクリックしてください。

Screenshot 2024-01-06 at 0.22.40.png

起動テンプレートを作成」をクリックしてください。

Screenshot 2024-01-06 at 0.25.40.png

MyEC2Templace」という起動テンプレートに名前を付けてください。

Screenshot 2024-01-06 at 0.31.12.png

Application and OS Images (Amazon Machine Image)」セクションに移動してください。

Screenshot 2024-01-06 at 0.34.28 copy.png

Amazon Linux」を選んでください。

Screenshot 2024-01-06 at 0.34.28.png

Amazon Linuxを使用していることを確認ください。

Screenshot 2024-01-06 at 0.35.17.png

また、t2.microを使用していることを確認してください。

Screenshot 2024-01-06 at 0.47.06.png

このチュートリアルでは、キーペアが要らないので使用しません。

キーペアなしで続行 (推奨されません)」を選択してください。

Screenshot 2024-01-06 at 0.50.09.png

ネットワーク設定」セクションに移動してください。

Screenshot 2024-01-06 at 4.18.27 copy.png

セキュリティグループを編集」にクリックしてください。

Screenshot 2024-01-06 at 4.18.27.png

MyInstanceSecurityGroup」を選択してください。

Screenshot 2024-01-06 at 4.22.59.png

セキュリティグループを確認ください。

Screenshot 2024-01-06 at 4.23.06.png

「高度な詳細」セクションのユーザーデータに次のコマンドを実行してください。

#!/bin/bash
yum update -y
sudo yum install stress -y

起動テンプレートを作成」をクリックしてください。

Screenshot 2024-01-06 at 4.52.46.png

Auto Scaling グループの作成

EC2 ダッシュボード」にアクセスしてください。「Auto Scaling グループ」をクリックしてください。

Screenshot 2024-01-06 at 4.58.20.png

Auto Scaling グループを作成する」をクリックしてください。

Screenshot 2024-01-06 at 5.01.14.png

MyAutoScaling」というAuto Scaling グループに名前を付けてください。

Screenshot 2024-01-06 at 5.30.41.png

MyEC2Templace」を選んでください。

Screenshot 2024-01-06 at 5.34.44.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 5.38.45.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 5.43.04.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 5.46.02.png

希望を設定ください。

希望するキャパシティ:3
最小の希望する容量:2
最大の希望する容量:5

Screenshot 2024-01-06 at 5.52.30.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 5.56.22.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 5.58.59.png

次へ」ボタンをクリックしてください。

Screenshot 2024-01-06 at 6.02.22.png

Auto Scaling グループを作成する」をクリックしてください。

Screenshot 2024-01-06 at 6.08.31.png

この画面が表示されます。

Screenshot 2024-01-06 at 6.08.40.png

数分後にステータスが変わるはずです。遅かたら、時々ページを更新してください。

Screenshot 2024-01-06 at 6.17.30.png

その間に新しいタブを開き、インスタンス一覧ページにアクセスしてください。そこでEC2の3つのインスタンスが表示されるはずです。

Screenshot 2024-01-06 at 6.17.41.png

変更してください、それぞれのEC2インスタンスの名前を「MyInstance 1」、「MyInstance 2」、および「MyInstance 3」にします。

Screenshot 2024-01-06 at 6.25.02.png

Check

現在、Auto Scaling Groupが正しく機能しているか確認しましょう。

Auto Scaling Groupを最低でも2つの実行中のインスタンスがあるように設定しました。可能であれば3つです。

したがって、テストのために、AWSが新しいEC2インスタンスを自動的にデプロイするかどうかを確認するために、意図的に2つのインスタンスを削除します。

そのため、ランダムに2つのインスタンスを選択してください。

Screenshot 2024-01-06 at 6.34.33.png

インスタンスの状態」ボタンをクリックしてください。

Screenshot 2024-01-06 at 6.34.33.png

インスタンスを終了」をクリックしてください。

Screenshot 2024-01-06 at 6.39.10.png

終了」をクリックしてください。

Screenshot 2024-01-06 at 6.39.23.png

選択した2つのEC2インスタンスは、その後シャットダウンするはずです。

Screenshot 2024-01-06 at 6.39.36.png

もし少し待っていただければ、AWSは自動で新しい2つのEC2インスタンスをデプロイするのが見えるはずです。

Auto Scaling グループは正常に機能しています。おめでとうございます!

Screenshot 2024-01-06 at 6.46.53.png

OLD」として消灯しているインスタンスの名前を変更して、誤りがないようにします。

Screenshot 2024-01-06 at 6.55.29.png

実行中の3つのインスタンスを、「MyInstance 1」、「MyInstance 2」、および「MyInstance 3」と命名してください。

Screenshot 2024-01-06 at 6.58.38.png

自動スケーリングの条件設定(動的スケーリングポリシー)

目的:EC2インスタンスのCPU使用率が40%以上の場合、AWSは自動的に新しいインスタンスをプロビジョニングするようにしたいと考えています。

Auto Scaling グループ」をクリックしてください。

Screenshot 2024-01-06 at 7.04.41.png

MyAutoScaling」をクリックしてください。

Screenshot 2024-01-06 at 7.08.00.png

オートスケーリング」をクリックしてください。

Screenshot 2024-01-06 at 7.10.24.png

動的スケーリングポリシーを作成する」をクリックしてください。

Screenshot 2024-01-06 at 7.15.18.png

ターゲット値」に40入れてください。

Screenshot 2024-01-06 at 7.20.57 copy.png

作成」をクリックしてください。

Screenshot 2024-01-06 at 7.20.57.png

新しいポリシーは作成されました。

CloudWatchの画面に移動すると、アラームが作成されていることに気付くでしょう。

Screenshot 2024-01-06 at 7.28.19.png

Screenshot 2024-01-06 at 7.28.28.png

AWSは1つのインスタンスをオフにして、2つだけを残しました。インスタンスはCPUの使用率が40%未満です。したがって、3つのインスタンスを持つ必要はありません。

ストレステスト

Auto Scaling Groupが、インスタンスのCPU使用率が40%を超える場合に正しく機能しているかどうかを確認しましょう。

2つのインスタンスに接続し、次のコマンドを実行してください。

stress -c 4

約5〜10分待つと、AWSが追加のEC2インスタンスをプロビジョニングしているのに気づくでしょう。

Screenshot 2024-01-06 at 7.56.40.png

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1