負荷分散と VMM サービス テンプレートの統合
この記事では、Windows ネットワーク負荷分散 (NLB) とハードウェア ロード バランサーを System Center Virtual Machine Manager (VMM) サービス テンプレートと統合する方法について説明します。
サービス テンプレートは、VM をグループ化してアプリを提供します。 これには、サービスの一部としてデプロイされる VM、VM にインストールされているアプリケーション、使用する必要があるネットワーク設定など、サービスに関する情報が含まれます。 VM テンプレート、ネットワーク設定、アプリケーション、ストレージをサービス テンプレートに追加できます。
サービス テンプレートは、単一層でも多層でもかまいません。 1 つのレベルのサービスには、特定のアプリとして使用される 1 つの VM が含まれています。 多層サービスには、複数の VM が含まれています。 詳細情報。
サービス レベルの負荷分散を設定する
ロード バランサーを追加して、サービス レベルの VM に要求を負荷分散できます。 ラウンド ロビン分散には、ハードウェア ロード バランサーまたは NLB を使用できます。
ロード バランサーを追加するには、次の操作を行う必要があります。
- logical ネットワークが構成されていることを確認します。 論理ネットワークには、ネットワーク サイトが関連付けられている必要があります。 これらのネットワーク サイトには、静的 IP アドレス プールを作成できるサブネットが 1 つ以上関連付けられている必要があります。 さらに、各ネットワーク サイトを、サービスが展開されるホスト グループに関連付けます。
- 論理ネットワークの IP アドレス プール を作成します。 IP プールには、ロード バランサーに割り当てることができる仮想 IP アドレスの予約範囲が含まれている必要があります。 ロード バランサーとロード バランサーの背後にある仮想マシンの静的 IP アドレス プールを設定する必要があります。 これらは同じプールまたは異なるプールから取得できますが、仮想マシンには VIP と IP アドレスの両方が必要です。
- 論理ネットワーク上に VM ネットワークを作成します。
- VIP テンプレートの作成: 仮想 IP (VIP) テンプレートには、特定の種類のネットワーク トラフィックの負荷分散設定が含まれています。 VIP テンプレートを作成したら、サービス テンプレートで負荷分散を設定するときに指定できます。
- ハードウェア ロード バランサーを設定する: サービス テンプレートでハードウェア負荷分散を有効にする場合は、多くの前提条件を準備する必要があります。
- NLB を設定します。ハードウェア ロード バランサーを使用しない場合は、NLB を使用できます。 いくつかの要件と制限があります。
VIP テンプレートを作成する
VMM コンソールで、 Fabric>Networking>VIP テンプレートを選択します。
Home>Show>Fabric Resources>Create>Create VIP Template を選択します。
Load Balancer VIP テンプレート ウィザード>Nameで、テンプレートの名前と説明を指定します。 VIP ポートで、バランスを取るネットワーク トラフィックの種類に使用するポートを指定します。 たとえば、HTTPS トラフィックの場合は 443 です。 バックエンド ポートで、バックエンド サーバーが要求をリッスンしているポータルを指定します。
Typeで、次の操作を行います。
- NLB を使用するには、製造元の一覧で Microsoft を選択し、Model でMicrosoft ネットワーク コントローラーをします。
- ハードウェア ロード バランサーを使用するには、 Generic を選択して、サポートされているハードウェア ロード バランサー用のテンプレートを作成します。 Specific を選択して、特定のロード バランサーのテンプレートを作成し、製造元とモデルを指定します。
Protocolで、VIP テンプレートを作成するプロトコルを選択します。
- HTTPS を選択した場合は、トラフィックが終了する場所を指定する必要があります。
HTTPS パススルー を選択して、トラフィックを復号化せずに VM に渡します。- HTTPS terminate を選択して、ロード バランサーで HTTPS トラフィックを終了および復号化します。 このオプションにより、Cookie やヘッダーなどの詳細情報がロード バランサーに提供されます。 このオプションを使用するには、HTTPS 認証に使用できるロード バランサー上の証明書のサブジェクト名を指定します。 このオプションを使用すると、 Re-Encrypt を有効にして、ロード バランサーから VM への HTTPS トラフィックを再暗号化できます。
- CUstom を選択して、TCP、UDP、またはその両方を指定します。
Persistenceで、[可能な永続化] を選択して、クライアント セッションを固定 (アフィニティ) にします。 この設定は、ロード バランサーが常に同じクライアントを同じ VM に転送することを意味します。 これは、指定された送信元 IP アドレスとサブネット マスク、宛先 IP アドレス、プロトコルによって異なるその他のパラメーターに基づいています。
ヘルス モニターでは、必要に応じて、ロード バランサーに対して一定の間隔で検証を実行する必要があることを指定できます。 正常性モニターを追加するには、プロトコルと要求を指定します。 たとえば、GET コマンドを入力するとします。は、ロード バランサーのホーム ページに対して HTTP GET 要求を行い、ヘッダー応答を確認します。 応答の種類、監視間隔、タイムアウト、再試行を変更することもできます。
Note
タイムアウトは間隔より小さくする必要があります。
- Load Balancingで、使用する負荷分散方法を選択します。 ラウンド ロビンを使用するか、ロード バランサーでサポートされているカスタム メソッドを使用して、最小の接続または最速の応答時間に基づいて新しい接続を送信するように構成できます。 NLB を有効にする場合は、[ラウンド ロビン選択します。
- Summary ページで設定を確認し、Finish を選択します。 Jobs ダイアログが表示されます。 Completed状態を待機します。 次に、テンプレートが VIP テンプレート ペインに表示されることを確認します。
ハードウェア ロード バランサーを設定する
ハードウェア ロード バランサーを次のように設定します。
- 構成プロバイダーを取得する: サポートされているハードウェア ロード バランサーを追加するには、ロード バランサーの製造元から入手できる構成プロバイダーをダウンロードしてインストールする必要があります。 VMM は現在、 Brocade ServerIron ADX ロード バランサー プロバイダー および Citrix NetScaler ロード バランサー プロバイダーをサポートしています。 プロバイダーは、VMM PowerShell コマンドをロード バランサー API に変換する VMM プラグインです。 プロバイダーをインストールしたら、VMM サービスを再起動する必要があります (net stop scwmmservice>net start scvmmservice)。
- アカウントのセットアップ: ダウンロードしたロード バランサーを構成するためのアクセス許可を持つユーザー名とパスワードを使用して VMM 実行アカウントを作成します。
- ロード バランサーを VMM に追加する: ロード バランサーの追加ウィザードを使用して、ハードウェア ロード バランサーを VMM に追加します。
ハードウェア ロード バランサーを VMM に追加する
ウィザード中に、ロード バランサーが使用可能なホスト グループを選択し、ロード バランサー モデルを指定し、ロード バランサーの管理に使用するアドレスとポートを指定し、VMM 論理ネットワークとのアフィニティを指定し、構成プロバイダーを選択して、接続をテストします。 サービスをデプロイする前に、ハードウェア ロード バランサーを構成する必要があります。 サービスをデプロイした後は、ロード バランサーを追加できません。
- Fabric>Networking>Load Balancers>Fabric Resources>Home>Add>Add resources>Load Balancer を選択します。
- ロード バランサーの追加ウィザード>Credentialsで、ロード バランサーの資格情報を持つ実行アカウントを選択します。
- Host グループで、サービスを展開する各ホスト グループを選択します。 ホストはロード バランサーにアクセスできる必要があります。 さらに、ホスト上の物理ネットワーク アダプターは、サービス 層と同じ論理ネットワークを使用するように構成する必要があります。
- Manufacturer と Model で、適切なエントリを選択します。
- Addressで、ロード バランサーの IP アドレスおよび FQDN または NetBIOS 名を指定します。 ロード バランサーが要求をリッスンするポートを指定します。
- Logical Network Affinity で、論理ネットワークとのアフィニティを指定します。
Note
- フロントエンド アフィニティの場合は、ロード バランサーが VIP を取得する論理ネットワークを選択します。 VIP は、サービス テンプレートにデプロイするときにロード バランサーに割り当てられる IP アドレスです。
- フロントエンド アフィニティの場合、VMM は論理ネットワークに基づいて、ロード バランサーと関連するホスト グループの両方からアクセスできる静的 IP アドレス プールを決定します。
- フロントエンド アフィニティの論理ネットワークを選択する場合、予約済みの VIP アドレス範囲を持つ関連付けられたネットワーク サイトを、ロード バランサーに関連付けられているホスト グループが使用できる必要があります。
- バックエンド アフィニティの場合は、サービス レベルの VM からの接続でロード バランサーを使用できるようにする論理ネットワークを選択します。
- Providerで、ロード バランサー プロバイダーを選択します。 Test を選択して構成を確認します。
- Summaryで設定を確認し、Finish を選択します。 [ ジョブ ] ダイアログ ボックスが表示されます。 Completed状態を待機し、プロバイダーがアクティブであることをProvider列にチェックインします。
NLB を設定する
NLB は VMM のロード バランサーとして自動的に含まれます。 NLB VIP テンプレートを設定している限り、他の操作は必要ありませんが、次の点に注意してください。
- VM ネットワークがネットワーク仮想化で構成されている場合、NLB は使用できません。
- NLB は、Linux VM を実行しているサービス レベルでは使用できません。
負荷分散の有効化
- サービス テンプレートが開いていない場合は、 Library>Templates>Service Templates を選択して開きます。
- Actions>Open Designer を選択します。
- サービス テンプレート デザイナーで、 Service テンプレート コンポーネント グループ >ロード バランサーの追加を選択します。
- ロード バランサー オブジェクトを選択します。 VIP テンプレート名で識別します。
- Tool>Connector を選択します。 テンプレートに関連付けられている Server 接続 を選択し、 NIC オブジェクトを選択して、ロード バランサーをアダプターに接続します。 NIC プロパティで、アドレスの種類と MAC アドレスが静的であることを確認します。
- Connectorを有効にした状態で、負荷分散に関連付けられている Client 接続を選択し、論理ネットワーク オブジェクトを選択します。
- サービス テンプレートを Service Template>Save and Validate に保存します。
ユーザー アクセス用のハードウェア VIP を設定する
サービスが展開されると、VMM は静的 IP アドレス プールの予約範囲から VIP を自動的に選択し、負荷分散されたサービス レベルに割り当てます。 ユーザーがサービスに接続できるようにするには、サービスがデプロイされた後、VIP を特定し、それに対する DNS エントリを構成する必要があります。
- サービスがデプロイされたら、 Fabric>Networking>Load Balancers を選択します。
- Show>Service>Load Balancer Information for Services を選択しサービスを展開して、割り当てられている VIP を確認します。
- DNS 管理者に VIP の DNS エントリを手動で作成することを要求します。 このエントリは、ユーザーがサービスに接続するために指定する名前である必要があります。 たとえば、servicename.contosol.com。
次のステップ
VMM ファブリックのソフトウェア定義ネットワーク (SDN) インフラストラクチャでソフトウェア ロード バランサーを設定することもできます。