Microsoft HPC Pack のノード ロールについて
Microsoft HPC Pack では、ノード ロールによってノードの機能が決定されます。 ノードは、クラスターの管理、ジョブの実行、SOA サービス要求のルーティングなどの機能を実行できます。 ノードが実行できるロールは、HPC Pack のインストール時 (ノードの構成またはデプロイ時) に決定されます。 ヘッド ノードとブローカー ノードは、一度に複数のノード ロールを実行できます。 必要なサービスと機能がノードにインストールされている場合は、クラスターのワークロードとサイズに応じて、コンピューティング ノードまたはブローカー ノードのロールを有効または無効にすることができます。 詳細については、このトピックの「複数のロールとブローカーのスケーリング」セクションを参照してください。
ノード ロールは、組み込みのノード グループ (HeadNodes、ComputeNodes、WCFBrokerNodes、WorkstationNodes、UnmanagedServerNodes、および AzureNodes (AzureWorkerNodes から変更) に含めるノードを決定します。 ノード グループ プロパティを使用すると、ノードをフィルター処理して選択し、ノードのロールに従ってノードの操作を監視および実行したり、特定のグループ内のノードにジョブを送信したりできます。
次の表では、ノードロールについて説明します。
ノード ロール | 機能 | 通常のノードの状態 | |
---|---|---|---|
ヘッド ノード | 管理サービスとジョブ スケジュール サービスをクラスターに提供します。 エンタープライズ ネットワーク全体の Service-Oriented アーキテクチャ (SOA) クライアント アプリケーションからのセッション要求をリッスンし、WCF ブローカー ノードに接続するための情報をクライアントに提供します。 エンタープライズ ネットワークに接続されている必要があります。 |
オフライン | |
WCF ブローカー ノード | SOA クライアントから要求を受信し、それらをクラスター (ノード) 上のサービス ホストに配布し、応答を収集してクライアントに送り返します。 セッションが DurableSession の場合、ブローカーはメッセージ キュー (MSMQ) を使用してメッセージを格納します。 SOA セッションを監視および管理します。 エンタープライズ ネットワークに接続されている必要があります。 |
オンライン | |
コンピューティング ノード | クラスター ジョブを受け入れて実行します。 SOA サービスをホストします。 以下も含まれます。 - MPI ジョブをサポートする MS-MPI。 - Excel ブックまたは UDF オフロード ジョブをサポートする HPC Services for Excel |
オンライン | |
ワークステーション ノード | クラスター ジョブを受け入れて実行します。 SOA サービスをホストします。 以下も含まれます。 - MPI ジョブをサポートする MS-MPI。 - Excel ブックまたは UDF オフロード ジョブをサポートする HPC Services for Excel - アイドル状態マネージャーがオンラインになり、ユーザー アクティビティ検出設定に基づいてオフラインになる (可用性ポリシーで有効および構成されている場合)。 |
オンラインまたはオフライン (可用性ポリシーごと) |
|
Windows Azure Worker ノード | HPC Pack 2008 R2 Service Pack 1 (SP1) 以降で使用可能なロール。 クラスター ジョブを受け入れて実行します。 SOA サービスをホストします。 以下も含まれます。 - MPI ジョブをサポートする MS-MPI (HPC Pack 2008 R2 の Service Pack 2 時点)。 - UDF オフロード ジョブをサポートする XLL コンテナー サービス (HPC Services for Excel の一部)。 |
オンラインまたはオフライン (可用性ポリシーごと) |
|
Windows Azure 仮想マシン ノード | 廃止。 重要: Microsoft Azure -The VM ロール機能 (ベータ) は、2013 年 5 月 15 日に廃止されます。 また、Windows HPC クラスターから VM ロール ノードにカスタム VHD をデプロイするための Microsoft HPC Pack 2008 R2 と Microsoft HPC Pack 2012 の設定も非推奨になりました。 提供終了日が過ぎると、HPC クラスターからの VM ロールのデプロイは失敗するか、アクセスできなくなります。 | ||
アンマネージド サーバー ノード | HPC Pack 2008 R2 Service Pack 3 (SP3) 以降で使用可能なロール。 ファイル サーバーやプリント サーバーの実行など、一般的なネットワーク ワークロードの需要が低い期間中にクラスター ジョブを実行するために日和見的に使用できるその他のサーバー。 |
オフライン |
複数のロールとブローカーのスケーリング
ヘッド ノードには、ブローカー ノードとコンピューティング ノードロールの機能とサービスが含まれています。 ヘッド ノードがフェールオーバー クラスターで (高可用性のために) 構成されていない場合は、これらの追加ロールのいずれかまたは両方を実行できます。 既定では、ヘッド ノードでは 3 つのロールがすべて有効になっているため、オンライン ノードの状態になると、3 つのロールの実行がすべて開始されます。 ヘッド ノードで 3 つの役割をすべて実行すると、単一のサーバーで開発 'クラスター' を設定できます。 管理とジョブのスケジュール設定専用のサーバー全体が不要な場合は、ヘッド ノード上の 2 つのロールを使用して、小規模なクラスターでのリソース使用量を最大化できます。
ブローカー ノードにはコンピューティング ノード ロールの機能とサービスが含まれているため、ロールをすばやく切り替えることができます。 SOA ワークロードをサポートする大規模なクラスターでは、ワークロードの必要に応じてコンピューティング ノードとブローカー ノードをスケーリングできます。 たとえば、クラスターでサポートされる SOA セッションの数は、毎週または毎月のビジネス サイクルによって異なる場合や、夜間や週末に遅くなる場合があります。 セッションの需要が高い場合は、より多くのブローカー ノードを有効にし、需要が低下したときにそれらをコンピューティング ノードに変換できます。
手記
ノードでコンピューティング ノード ロールが有効になっていて、ノードがオンラインの場合、HPC ジョブ スケジューラ サービスは、ノード上のすべてのコアを潜在的なジョブ リソースと見なします。 HPC ジョブ スケジューラ サービスは、クラスターをできるだけビジー状態に保つために、すべてのコアにタスクを割り当てようとします。 コンピューティング ノードを追加のロールとして有効にした場合、ヘッド ノードやブローカー ノードの機能は、実行中のタスクと CPU 時間を共有する必要があります。 コンピューティング ノード ロールを追加する可能性は、ヘッド ノードまたはブローカー ノードのビジー状態と、タスクが実行している作業量によって異なります。
HPC Pack には、HPC ジョブ スケジューラ サービスで使用できるようにするノード上のコア数を指定する機能が含まれています。 ノードで複数のロールを有効にする場合は、この機能を使用して、基本的にコンピューティング ノード ロールに使用されるコアの数を制限できます。
ノード ロールを変更する方法
ノード ロールを有効または無効にするには、ノードを
で ComputeNode ロールを無効にする
HPC PowerShell を使用してノード ロールを変更することもできます。 ノード管理コマンドを実行するにはクラスター管理者である必要があります。また、管理者特権の HPC PowerShell ウィンドウでコマンドレットを実行する必要があります (HPC PowerShell を右クリックし、[管理者として実行] をクリックします)。 次のサンプル コマンドレットは、myHeadNode
Set-HpcNodeStateを使用してノード
ヘッド ノードをオフラインにするには
Set-hpcnodestate –name myHeadNode –state offline
ブローカー ノードをオフラインにするには:
Set-hpcnodestate –name BN-01,BN-02 –state offline
Set-HpcNodeを使用してロール
ヘッド ノードで追加の役割をすべて無効にするには:
Set-hpcnode –name myHeadNode –role none
ヘッド ノードでブローカー ノードの役割を有効にするには:
Set-hpcnode –name myHeadNode –role brokernode
ヘッド ノードで両方の追加ロールを有効にするには:
Set-hpcnode –name myHeadNode –role computenode, brokernode
SP2 ヘッド ノードでコンピューティング ノードの役割を有効にし、ジョブに使用するコアを 2 つだけ指定します。
Set-hpcnode –name myHeadNode –role computenode –subscribedcores 2
2 つのブローカー ノードでコンピューティング ノード ロールを有効にするには:
Set-hpcnode –name BN-01,BN-02 –role computenode
2 つのブローカー ノードでブローカー ノードの役割を有効にするには:
Set-hpcnode –name BN-01,BN-02 –role brokernode
SP2 ブローカー ノードで両方のロールを有効にし、ジョブに 2 つのコアのみを使用するように指定します。
Set-hpcnode –name BN-01 –role brokernode,computenode –subscribedcores 2
Set-HpcNodeStateを使用してノード
ヘッド ノードをオンラインにするには
Set-hpcnodestate –name myHeadNode –state online
ブローカー ノードをオンラインにするには:
Set-hpcnodestate –name BN-01,BN-02 –state online
インストールされているロールと有効なロールを追跡する方法
特定のノードで有効になっているロールを確認するには、
HPC クラスター マネージャーの Node Management リスト ビューに列を追加して、インストールされているロールと有効なロールを表示できます。
インストール済みサービス ロール プロパティには、インストールされているロールが一覧表示されます。
ノード ロール プロパティには、有効になっているロールが一覧表示されます ([ノード ロール] 列にはヘッド ノード ロールは一覧表示されません)。 ノード リストに列を追加するには、列ヘッダーを右クリックし、[列の選択]
手記
ヘッド ノードがフェールオーバー クラスターで構成されている場合は、PrimaryHeadNode プロパティをノード リスト ビューに追加して、アクティブなヘッド ノードであるヘッド ノードを追跡することもできます。
前のセクションのスクリーンショットは、HeadNodes グループでフィルター処理されたノード リストと、ノード 一覧に表示されるノード ロール列を示しています。
その他の参照
WCF ブローカー ノード の構成の
クラスター へのノードの追加の
ノード テンプレート で Azure ノード ロールを構成する