Rails初心者エンジニアです。
WebアプリのプロトタイプをAWS上にデプロイ・運用していく予定で、本番環境の構築を進めております。
###実現したいこと
EC2上のWebアプリの可用性を維持(インスタンス数1台を維持)するため、AWS EC2 Auto Scalingでサーバーを自動復旧する設定をしたい
###実施内容
0. EC2で立てたインスタンス(インスタンスタイプ:t2.micro, ストレージ:8G)からAMIを作成
0. 上記1で作成したAMIを使用し、起動設定を作成(インスタンスタイプ、ストレージ、セキュリティグループなどの設定は1と同じ。自動起動したインスタンスにも同じ鍵でSSHログインしたいため、既存のキーペアを選択。)
0. 上記2の起動設定を使用してAuto Scalingグループを作成
Auto Scalingグループの設定内容
・グループサイズ : 希望する容量1、最小キャパシティ1、最大キャパシティ1 ・サブネット : 既存のEC2インスタンスと同じものを選択 ・ロードバランシング : チェックを入れ、ターゲットグループを選択 ・ヘルスチェックのタイプ : EC2 & ELB ・ヘルスチェックの猶予期間 : 300 ・インスタンスのスケールイン保護 : 保護なし スケールインから ・終了ポリシー : Default ・デフォルトのクールダウン : 300
###発生事象
EC2インスタンス(キャプチャのstart-aws-instance)に問題が無いにも関わらず、Auto Scallingによって、インスタンスの自動生成・終了が約8分毎に繰り返されてしまう。
ELBのターゲット一覧(Auto Scalingのヘルスチェックがhealthyとならない)
Auto Scalingグループのアクティビティ履歴(約8分毎にインスタンスの起動・終了を繰り返している)
ポート状態の確認結果
unhealty
1Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port 2udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:* 3udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:* 4udp UNCONN 0 0 0.0.0.0:111 0.0.0.0:* 5udp UNCONN 0 0 0.0.0.0:728 0.0.0.0:* 6udp UNCONN 0 0 [::1]:323 [::]:* 7udp UNCONN 0 0 [fe80::89d:beff:fed1:a24]%eth0:546 [::]:* 8udp UNCONN 0 0 [::]:111 [::]:* 9udp UNCONN 0 0 [::]:728 [::]:* 10tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* 11tcp LISTEN 0 100 127.0.0.1:25 0.0.0.0:* 12tcp LISTEN 0 128 0.0.0.0:111 0.0.0.0:* 13tcp ESTAB 0 36 172.31.11.230:22 60.60.230.194:51511 14tcp LISTEN 0 128 [::]:22 [::]:* 15tcp LISTEN 0 128 [::]:111 [::]:*
healty
1Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port 2udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:* 3udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:* 4udp UNCONN 0 0 0.0.0.0:111 0.0.0.0:* 5udp UNCONN 0 0 0.0.0.0:727 0.0.0.0:* 6udp UNCONN 0 0 [::1]:323 [::]:* 7udp UNCONN 0 0 [fe80::884:abff:fe94:f3e4]%eth0:546 [::]:* 8udp UNCONN 0 0 [::]:111 [::]:* 9udp UNCONN 0 0 [::]:727 [::]:* 10tcp LISTEN 0 128 0.0.0.0:111 0.0.0.0:* 11tcp LISTEN 0 128 0.0.0.0:80 0.0.0.0:* 12tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* 13tcp LISTEN 0 100 127.0.0.1:25 0.0.0.0:* 14tcp TIME-WAIT 0 0 172.31.14.50:80 172.31.28.107:60516 15tcp ESTAB 0 36 172.31.14.50:22 60.60.230.194:51517 16tcp TIME-WAIT 0 0 172.31.14.50:80 172.31.6.186:34352 17tcp TIME-WAIT 0 0 172.31.14.50:80 172.31.28.107:60502 18tcp TIME-WAIT 0 0 172.31.14.50:80 172.31.6.186:34362 19tcp TIME-WAIT 0 0 172.31.14.50:80 172.31.6.186:34376 20tcp LISTEN 0 128 [::]:111 [::]:* 21tcp LISTEN 0 128 [::]:80 [::]:* 22tcp LISTEN 0 128 [::]:22 [::]:*
###質問
インスタンス乱立の要因は、Auto Scalingのヘルスチェックが上手くできてないことと想定しておりますが、詳細分かっておらず困っております。
EC2インスタンス(キャプチャのstart-aws-instance)に問題が生じた場合のみ、Auto Scalingで1台のサーバーを自動復旧するようにしたいのですが、発生事象の原因と対処法について、アドバイスいただきたく、よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/17 09:12
2020/11/17 09:16
2020/11/18 02:18
2020/11/18 04:19
2020/11/18 12:35 編集
2020/11/27 10:09
2020/11/27 10:53 編集
2020/11/27 10:50
2020/11/27 10:54
2020/11/27 11:42
2020/11/27 11:50
2020/11/27 12:05