ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris の管理: IP サービス Oracle Solaris 11 Information Library (日本語) |
13. DHCP コマンドと DHCP ファイル (リファレンス)
16. IP セキュリティーアーキテクチャー (リファレンス)
20. Oracle Solaris の IP フィルタ (概要)
このセクションでは、ILB の主な機能について説明します。
ILB は、1 脚または 2 脚のトポロジにおいて、IPv4 および IPv6 に対するステートレス DSR および NAT の動作モードをサポートします。
ステートレス DSR モード – DSR モードでは、ILB はバックエンドサーバーへの受信要求を分散しますが、サーバーからクライアントへの戻りトラフィックは ILB をバイパスします。ただし、ILB をバックエンドサーバーのルーターとして使用するように設定することもできます。この場合、バックエンドサーバーからクライアントへの応答は、ILB を実行中のマシンを通るように経路指定されます。ステートレス DSR では、ILB は基本的な統計情報を除き、処理されるパケットのステート情報を保存しません。このモードでは ILB がステートを保存しないため、パフォーマンスは通常の IP 転送のパフォーマンスに匹敵します。このモードはコネクションレスプロトコルに最適です。
NAT モード (フル NAT およびハーフ NAT) – ILB は負荷分散機能のためだけに、NAT をスタンドアロンモードで使用します。このモードでは、ILB はヘッダー情報を書き換え、受信トラフィックと送信トラフィックを処理します。NAT モードは、追加のセキュリティーを提供し、HTTP (または SSL) トラフィックに最適です。
注 - ILB で実装される NAT コードパスは Oracle Solaris の IP フィルタ機能に実装されるコードパスと異なります。これらのコードパスを同時に使用しないでください。
ILB アルゴリズムはトラフィック分散を制御し、負荷分散およびサーバー選択のためのさまざまな特性を提供します。ILB は 2 つの動作モードに対して次のアルゴリズムを提供します。
ラウンドロビン – ラウンドロビンアルゴリズムでは、ロードバランサはサーバーのリストに対してローテーションベースで要求を割り当てます。サーバーに要求が割り当てられると、サーバーはリストの末尾に移動します。
src IP ハッシュ – 発信元 IP ハッシュ方式では、ロードバランサは受信要求の発信元 IP アドレスのハッシュ値に基づいてサーバーを選択します。
src-IP、ポート ハッシュ – 発信元 IP、ポートハッシュ方式では、ロードバランサは受信要求の発信元 IP アドレスおよび発信元ポートのハッシュ値に基づいてサーバーを選択します。
src-IP、VIP ハッシュ – 発信元 IP、VIP ハッシュ方式では、ロードバランサは受信要求の発信元 IP アドレスおよび着信先 IP アドレスのハッシュ値に基づいてサーバーを選択します。
CLI は /usr/sbin/ilbadm ディレクトリにあります。これには、負荷分散規則、サーバーグループ、および健全性検査を構成するサブコマンドが含まれています。また、統計情報や構成の詳細を表示するサブコマンドも含まれています。サブコマンドは、次の 2 つのカテゴリに分けられます。
構成サブコマンド – これらのサブコマンドでは次のタスクを実行できます。
負荷分散規則の作成および削除
負荷分散規則の有効化および無効化
サーバーグループの作成および削除
サーバーグループへのサーバーの追加および削除
バックエンドサーバーの有効化および無効化
負荷分散規則内のサーバーグループについてのサーバー健全性検査の作成および削除
注 - 構成サブコマンドを管理するには、特権が必要です。特権は、役割に基づくアクセス制御 (RBAC) を通じて取得します。適切な役割の作成と役割のユーザーへの割り当てについては、『Oracle Solaris の管理: セキュリティーサービス』の「RBAC の初期構成 (タスクマップ)」を参照してください。
表示サブコマンド – これらのサブコマンドでは次のタスクを実行できます。
構成された負荷分散規則、サーバーグループ、および健全性検査を表示します
パケット転送統計の表示
NAT 接続テーブルの表示
健全性検査結果の表示
セッション永続性マッピングテーブルの表示
注 - 表示サブコマンドを管理するために特権は不要です。
ilbadm サブコマンドの一覧については、「ILB コマンドおよびサブコマンド」を参照してください。ilbadm サブコマンドの詳細情報については、ilbadm(1M) のマニュアルページを参照してください。
ILB は、サーバー健全性検査に次の機能を提供できるオプションのサーバー監視機能を提供します。
組み込み ping プローブ
組み込み TCP プローブ
組み込み UDP プローブ
サーバー健全性検査として実行できるユーザー独自のテスト
デフォルトでは、ILB は健全性検査を実行しません。負荷分散規則を作成するとき、サーバーグループごとに健全性検査を指定できます。1 つの負荷分散規則につき 1 つの健全性検査のみ構成できます。仮想サービスが有効であるかぎり、有効化されている仮想サービスに関連付けられたサーバーグループの健全性検査は自動的に開始し、定期的に繰り返されます。仮想サービスが無効化されると健全性検査はすぐに停止します。仮想サービスがふたたび有効化されたとき、以前の健全性検査状態は保持されません。
健全性検査を実行するために TCP プローブ、UDP プローブ、またはカスタムテストプローブを指定したときに、ILB はデフォルトで、指定された TCP プローブ、UDP プローブ、またはカスタムテストプローブをサーバーに送信する前に、サーバーが到達可能かどうかを判別するために ping プローブを送信します。ping プローブはサーバーの健全性を監視するための方法です。ping プローブに失敗すると、対応するサーバーは、健全性検査ステータスが unreachable になり無効化されます。ping プローブに成功しても、TCP プローブ、UDP プローブ、またはカスタムテストプローブに失敗した場合、サーバーは健全性検査ステータスが dead になり無効化されます。
注 -
デフォルトの ping プローブを無効にできます。
UDP プローブについてはデフォルトの ping プローブを無効にできません。したがって、UDP 健全性検査の場合、ping プローブが常にデフォルトプローブです。
次の表に示すパラメータについて健全性検査を構成できます。
表 22-1 健全性検査パラメータの構成
|
このセクションでは、ILB の追加機能について説明します。
クライアントが仮想 IP (VIP) アドレスを ping できる – ILB は、クライアントから VIP へのインターネット制御メッセージプロトコル (ICMP) エコー要求に応答できます。ILB は、DSR および NAT の動作モードについてこの機能を提供します。
サービスを中断させずにサーバーをサーバーグループに追加および削除できる – バックエンドサーバーと確立されている既存の接続を中断させずにサーバーをサーバーグループに動的に追加および削除できます。ILB は、NAT 動作モードについてこの機能を提供します。
セッション永続性 (スティッキネス) を構成できる – 多くのアプリケーションでは、同一のクライアントからの一連の接続、パケット、あるいはその両方が同一のバックエンドサーバーに送信されることが重要です。サブコマンド create-rule{{-m persist=<netmask>]] のネットマスクを指定することによって、仮想サービスのセッション永続性を構成できます。永続性マッピングが作成されると、その後に続く仮想サービスへの接続パケット、または両方の要求は、クライアントの発信元 IP アドレスが一致する場合、同一のバックエンドサーバーに転送されます。セッション永続性メカニズムのサポートは、DSR と NAT の両方の動作モードで利用できます。
接続排出を実行できる – ILB は、NAT ベースの仮想サービスのサーバーについてのみこの機能をサポートします。この機能は、無効にされているサーバーに対して新しい接続が送信されることを回避します。サーバーへの既存の接続は、機能を続行します。そのサーバーへのすべての接続が終了したあとに、サーバーは保守のためにシャットダウンできます。サーバーが要求を処理するための準備が整ったら、サーバーを有効にすることで、ロードバランサは新しい接続をサーバーに転送できるようになります。この機能によって、アクティブな接続またはセッションを中断せずに、サーバーを保守のためにシャットダウンできます。
TCP および UDP ポートの負荷分散ができる – ILB は、各ポートに明示的な規則を設定しなくても、特定の IP アドレス上のすべてのポートを異なる一連のサーバーで負荷分散できます。ILB は、DSR および NAT の動作モードについてこの機能を提供します。
同一のサーバーグループ内で仮想サービス用の個別ポートを指定できる – この機能により、ILB では NAT 動作モードの場合、同一のサーバーグループ内の異なるサーバーについて異なる着信先ポートを指定できます。
単純なポート範囲の負荷分散ができる – ILB では、VIP 上のポート範囲を、特定のサーバーグループで負荷分散できます。便宜上、同一 VIP 上の異なるポート範囲を異なる一連のバックエンドサーバーで負荷分散することによって、IP アドレスを節約できます。また、NAT モードでセッション永続性が有効なときは、ILB は同一のクライアント IP アドレスから、範囲内のさまざまなポートへの要求を、同一のバックエンドサーバーに送信します。
ポート範囲の移動および収縮ができる – ポート範囲の移動および収縮は、負荷分散規則内のサーバーのポート範囲に依存します。したがって、サーバーのポート範囲が VIP ポート範囲と異なる場合、ポート移動が自動的に実装されます。サーバーのポート範囲が単一ポートの場合、ポート収縮が実装されます。この機能は NAT 動作モードについて提供されます。