web-dev-qa-db-ja.com

AWSアプリケーションロードバランサーに2つのサブネットが必要なのはなぜですか?

Awsでアプリケーションロードバランサーを作成しようとすると(これまではクラシックなものを問題なく使用していました)、次のメッセージが表示されます。

At least two subnets must be specified

ALBで2つのサブネットを指定する必要があるのはなぜですか?それを作成し、単一のサブネット内のインスタンス間でLBに使用する方法はありますか?

11
George

したがって、ここで明確にするために。 @pasmwelは基本的にドキュメントのリンクで答えましたが、これはビューを取得しているように見えるので、私はそれをわかりやすくしたいと思います。

1つのリージョンがダウンしてもALBが他のリージョンで動作できるように、ALBには2つのサブネットが必要です。

これはちょっとばかげています... AWSがバックグラウンドでそれを行う可能性があるためです。

通常のELBとTCP LBは、明白な理由もなくこれを必要としません。しかし、サブネットがフォールダウンすると、それらも失敗します。

3
George

1つのリージョンがダウンした場合

上記は間違っており、記載する必要があります

そのため、リージョン内の1つのアベイラビリティーゾーン(AZ)がダウンした場合

質問に対する答えは、AWSが2つのサブネットを必要とする正当な理由はないということです。本番環境で1つのサブネットのみが必要なユースケースと、開発者が1つのサブネットのみで必要なユースケースがあります。サブネットが1つしかないのに、なぜALBを気にするのかと思うかもしれません。答えは、ALBがインスタンスのヘルスを監視できることです(CloudWatchなど、他の監視方法もありますが)。

1
Todd Booth