Slide 1

Slide 1 text

ロード・バランサ 概要 FLB・NLB共通 Load Balancer Level 100 Oracle Cloud Infrastructure 技術資料 2025年2月

Slide 2

Slide 2 text

この資料では、以下のことを解説しています • OCIロード・バランサ・サービスのコンセプトと基本構造 • FLBとNLBの違い • ロード・バランサの構成要素 • ウィザードを利用したロード・バランサの作成 内容 Copyright © 2025, Oracle and/or its affiliates 2

Slide 3

Slide 3 text

Copyright © 2025, Oracle and/or its affiliates 3 ロード・バランサの基本 Load Balancer Basics

Slide 4

Slide 4 text

ロード・バランサの主な役割 役割1 : スケーラビリティ(拡張性)の向上 リクエストを複数のサーバーに分散させることで、 1台のバックエンドサーバーでは処理しきれない 負荷を複数サーバーに振り分け、スケールアウト でシステム処理能力を拡張 ロード・バランサ New Server ・・・・・ スケールアウト ロード・バランサ Copyright © 2025, Oracle and/or its affiliates 4 Server01 Server02 Server01 Server02 Server03 役割2 : アベイラビリティ(可用性)の向上 バックエンドのサーバーに対して死活監視を行い、 正常稼働していないサーバーに対するトラフィッ ク転送を停止することによりサービス全体の停止 を防止

Slide 5

Slide 5 text

高い耐障害性 • LB自身が可用性ドメインまたはフォルト・ドメイン間で冗長化 • 固定された1つの接続用の仮想IPアドレス(プライベート or パブリックIP)を持ち、処理ノードの障害 時にも健全なノードで透過的にリクエストの処理が継続 安定した性能と拡張性 • 最小帯域幅に設定したネットワーク帯域が確保済(FLB) • トラフィック量に応じて帯域が自動で拡張(FLB/NLB) 豊富な機能 • レイヤー4とレイヤー7の両方の機能をサポート • Cookieによるセッション永続性、URIパスやHTTPヘッダー・ベースの振り分け、仮想ホスト、HTTP ヘッダー操作などの高度なレイヤー7機能をサポート • SSLターミネーション、SSLトンネリングをサポート • 自動スケーリング、OKE、DNS、トラフィック管理、リソースマネージャなどの機能と連携 運用管理が簡単 • マネージドサービスなので管理が容易 OCIロード・バランサの特長 Copyright © 2025, Oracle and/or its affiliates 5

Slide 6

Slide 6 text

OCI Region 可用性ドメイン 1 可用性ドメイン 2 バックエンドセット OCIロード・バランサの基本構造 Copyright © 2025, Oracle and/or its affiliates 6 ※ 2022年8月頃以降に作成したフレキシブル・ロード・バランサはActive-StandbyからActive-Active構成に変更されています Webサーバー Webサーバー LBサブネット Webサブネット リスナー Webサーバー Webサーバー トラフィック ロード・バランサ 単一の固定IPアドレスを持つ • グローバルIP or プライベートIP • 起動から終了まで固定 • スケーリング時の変更なし リスナーでプロトコルとポートを指定 • 1つのLBで複数のリスナーを設定可能 1つのLBで冗長化された内部コンポーネント • 障害やメンテナンス時にも処理が継続 • 複数のフォルト・ドメイン/可用性ドメ インを跨ぐように構成可能※ バックエンド・サーバー群 • IPアドレスまたはFQDNで指定 • トラフィックが疎通すれば外部ネット ワークでもOK 1台のロード・バランサで4台のWebサーバーに負荷分散させた図 IPアドレス

Slide 7

Slide 7 text

フレキシブル・ロード・バランサ(FLB) • 単に「ロード・バランサ」と呼ばれることも • プロキシ型で動作 • すべてのクライアントからのTCPコネクションが一旦 ロード・バランサで終端し、新たに別のTCPコネクショ ンがロード・バランサからバックエンドのサーバーに対 して確立 • 特徴 : 高度なバランシング機能 • 有償サービス(Always Freeシェイプあり) ネットワーク・ロード・バランサ(NLB) • パススルー型で動作 • クライアントから来たTCPやUDPなどのIPトラフィック をそのままバックエンドのサーバーに伝える • 特徴 : 低レイテンシ、高い負荷追従性 • 無償サービス 2種類のロード・バランサ - FLBとNLB Copyright © 2025, Oracle and/or its affiliates 7 クライアント サーバー フレキシブル・ ロード・バランサ (FLB) ネットワーク・ ロード・バランサ (NLB) プロキシ型 クライアントから受けた通信を、ロード・ バランサが一度仲介し、別のコネクション としてサーバーに接続する パススルー型 クライアントから受けた通信をそ のままサーバーに転送する Load Balancerの課金項目 Metric 価格 Load Balancer Base Load Balancer Hour ¥1.7515/hour Load Balancer Bandwidth Mbps per Hour ¥0.0155/hour 例)10Mbpsの場合: ¥1.7515 + ¥0.0155 x 10 = ¥1.9064/hour

