プログラミング初学者がまとめる〜ロードバランサーについてまとめてみようと思う。ざっと理解する編〜
*自身の言葉で書いてますので、間違っていることもあるかと思いますが、ご了承ください。訂正のコメントを頂けるとありがたいです。*
今回はELBについて書いていこうと思います。前回のVPCの話と関連づけて理解するとベターだと思うので関連付けながら勉強してもらえると幸いです。
◯ ELBとは
ロードバランサーとは、リクエストを複数のターゲットに分散し、安定稼働をするために使われるものです。関門みたいに配置し、ロードバランサーを通ってから、処理が行われるようになります。
AWS ELBはAWS Elastic Load Balancingの略で、AWSにあるロードバランサーのことを指します。またALB、CLB、NLB(後述)という3種類ロードバランサーの総称として使われることがあります。
◯機能・特徴
複数のサーバーへのトラフィックに分散する
AWS ELBで複数のサーバーにアクセスを分散させることで、アクセス集中によるサーバーダウンを防ぎます。それによって、処理速度の向上や、高い可用性の維持が期待できます。
サーバーのヘルスチェック
AWS ELBは、常にリクエストをトレースし、接続しているサーバーをモニタリングしています。それによって、リアルタイムにアプリケーションのヘルスチェックが可能です。異常な動作を検知した場合は、そのサーバーを切り離し、トラフィックをほかのサーバーに分散するので、アプリケーションの安定稼働が維持されます。(ヘルスチェックというのは、サーバーが生きているか確認してくれる機能のことです)
セキュリティ面
AWSのロードバランサーは、VPCの中に配置されているため、必要なトラフィックだけを通過させて、不必要なものや安全性に信頼が持てないものをシャットアウトする、と言うような事ができます。
高い可用性
AWSのロードバランサーを利用することによって、高い可用性を持ってWebサービスを運用・運営できるようになります。
◯ELBの種類3つ
・Application Load Balancer(ALB)
AWS ELBのうち、最新で最も高機能なロードバランサーです。基本的には、ALBを使用することが推奨されています。HTTPトラフィックおよびHTTPSトラフィックの負荷分散、柔軟なアプリケーション管理が必要な場合に向いているロードバランサーです。
・Network Load Balancer(NLB)
毎秒数百万のリクエスト処理が可能で、高度なパフォーマンスが必要な場合に使用します。突発的なトラフィックや急激に変化するトラフィックにも対応可能です。
・Classic Load Balancer(CLB)
複数のAmazon EC2インスタンスにおける基本的な負荷分散を行う、基本的なロードバランサーです。EC2 Classicネットワーク内で構築された既存のアプリケーションがある場合は、Classic Load Balancerを使用しなくてはなりません。
◯ELBの料金
AWS ELBの料金は従量制で、使用した分のみ支払います。最低料金や初期費用は不要で無料利用枠もありません。料金は、使用するロードバランサー、およびリージョンにより異なるので、注意が必要です。料金が発生するものは次の2つです。
・ロードバランサーを使用した時間(1時間単位)
・転送データ量(GB単位)
◯まとめ
今回はロードバランサーについてざっくりまとめてみました。
ざっくりとEC2のセキュリティー周りが理解できていたら幸いです。
最後まで読んで頂き、ありがとうございました!!