ロード・バランサ管理
ロード・バランサを作成および管理して、1つのエントリ・ポイントから、仮想クラウド・ネットワーク(VCN)からアクセス可能な複数のサーバーへの自動トラフィック分散を提供します。
アクセス制御の目的で、ロード・バランサを配置するコンパートメントを指定する必要があります。使用するコンパートメントが不明な場合は、組織の管理者に問い合せてください。コンパートメントとアクセス制御の詳細は、コンパートメントの管理を参照してください。
ロード・バランサでこの機能を使用する方法の詳細は、プロキシ・プロトコルを参照してください。
次のロード・バランサ管理タスクを実行できます:
VCN内でロード・バランサを作成すると、パブリックまたはプライベートIPアドレスとプロビジョニングされた合計帯域幅が取得されます。別のIPアドレスが必要な場合は、別のロード・バランサを作成できます。
プライベート・ロード・バランサでは、プライマリ・ロード・バランサおよびスタンバイをホストするために、サブネットが1つのみ必要です。プライベートIPアドレスは、サブネットに対してローカルです。ロード・バランサには、関連付けられたサブネットを含むVCN内からのみアクセスできます。または、セキュリティ・リスト・ルールによってさらに制限されます。ロード・バランサは、VCNからアクセス可能な任意のバックエンド・サーバーにデータ・トラフィックをルーティングできます。
ロード・バランシングの必須コンポーネントを示します:
-
事前プロビジョニングされた帯域幅を持つロード・バランサ。
-
ヘルス・チェック・ポリシーを持つバックエンド・セット。詳細は、バックエンド・セットを参照してください。
-
バックエンド・セットのバックエンド・サーバー。詳細は、バックエンド・サーバーを参照してください。
-
1つ以上のリスナー。詳細は、リスナーを参照してください。
-
目的のトラフィックを許可するロード・バランサ・サブネットのセキュリティ・ルール。これらのルールについてさらに学習するには、セキュリティ・ルールを参照してください。
ノート
大量のトラフィックに対応するため、ロード・バランサ・サブネットにはステートレス・セキュリティ・ルールを使用することをお薦めします。詳細は、ステートフル・ルールとステートレス・ルールを参照してください。
オプションで、任意のリスナーをSSLサーバー証明書バンドルに関連付けて、システムがSSLトラフィックを処理する方法を管理できます。詳細はSSL証明書を参照してください。
保持できるロード・バランサの数の詳細は、サービス制限を参照してください。
前提条件
動作するロード・バランサを実装するには、次が必要です:
-
複数の可用性ドメインを持つリージョン内のパブリック・ロード・バランサの場合、パブリック・リージョン・サブネットまたは2つ以上のパブリックAD固有サブネットを持つVCNが必要です。後者の場合、AD固有の各サブネットは、個別の可用性ドメイン内に存在する必要があります。サブネットの詳細は、VCNおよびサブネットの管理およびパブリックIPアドレス範囲を参照してください。
ノート
パブリック・ロード・バランサにプライベート・サブネットを指定することはできません。
-
可用性ドメインを1つのみ持つリージョン内のパブリック・ロード・バランサの場合、少なくとも1つのパブリック・サブネットを持つVCNが必要です。
-
任意のリージョン内のプライベート・ロード・バランサの場合、少なくとも1つのプライベート・サブネットを持つVCNが必要です。
-
アプリケーションを実行する2つ以上のバックエンド・サーバー(コンピュート・インスタンス)。コンピュート・インスタンスの詳細は、インスタンスの作成を参照してください。
プライベートIPアドレスの使用
1つのパブリック・リージョナル・サブネットで作成されたパブリック・ロード・バランサは、ホスト・サブネットの2つのプライベートIPv4アドレスを使用します。プライマリおよびセカンダリ・ロード・バランサは、同じサブネット内に存在します。各ロード・バランサには、そのサブネットのプライベートIPv4アドレスが必要です。ロード・バランサ・サービスは、フローティング・パブリックIPv4アドレスを割り当てます(これはホスト・サブネットから取得されません)。ロード・バランサは、IPv6に対して有効になっている場合、ホスト・サブネットからIPv6アドレスを受信します。
2つのパブリックAD固有サブネットで作成されたパブリック・ロード・バランサは、各ホスト・サブネットから1つずつ、2つのプライベートIPアドレスを使用します。プライマリおよびセカンダリ・ロード・バランサは、異なるサブネット内に存在します。各ロード・バランサには、そのホスト・サブネットのプライベートIPアドレスが1つ必要です。ロード・バランサ・サービスは、フローティング・パブリックIPv4アドレスを割り当てます(これはホスト・サブネットから取得されません)。ロード・バランサは、IPv6に対して有効になっている場合、ホスト・サブネットからIPv6アドレスが割り当てられます。
1つのサブネットで作成されたプライベート・ロード・バランサは、ホスト・サブネットの3つのプライベートIPアドレスを使用します。プライマリおよびセカンダリ・ロード・バランサは、同じサブネット内に存在します。各ロード・バランサには、そのサブネットのプライベートIPアドレスが必要です。フローティング・プライベートIPアドレスは、ホスト・サブネットからも取得されます。IPv6に対して有効化され、プライベート・サブネットで作成されたロード・バランサとのインターネット通信は、禁止されています。グローバルにルーティング可能なIPv6対応のロード・バランサをプライベート・サブネットに作成することはできません。
ロード・バランサの作成時に使用されるプライベートIPアドレスは指定できません。かわりに、ロード・バランサが割り当てられるIPアドレスに制限されます。ロード・バランサの作成後、クライアント・トラフィックに使用されるIPアドレスは変更されません。バックエンド・サーバーとの通信に使用されるIPアドレスは、ロード・バランサの存続期間中に変わる可能性があります。ランダムに生成された異なるIPアドレスを使用するには、新しいロード・バランサを作成します。
構成の変更とサービスの中断
実行中のロード・バランサでは、一部の構成変更はサービスの中断につながります。次のガイドラインは、ロード・バランサに対する変更の影響を理解するのに役立ちます。
-
バックエンド・サーバーを追加、削除または変更する操作では、ロード・バランサ・サービスが中断することはありません。
-
既存のヘルス・チェック・ポリシーを編集する操作では、ロード・バランサ・サービスが中断することはありません。
-
ロード・バランサの再構成をトリガーする操作では、一部の接続が終了してサービスが一時的に中断する可能性があります。
ロード・バランサのプロキシ・プロトコル
TCPベースのリスナーを使用するロード・バランサは、プロキシ・プロトコル機能を使用して、ソースおよび宛先のIPアドレスとポートを、ネットワーク・アドレス変換(NAT)またはTCPプロキシのレイヤー全体でバックエンド・サーバーに送信できます。プロキシ・プロトコルを使用して、アプリケーション・セキュリティ(IP ACL)やコンプライアンス・ロギングなどのネットワーク要件をサポートします。
ロード・バランサの作成時(または既存のものの更新時)にプロキシ・プロトコル・オプションを選択すると、次のいずれかのオプションを選択するように求められます。
-
バージョン1: 人間が読めるヘッダー(テキスト)形式をサポートし、通常はログ・エントリの1行です。このオプションは、実装がほとんどない初期導入段階でのデバッグに使用します。
-
バージョン2: バージョン1の判読可能なヘッダーのサポートとヘッダーのバイナリ・エンコーディングを組み合せて、生成および解析の効率を高めます。このオプションは、ASCII形式で生成および解析が困難なIPv6アドレスに使用します。バージョン2では、カスタム拡張機能もより適切にサポートされます。
どちらのバージョンも、各接続の開始時に接続イニシエータによって配置される解析可能なヘッダーとしてプロトコルを実装します。プロトコルは、送信者がヘッダーを送信する前に受信者を待機することを想定していません。また、受信者が何かを送り返すのを待つこともありません。
ロード・バランサのプロキシ・プロトコルでは、Transport Layer Security (TLS) Server Name Indication (SNI)サポートのPP2 Type Authorityオプションのみがサポートされます。このサポートは、ロード・バランサがバックエンド・サーバーではなくSSL接続を終了する場合に便利です。この機能は、TCPのX-Forwarded-Hostオプションに似ています。
ロード・バランサでプロキシ・プロトコルを有効にする前に、バックエンド・アプリケーションがプロキシ・プロトコル・バージョン2ヘッダーを予期し、解析できることを確認してください。プロキシ・プロトコル・バージョン2の詳細は、HAProxyのWebサイトを参照してください。