Slide 8

Slide 8 text

FLBとNLBの機能面の差異 Copyright © 2025, Oracle and/or its affiliates 8 フレキシブル・ロード・バランサ(FLB) ネットワーク・ロード・バランサ(NLB) タイプ プロキシ型 パススルー型 対応プロトコル TCP / HTTP / HTTPS / HTTP2 / gRPC TCP / UDP / ICMP スループット 10Mbps~最大8Gbps バックエンドのネットワーク帯域までスケール (8Gbpsを超えることもある) レイヤー3/4バランシング機能 あり あり レイヤー7バランシング機能 • Cookieによるセッション永続性 • 仮想ホストによる振り分け • URIパスによる振り分け • HTTPヘッダーによる振り分け • HTTPヘッダー操作 あり なし インターネットや他リージョン のサーバーへの振り分け 可能 インターネットは不可、DRG経由の他リージョ ンは可能 リスナーの最大数 16 50 ソースIPアドレスの保全 なし (X-Forwarded-Forヘッダを利用可能) あり (選択式) SSLターミネーション機能 あり なし SSLパススルー機能 あり (TCPリスナー選択時のみ) あり(SSL使用する場合は常に) パーシステンス機能 Cookieによる制御(HTTP/HTTPSリスナー) ソースIPベースの振り分け(TCPリスナー) ソースおよび宛先IPとポート、 プロトコルの組合せ Web Application Firewall機能 組み込み可能(有償) 組み込み不可 HTTPアクセラレーション機能 組み込み可能 組み込み不可

Slide 9

Slide 9 text

NLBは無料なので、高機能なFLBが必要な場合以外は積極的に使おう! ロード・バランサの選択 – 超簡易フローチャート Copyright © 2025, Oracle and/or its affiliates 9 HTTP or HTTPS TCP クライアントIP 保全する?** フレキシブル・ ロード・バランサ ネットワーク ・ロード・バランサ UDP / ICMP Y Y N* N レイヤー7の 制御機能を利用? N SSLオフロードする? Y * クライアントのIPアドレスがhttpヘッダ(X-Forwarded-For)から取得できればいい場合はこちらでもOK **プロキシプロトコルでもクライアントIPを伝達可能(FLBはプロキシプロトコルv1とv2に対応、NLBはプロキシプロトコルv2に対応) • Cookieによるセッション永続性 • 仮想ホストによる振り分け • URIパスによる振り分け • HTTPヘッダーによる振り分け • HTTPヘッダーの操作 • Web Application Firewall • HTTPアクセラレーション(圧縮、キャッシュ) N インターネットに振分る? Y

Slide 10

Slide 10 text

インスタンス • コンピュートなどと同じように「インスタン ス」という概念で管理を行う • 作成、課金、終了などのライフサイクルの単位 • 内部の物理コンポーネントは隠蔽化されている • 冗長化されており、SLO設定単位 シェイプ • インスタンスの大きさを表す概念 • ロード・バランサでは捌くことのできる帯域 幅を示す(Mbps) • FLBの場合 • ユーザーが選択した帯域幅パラメーターに応じた シェイプを持つ • シェイプは固定値(動的シェイプ)または最低帯域 幅(フレキシブルシェイプ)が確保済 • フレキシブルシェイプは設定した最大帯域幅まで 自動で拡張(ベストエフォート) • NLBの場合 • 明示的なシェイプはなくバックエンドのネット ワーク帯域まで自動的にスケールする ロード・バランサのインスタンスとシェイプ Copyright © 2025, Oracle and/or its affiliates 10

Slide 11

Slide 11 text

Copyright © 2025, Oracle and/or its affiliates 12 ロード・バランサの構成要素 Load Balancer Components

Slide 12

Slide 12 text

