4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

セキュリティグループってなんだい

4
Last updated at Posted at 2026-02-03

1. はじめに

本記事では、初めてAWSのECS(Fargate)でサービスを構築した際、構築自体は成功しているはずなのに「なぜかヘルスチェックが通らず、タスクの再起動が繰り返される」というトラブルに遭遇し、解決した経験を共有します。

結論から言うと、原因は「わかっているつもり」だったセキュリティグループ(SG)の設定ミスでした。

2. セキュリティグループとは?

そもそもセキュリティグループとは何なのか。
一言でいうと、「AWSの各サービスを守る、専用の門番」です。

ECS(アプリ)やRDS(データベース)といったリソースごとに門番が立っており、誰を通して誰を追い返すかを厳しくチェックしています。
イメージしやすく、「マンションのオートロック」に例えてみます。

① 基本は「不審者お断り」(ホワイトリスト形式)

マンションのオートロックと同じで、「許可リスト(鍵)」を持っていない通信は、1ミリも中に入れません。
デフォルトではすべての扉が閉まっているため、明示的に許可をしない限り、誰とも通信できないようになっています。

② 帰りは「顔パス」でOK(ステートフル)

これはセキュリティグループの賢いところで、「一度入るのを許された人なら、帰りはチェックなしで通してくれる」という仕組みです。
「入り口さえ通れば、出口(帰り道)の心配はしなくていい」と覚えておけばOKです。

③ 設定するのは「入り口」と「出口」

インバウンドルール(入り口): 「誰が入ってくるのを許すか」の設定です。今回のトラブルの主役はここです。
アウトバウンドルール(出口): 「中から外へ出る」ときの設定です。こちらは最初から「誰でも出て行っていいよ(全開放)」となっているのが一般的です。

3. 原因:RDS側の門番がECSを拒絶していた

原因を一言で言うと、「RDS側のセキュリティグループで、ECSからの通信を許可していなかったから」です。

RDS側のインバウンドルール設定漏れ

セキュリティグループはリソースごとに付帯しています。当然、接続先のRDSにも専用の門番(SG)がいます。
アプリ(ECS)からデータベース(RDS)へ接続するためには、RDS側のセキュリティグループのインバウンドルールに、「ECSからの通信を許可する」という設定を追加しなければませんでした。

許可しないとどうなるか

  1. ECSタスクからRDSへの疎通(接続)が、RDSの門番によってブロックされる。
  2. アプリケーションがDB接続エラーを吐き、正常に起動できない。
  3. それを見たロードバランサー(ALB)が「このタスクは異常だ」と判断し、ヘルスチェックエラーとしてタスクを強制終了・再起動させる。

これが、無限にタスクが入れ替わり続ける「再起動ループ」の正体でした。

4. 解決策:SG IDでの連携

解決するには、RDSのセキュリティグループに以下のルールを追加します。

タイプ: 使用しているDB(MySQL/PostgreSQLなど)
ソース: ECSタスクに付与しているセキュリティグループのID(例:sg-xxxxxxxx

IPアドレスではなく「セキュリティグループID」を指定することで、ECSのタスクが増減したりIPが変わったりしても、安全に通信を許可し続けることができます。
参考:Amazon VPC セキュリティグループ (AWS公式)

5. まとめ

今回のトラブルを通して学んだのは、「クラウド構築は、点ではなく線で考えることが大切」だということです。

ECS(点)が正しく動いていても、RDS(点)との間の道(線=セキュリティグループ)が繋がっていなければ、サービスは完成しません。
特にECS Fargateはログが追いにくい場合があるため、「まずは通信の門番(SG)を疑ってみる」のが解決への近道です。

これからECSを構築する方は、ぜひ「リソース間の門番さん」同士がちゃんと挨拶できているか、真っ先に確認してみてください!

4
0
0

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
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?