ELBの比較表に補足事項を書き加えてみる(NLB編)

AWS運用自動化サービス「Cloud Automator」

「わたしと仕事、どっちが大事なの?」
「チョコ味といちご味、どっちが好き?」
「こっちのレジとあっちのレジ、どっちがすいてる?」

記録的な猛暑の中、争いながら萎れてる僕らは人間は
どうしてこうも比べたがるのでしょう?

かく言う自分も、夏の日差しに溶けながら、こんなことを思ったのでした。

「ELBって、ALBとNLBとCLBって何が違うの?」

AWSが提供している比較表

Elastic Load Balancing 製品詳細 というページの
「Elastic Load Balancing 製品の比較」という項目内に比較表が掲載されています。
これをみると、ELBの機能比較がひと目でわかります。
これで済ますと、ブログが終わってしまうので、特にNLBについて、上記の表に、6点ほど記載項目の補足事項を記載してみました。(2018年7月時点の仕様をベースにしています。)

補足事項の説明

※1 アクセスログ出力は非対応

ALBとCLBは、アクセスログをS3バケットに出力することができますが、NLBはアクセスログの出力に対応していません。表中の「ログ」は、VPC フローログとCloudTrail ログを意味しているものと思われます。

※2 IPアドレスでのターゲット設定時は、ソースIPアドレスの保持は無効となる/※5 インスタンスでのターゲット設定時に限る

NLBは、ターゲットグループの設定方法によって、ターゲットグループ内のノードに到達するパケットのソースIPアドレスが変わります。

ターゲットグループの設定をインスタンスIDで行った場合

ターゲットグループ内のノードに到達するパケットのソースIPアドレスは、クライアントのIPアドレスになります。

ターゲットグループの設定をIPで行った場合

ターゲットグループ内のノードに到達するパケットのソースIPアドレスは、NLBのIPアドレスになります。

※3 作成時に指定することは不可。作成時に自動付与されたものが維持される

NLBに付与されるIPアドレスは、静的IPアドレスです。ただし、後述のElastic IP アドレスを指定しない限り、Private IPアドレスや、Public IPアドレスを特定のものを指定することはできません。NLB作成時に自動付与されたIPアドレスが維持され静的IPとなります。

※6 Internet Facingの場合、ターゲットのインスタンスは、0.0.0.0/0宛としてインターネットへの経路を保持しておかなければならない

NLBをInternet Facing構成で使う場合、ターゲットグループ内のEC2インスタンスは、Internet Gatewayや、NAT Gatewayもしくはパブリックサブネットの EC2 インスタンスへのルートを 0.0.0.0/0 と指定しておく必要があります。

と、ここまで書いて思い出しましたが、セキュリティグループの付与が、NLBにはできない点も、重要な比較ポイントでした。

まとめ

NLBについて、比較表内の補足事項を記載してみましたが、今後の機能追加や仕様変更で、上記内容が変更する可能性もありますので、ご注意ください。

AWS運用自動化サービス「Cloud Automator」