OCI Region 可用性ドメイン 1 可用性ドメイン 2 バックエンドセット OCIロード・バランサの構成要素のうち主に設定する箇所 Copyright © 2025, Oracle and/or its affiliates 13 ※ 2022年8月頃以降に作成したロード・バランサはActive-StandbyからActive-Active構成に変更されています Webサーバー Webサーバー LBサブネット Webサブネット IPアドレス リスナー Webサーバー Webサーバー トラフィック リスナー トラフィックを受信するためのプロトコル、 ポート、バックエンド・セットを定義する論理 エンティティ 負荷分散ポリシー 受信トラフィックをバックエンド・サーバーに 分散させる方法を定義 ヘルスチェック バックエンド・サーバーの正常性を確認するた めのテスト バックエンド・サーバー 受信したトラフィックに応答してコンテンツを 提供するアプリケーションサーバー バックエンド・セット バックエンド・サーバーのリスト、負荷分散ポ リシー、およびヘルスチェックポリシーによっ て定義された論理エンティティ 1台のロード・バランサで4台のWebサーバーに負荷分散させた図 ロード・バランサ

Slide 13

Slide 13 text

ロード・バランサの構成要素 : リスナー Copyright © 2025, Oracle and/or its affiliates 14 トラフィックを受信するプロトコル、ポートと、転送先のバックエンド・セットを定義するもの • プロトコルとポートの組み合わせ毎に1つのリスナーを構成 • 例1 : HTTP(80) と HTTPS(443) 両方受け付けるにはリスナーが2つ必要 • 例2 : tcp/8000 と udp/8000 にはリスナーが2つ必要 • HTTP, HTTPS, HTTP2, gRPC, TCP, UDP, ICMP から選択 • HTTP/HTTPS/HTTP2/gRPCリスナーはレイヤー7で、 TCP/UDP/ICMPリスナーはレイヤー3/4で動作 • HTTP/HTTPSリスナーで作成した場合は、セッション永続性、 リクエスト・ルーティング、ルール・セット等のレイヤー7の 高度な機能 を利用可能 • ネットワーク・ロード・バランサの場合は1つのリスナーで 複数のプロトコルを扱うマルチプロトコルのリスナーを利用可 • 例: DNSサーバーを利用する場合 • リスナー毎に1つのSSL証明書をバンドル可能 FLB NLB リスナー1 HTTPS/443 リスナー2 TCP/22 ロード・バランサ (IP : xxx.xxx.xxx.xxx) バックエンド・セット1 バックエンド・セット2

Slide 14

Slide 14 text

フレキシブル・ロード・バランサ(FLB)の場合 重み付けラウンドロビン (Weighted Round Robin) • トラフィックをバックエンド・ サーバーに均等に順番に転送 • 重み付けを設定することで振り 分けるセッション数の比率を設 定できる 最小接続 (Least Connections) • アクティブな接続数が最も少な いサーバーに振り分けを行う IPハッシュ (IP Hash) • 送信元IPアドレスのハッシュ キーに基づいてトラフィックを 分散 • 同じIPのクライアントからの要 求は、同じバックエンド・サー バーに転送 ロード・バランサの構成要素 : ロード・バランシング・ポリシー 1 2 3 4 1 2 3 4 Proxy 1.1.1.1 2.2.2.2 3.3.3.3 Copyright © 2025, Oracle and/or its affiliates 15 新規接続 2 1 + 1 2

Slide 15

Slide 15 text

ネットワーク・ロード・バランサ(NLB)の場合 2タプル・ハッシュ • ソースIPと宛先IPをもとにした ハッシュ値で振り分ける方法 • 同じクライアントからのリクエ ストをなるべく同じサーバーに 転送したい場合に利用 3タプル・ハッシュ • ソースIP、宛先IP、プロトコル をもとにしたハッシュ値で振り 分ける方法 5タプル・ハッシュ • ソースIPとポート、宛先IPと ポート、そしてプロトコルをも とにしたハッシュ値で振り分け る方法 • リクエストをなるべく分散した い場合に利用 ロード・バランサの構成要素 : ロード・バランシング・ポリシー 1.1.1.1 tcp 2.2.2.2 tcp 2.2.2.2 udp 5.5.5.5 1.1.1.1 tcp/20001 2.2.2.2 tcp/20002 2.2.2.2 udp/25001 5.5.5.5 tcp/443 udp/443 1.1.1.1 2.2.2.2 3.3.3.3 5.5.5.5 Copyright © 2025, Oracle and/or its affiliates 16 ←ソースIP ←宛先IP ←ソースIP ←プロトコル ←宛先IP ←ソースIP ←ソースポート ←宛先IP、ポート プロトコル

Slide 16

Slide 16 text

