Windows Server 2008 R2のNLBで使用できるPowerShellコマンドレット (Set-NlbClusterPortRuleNodeHandlingPriority) について

スポンサーリンク

Windows Server 2008 R2では、Active Directory (AD) やフェールオーバー クラスタリング (WSFC)、グループ ポリシーといった役割および機能がインストールされたサーバーの管理、もしくは管理したい役割および機能についてリモート サーバー管理ツールをインストールしたサーバー上で、PowerShellコマンドレットを用いて管理することが可能です。

各役割および機能に関するPowerShellコマンドレットのヘルプについて、オンライン上で公開されていますが、主に英語のみで日本語の情報はあまり公開されていないようです。

ここでは、ネットワーク負荷分散 (NLB) に関するPowerShellコマンドレットの情報について、日本語としてオンライン上で備忘録として確認したいと思い、本ブログ上で纏めてみることにしました (内容については「Get-Help」コマンドレットの-Fullオプションを用いて実行した結果を編集したものとなります)。

この記事では、「Set-NlbClusterPortRuleNodeHandlingPriority」コマンドレットについて記載します (他のコマンドレットについては、「Windows Server 2008 R2のNLBで使用できるPowerShellコマンドレットについて」を参照)。

■名前

Set-NlbClusterPortRuleNodeHandlingPriority

■概要

対象のNLBノードのポート規則のホスト優先順位を設定します。

■構文

Set-NlbClusterPortRuleNodeHandlingPriority [-Port] <UInt32> -InterfaceName <string>
     -IP <IPAddress> [-HostName <string>] -HandlingPriority <int>
     [<CommonParameters>]

Set-NlbClusterPortRuleNodeHandlingPriority -InputObject <PortRule[]>
     -HandlingPriority <int> [<CommonParameters>]

■説明

Set-NlbClusterPortRuleNodeHandlingPriorityコマンドレットは、対象のNLBノードのポート規則のホスト優先順位を設定します。ホスト優先順位は、各ノードの固有のIDを指定します。クラスターの現在のメンバー内で優先順位の値が最も小さいノードが、クラスターのネットワーク トラフィックのうち、ポート規則に含まれていないものをすべて処理します。規則を指定することによって、これらの優先順位を無効にすることも、特定の範囲のポートに対して負荷分散を設定することもできます。新しいノードがクラスターに参加し、その優先順位がクラスター内の別のノードと競合した場合、そのノードはクラスターの一部として許容されません。トラフィックの処理は、クラスターの残りのノードによって続行されます。

この操作により、すべてのクラスター ノードの構成が変更されます。結果として、NLBクラスターでは、すべてのノードで収束プロセスを再開し、確実に構成の変更がすべてのノードで適用され、一貫した状態に達するようにする必要があります。すべてのクラスター ノードで収束プロセスが完了し、収束した状態に戻るまで、NLBクラスターで追加の操作を開始しないでください。すべてのクラスター ノードの状態をチェックするには、Get-NlbClusterNodeコマンドレットを使用します。構成を変更した結果、クラスター ノードで収束が終了しなくなった場合は、イベント ログを参照して、クラスター ノード間の構成の不一致を解決してください。

■パラメーター

-HandlingPriority <int>
クラスター ノードの処理の優先順位を指定します。これは、ポート規則フィルター モードが単一ホストの場合にのみ適用できます。[Alias: hp]

必須false
位置named
既定値
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-HostName <string>
このコマンドレットの実行対象となるクラスター ホストの名前を指定します。このパラメーターを省略した場合、または “-HostName .” を使用した場合は、ローカル クラスターが想定されます。[Alias: hn]

必須false
位置named
既定値
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-InputObject <PortRule[]>
処理の優先順位を設定する対象のクラスター ポート規則を指定します。これは、ポート規則フィルター モードが単一ホストの場合にのみ適用できます。

必須true
位置named
既定値
パイプライン入力を許可するtrue (ByValue, ByPropertyName)
ワイルドカード文字を許可するfalse

-InterfaceName <string>
NLBのバインド先のインターフェイスを指定します。これは、このコマンドレットの実行対象のクラスターのインターフェイスです。

必須true
位置named
既定値
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-IP <IPAddress>
処理の優先順位を設定する対象のクラスター ポート規則のIPアドレスを指定します。

必須true
位置named
既定値
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-Port <UInt32>
ノードの処理の優先順位を設定する対象のポート規則に含まれるポート番号を指定します。有効範囲は 0 から 65535 までです。

必須true
位置1
既定値
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: VerboseDebugErrorActionErrorVariableWarningActionWarningVariableOutBuffer、およびOutVariable。詳細については、「get-help about_commonparameters」と入力してヘルプを参照してください。

■入力

Microsoft.NetworkLoadBalancingClusters.PowerShell.PortRule

■出力

Microsoft.NetworkLoadBalancingClusters.PowerShell.PortRule

■メモ

■例

例1

 Get-NlbClusterNode node1 | Get-NlbClusterPortRule | Set-NlbClusterPortRuleNodeHandlingPriority -HandlingPriority 3 

例1:出力結果

IPAddress State     Start     End       Protocol  Mode      Affinity  Timeout
——— —–     —–     —       ——–  —-      ——–  ——-
All       Enabled   0         65535     Both      Single

例1:説明

このコマンドは、node1の所定のポート規則に対する処理の優先順位を 3 に変更します。これはSingleモードのポート規則に対して適用できます。

例2

 Set-NlbClusterPortRuleNodeHandlingPriority -HostName node1 -Interface vlan-3 -IP 255.255.255.255 -Port 80 -HandlingPriority 4 

例2:出力結果

IPAddress State     Start     End       Protocol  Mode      Affinity  Timeout
——— —–     —–     —       ——–  —-      ——–  ——-
All       Enabled   0         65535     Both      Single

例2:説明

このコマンドは、node1の所定ポート規則に対する処理の優先順位を4に変更します。これはSingleモードのポート規則に対して適用できます。

■関連するリンク

  • Set-NlbClusterPortRule
  • Add-NlbClusterPortRule
  • Set-NlbClusterPortRuleNodeWeight

[参考]