メニュー
Elastic Load Balancing
ユーザーガイド

Elastic Load Balancing とは

Elastic Load Balancing は、受信アプリケーションのトラフィックを複数のアベイラビリティーゾーンの複数の EC2 インスタンス間で分散します。これにより、アプリケーションの耐障害性が高まります。

ロードバランサーは、クライアントにとって単一の通信先として機能するため、アプリケーションの可用性が向上します。アプリケーションへのリクエストの流れを中断することなく、ニーズの変化に応じてロードバランサーに対して インスタンスの追加と削除を行うことができます。Elastic Load Balancing はアプリケーションへのトラフィックが時間の経過とともに変化するのに応じてロードバランサーをスケーリングし、大半のワークロードに合わせて自動的にスケーリングできます。

ヘルスチェックを設定して登録したインスタンスのヘルス状態をモニタリングすると、ロードバランサーから正常なインスタンスにのみリクエストを送信できます。インスタンスがメインワークに集中できるように、暗号化および復号の作業をロードバランサーに任せることもできます。

Elastic Load Balancing の機能

Elastic Load Balancing は 2 種類のロードバランサー (Application Load Balancer および Classic Load Balancer) をサポートします。お客様のニーズに合うロードバランサーの種類を選択してください。

機能 Classic Load Balancer Application Load Balancer

プロトコル

HTTP、HTTPS、TCP、SSL

HTTP、HTTPS

プラットフォーム

EC2-Classic、EC2-VPC

EC2-VPC

スティッキーセッション (Cookie)

生成されたロードバランサー

バックエンドサーバー認証

バックエンドサーバー暗号化

アイドル接続のタイムアウト

接続のストリーミング

クロスゾーン負荷分散 †

常に有効

ヘルスチェックする間隔を秒で入力します † †

向上

CloudWatch メトリクス

向上

アクセスログ

向上

パスベースのルーティング

単一のインスタンスで複数のポートにルーティング

HTTP/2 サポート

Websockets サポート

ロードバランサーの削除の保護

† Application Load Balancer では、クロスゾーン負荷分散が常に有効になっています。Classic Load Balancer の場合、デフォルトでは無効になっていますが、必要に応じて有効および無効にできます。

† † Application Load Balancer では、ヘルスチェック成功のレスポンスを示す HTTP コードを指定できます。Application Load Balancer が返すヘルスチェックの失敗の原因に関する情報は改善されました。

Application Load Balancer の詳細については、「Application Load Balancer ガイド」を参照してください。Classic Load Balancer の詳細については、「Classic Load Balancer ガイド」を参照してください。

Elastic Load Balancing へのアクセス

次のインターフェイスのいずれかを使用して、ロードバランサーの作成、アクセス、管理を行うことができます。

  • AWS マネジメントコンソール — Elastic Load Balancing へのアクセスに使用するウェブインターフェイスを提供します。

  • AWS コマンドラインインターフェイス (AWS CLI) — Elastic Load Balancing を含むさまざまな AWS 製品用のコマンドが用意されており、Windows、Mac、および Linux でサポートされています。詳細については、「AWS コマンドラインインターフェイス」を参照してください。

  • AWS SDK — 言語固有の API を提供し、署名の計算、リクエストの再試行処理、エラー処理など、接続のさまざまな詳細を処理します。詳細については、AWS SDK を参照してください。

  • クエリ API — HTTPS リクエストを使用して呼び出す低レベル API アクションを提供します。クエリ API の使用は、Elastic Load Balancing の最も直接的なアクセス方法ですが、リクエストに署名するハッシュの生成やエラー処理など、低レベルの詳細な作業をアプリケーションで処理する必要があります。詳細については、以下を参照してください。

Elastic Load Balancing は、アプリケーションの可用性とスケーラビリティを高める以下のサービスを使用します。

  • Amazon EC2 — クラウドでアプリケーションを実行する仮想サーバーです。EC2 インスタンスへのトラフィックをルーティングするように、ロードバランサーを設定できます。詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイド または Windows インスタンスの Amazon EC2 ユーザーガイド を参照してください。

  • Amazon ECS — EC2 インスタンスのクラスター上で Docker コンテナを実行、停止、管理することができます。コンテナにトラフィックをルーティングするように、ロードバランサーを設定できます。詳細については、Amazon EC2 Container Service Developer Guide を参照してください。

  • Auto Scaling — インスタンスに障害が発生した場合でも必要なインスタンスの実行数を保証し、需要の変化に応じて自動的にインスタンス数を増減できるようにします。Elastic Load Balancing を使用して Auto Scaling を有効にした場合、Auto Scaling によって起動されたインスタンスは自動的にロードバランサーに登録され、Auto Scaling によって終了されたインスタンスは自動的にロードバランサーから登録解除されます。詳細については、Auto Scaling ユーザーガイド を参照してください。

  • Amazon CloudWatch — ロードバランサーを監視し、必要に応じてアクションを実行することができます。詳細については、「Amazon CloudWatch ユーザーガイド」を参照してください。

  • Amazon Route 53 — ドメイン名 (www.example.com など) を、コンピュータが相互の接続に使用する数字の IP アドレス(192.0.2.1 など) に変換することで、閲覧者をウェブサイトにルーティングするための信頼性が高く、コスト効率のよい方法を提供します。ロードバランサーなどのリソースには、AWS により URL が割り当てられます。ただし、ユーザーが覚えやすい URL を使用することもできます。たとえば、ドメイン名をお客様のロードバランサーにマッピングすることができます。詳細については、「Amazon Route 53 開発者ガイド」を参照してください。

料金表

詳細については、以下の料金表ページを参照してください。