ロード・バランサの構成要素 : ヘルスチェック Copyright © 2025, Oracle and/or its affiliates 17 定期間隔でヘル スチェック 応答がなかった 場合、転送停止 ロード・バランサ バックエンド・サーバーの状態を監視するために定期的にロー ド・バランサから送信されるテスト • チェック対象 • バックエンドサーバー • バックエンド・セット • ロード・バランサ全体 • ヘルスチェックに失敗したバックエンド・サーバーは、トラ フィック転送を一時的に停止させる • 復旧した場合は、再びトラフィック転送を再開 • 監視に利用するプロトコル • TCP, UDP(NLBのみ) : 特定ポートの応答状態で確認 • HTTP(S) : 特定URIパスに対してHTTPリクエストを送り、レスポンス コードやボディ内の文字列一致による判定などの高度なチェック • DNS(NLBのみ): 問合せ名を入力して、バックエンドからのDNSレス ポンスが正しく応答を返すかで確認

Slide 17

Slide 17 text

• ロード・バランサで受信したトラフィックに対して、実際に コンテンツを返信するサーバー • ロード・バランサを配置したVCNからアクセス可能であれば、 どこでもOK • サーバー間で処理性能が異なる場合は、重みづけによりトラ フィックの転送割合を変更可能 • 以下のモード制御を利用してバックエンド・サーバー単位で 個別にトラフィックの制御が可能 ロード・バランサの構成要素 : バックエンド・サーバー Copyright © 2025, Oracle and/or its affiliates 18 Load Balancer バックエンド・セット バックアップ • 通常時はトラフィックは転送されない • バックエンド・セット内の他の全てのバックエンド・サーバーの ヘルスチェックが失敗した場合にのみトラフィックが転送される 用途例:Sorryサーバー ドレイン • 接続済のセッションは維持される • 新規リクエストは転送されない 用途例:サーバーのメンテナンス開始時 オフライン • リクエストが転送されない Web1 Web2 Web3

Slide 18

Slide 18 text

1つのFLBあたり • 1つのIPv4アドレスと1つのIPv6アドレス • 16のバックエンド・セット • 1つのバックエンド・セット当たり512のバックエンド・サーバー • 合計512のバックエンド・サーバー • 16のリスナー • 16仮想ホスト名 • 同時接続数はシェイプによる(別途セキュリティリストのステートフル・ルールにもよる) 1つのNLBあたり • 1つのIPv4アドレスと1つのIPv6アドレス • 50のバックエンド・セット • 1つのバックエンド・セット当たり512のバックエンド・サーバー • 合計1024のバックエンド・サーバー • 50のリスナー • 1つの可用性ドメイン当たりの同時接続数のデフォルト制限は330,000 OCIロード・バランサ 構成上の主要な制限値 Copyright © 2025, Oracle and/or its affiliates 19

Slide 19

Slide 19 text

ロード・バランサの作成手順 Copyright © 2025, Oracle and/or its affiliates 20

Slide 20

Slide 20 text

1. VCN、リージョナルサブネットおよびWebサーバ用インスタンスを作成 Copyright © 2025, Oracle and/or its affiliates 21 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1 Dest CIDR Route Target 0.0.0.0/0 Internet GW

Slide 21

Slide 21 text

2. ロード・バランサ用ルートテーブルとセキュリティリストを作成 Copyright © 2025, Oracle and/or its affiliates 22 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 LB用 Route Table LB用 Security Lists Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1

Slide 22

Slide 22 text

3. ロード・バランサ用のリージョナルパブリックサブネットを作成 Copyright © 2025, Oracle and/or its affiliates 23 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists

Slide 23

Slide 23 text

4-1. パブリック・ロード・バランサを作成 Copyright © 2025, Oracle and/or its affiliates 24 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists LB IP ア ド レ ス

Slide 24

Slide 24 text

4-2. バックエンド・セットを作成し、バックエンド・セットにサーバを追加 Copyright © 2025, Oracle and/or its affiliates 25 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists LB • バックエンド・セット作成 – Name – Policy – SSL – Health Check • バックエンド・セットにバックエンド サーバ追加 – Instance (IPアドレス) – Port – Weight ルールはLBセキュリティリストおよびバッ クエンドサーバーセキュリティリストに自 動的に追加されます。 バックエンドセット IP ア ド レ ス

Slide 25

Slide 25 text

4-3. LB セキュリティリスト と バックエンドセキュリティリストの設定 Copyright © 2025, Oracle and/or its affiliates 26 OCI Region VCN 10.0.0.0/16 Internet Gateway Internet Type CIDR Protocol Source Port Dest Port Egress 10.0.1.0/24 TCP All 80 Type CIDR Protocol Source Port Dest Port Ingress 10.0.2.0/24 TCP All 80 Egress 0.0.0.0/0 All All ※ロード・バランサ作成すると自動的に必要なセ キュリティルールが設定されます。 自動で設定しない場合は手動で追加します。 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists LB バックエンドセット IP ア ド レ ス

Slide 26

Slide 26 text

OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists バックエンドセット 4-4. リスナーの追加 Copyright © 2025, Oracle and/or its affiliates 27 可用性ドメイン1 VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 リスナーの追加 Name Protocol, Port, SSL Backend Set LB IP ア ド レ ス Listener

Slide 27

Slide 27 text

5. リスナーへのトラフィックを許可 Copyright © 2025, Oracle and/or its affiliates 28 OCI Region 可用性ドメイン1 Webサブネット 10.0.1.0/24 Security Lists Route Table VCN 10.0.0.0/16 Internet Gateway Internet 可用性ドメイン2 Webサーバ2 Webサーバ1 LBサブネット 10.0.2.0/24 LB用 Route Table LB用 Security Lists アクティブ アクティブ IP ア ド レ ス Listener Type CIDR Protocol Source Port Dest Port Ingress 0.0.0.0/0 TCP All 80 Egress 0.0.0.0/0 TCP All All Egress 10.0.1.0/24 TCP All 80

Slide 28

Slide 28 text

このレッスンでは、次のことを学習しました • OCIロード・バランサは、1つのエントリーポイントからVCN内の複数のサーバーに対して自動的にト ラフィックを分散 これによりリソース利用率が向上し、容易な拡張性と高可用性を得られます • OCIロード・バランサはリージョナルなサービスでパブリックおよびプライベート・ロード・バラン サをサポート • サポートプロトコル – TCP, HTTP/1.0, HTTP/1.1, HTTP/2, WebSocket • SSL ターミネーション、エンドツーエンド SSL、SSL トンネリングをサポート • セッション永続性やコンテンツベースルーティングなどの高度な機能をサポート • 主な特長 • プライベートまたはパブリック・ロード・バランサ (パブリック IP アドレスが付与) • フレキシブルな帯域 • TCP (レイヤ 4) および HTTP (レイヤ 7) トラフィック用の単一ロード・バランサ まとめ Copyright © 2025, Oracle and/or its affiliates 29

Slide 29

Slide 29 text

日本語マニュアル – ロード・バランシング • https://docs.oracle.com/ja-jp/iaas/Content/Balance/Concepts/balanceoverview.htm 日本語マニュアル – ネットワーク・ロード・バランサ • https://docs.oracle.com/ja-jp/iaas/Content/NetworkLoadBalancer/overview.htm チュートリアル – ロード・バランサでWebサーバーを負荷分散する • https://oracle-japan.github.io/ocitutorials/intermediates/using-load-balancer/ ロード・バランサ 関連の技術情報 Copyright © 2025, Oracle and/or its affiliates 30

Slide 30

Slide 30 text

Oracle Cloud Infrastructure マニュアル • https://docs.oracle.com/ja-jp/iaas/Content/home.htm - マニュアル(日本語) • https://docs.cloud.oracle.com/iaas/api/ - APIリファレンス • https://docs.oracle.com/ja-jp/iaas/Content/General/Reference/aqswhitepapers.htm - テクニカ ル・ホワイト・ペーパー • https://docs.cloud.oracle.com/iaas/releasenotes/ - リリースノート • https://docs.oracle.com/ja-jp/iaas/Content/knownissues.htm - 既知の問題(Known Issues) • https://docs.oracle.com/ja-jp/iaas/Content/General/Reference/graphicsfordiagrams.htm - OCIアイ コン・ダイアグラム集(PPT、SVG、Visio用) Oracle Cloud Infrastructure マニュアル・ドキュメント Copyright © 2025, Oracle and/or its affiliates 31

Slide 31

Slide 31 text

Oracle Cloud Infrastructure 活用資料集 • https://oracle-japan.github.io/ocidocs/ チュートリアル - Oracle Cloud Infrastructureを使ってみよう • https://oracle-japan.github.io/ocitutorials/ Oracle 主催 セミナー、ハンズオン・ワークショップ • https://www.oracle.com/search/events/ (右側の Filter から Locations -> Asia Pacific -> Japan と絞り込み) Oracle Cloud Infrastructure – General Forum (英語) • https://cloudcustomerconnect.oracle.com/resources/9c8fa8f96f/summary Oracle Cloud Infrastructure トレーニング・技術フォーラム Copyright © 2025, Oracle and/or its affiliates 32

Slide 32

Slide 32 text

Thank You Copyright © 2025, Oracle and/or its affiliates 33

Slide 33

Slide 33 text

No content