次の方法で共有


HPC Pack クラスターから Azure IaaS VM にバーストする

Microsoft HPC Pack を使用して Azure IaaS コンピューティング ノードを追加するための要件

このセクションでは、AZURE IaaS コンピューティング ノードを HPC クラスターに追加するための要件について説明します。

サポートされているバージョンの Microsoft HPC Pack クラスター

HPC Pack クラスターに Azure IaaS コンピューティング ノードをデプロイするには、Microsoft HPC Pack 2016 Update 1 以降のバージョンを実行している必要があります。

新しい HPC Pack クラスターを完全に Azure に作成する場合は、「Azure に HPC Pack 2016 クラスターをデプロイする」に移動し、デプロイするテンプレートを選択します。 それ以外の場合は、最初にオンプレミスで HPC Pack クラスターを作成する必要があります。 ハイブリッド HPC Pack クラスターのインストール手順については、以下を参照してください。

Azure サブスクリプション アカウント

Azure サブスクリプションを取得するか、サブスクリプションの所有者ロールとして割り当てる必要があります。

  • Azure サブスクリプションを作成するには、Azure サイトに移動します。

  • 既存のサブスクリプションにアクセスするには、Azure portalに移動します。

注:

各 Azure サブスクリプションには、いくつかの制限 (クォータとも呼ばれます) があります。 仮想マシン のコアには、リージョンの合計制限と、個別に適用されるリージョンごとのサイズシリーズ (Dv2、F など) の制限があります。 Azure portal に移動して、Azure サブスクリプションのクォータと使用状況を確認できます。 クォータを引き上げる場合は、オンラインカスタマー サポート要求を開

ネットワーク インフラストラクチャ

Azure IaaS コンピューティング ノード用の Azure 仮想ネットワークとサブネットを提供する必要があります。

完全に Azure で HPC Pack クラスターを作成する予定の場合は、ヘッド ノードと Azure IaaS コンピューティング ノードを 1 つの Azure 仮想ネットワークに作成する必要があります。

図は、類似したノードのグループに H P C H N が追加された Azure 仮想ネットワークを示しています。

ただし、オンプレミスの企業ネットワークにヘッド ノードを含むハイブリッド HPC Pack クラスターを作成し、Azure で Azure IaaS コンピューティング ノードを作成する場合は、オンプレミス ネットワークから Azure 仮想ネットワークへの expressRoute 接続を サイト間 VPN または 構成する必要があります。 ヘッド ノードは、インターネット経由で Azure サービスにも接続できる必要があります。 この接続を構成するには、ネットワーク管理者に問い合わせる必要がある場合があります。

図は、Azure 仮想ネットワークに接続された H P C H N を持つコープ ネットを示しています。

Azure 仮想ネットワークのネットワーク セキュリティ グループを構成する

Azure 仮想ネットワーク サブネットのネットワーク セキュリティ グループを構成することをお勧めします。 次の HPC ポート テーブル、各 HPC ノード タイプのリッスン ポートの一覧を示します。 ポートの詳細については、このドキュメントを参照してください。

役割 Port プロトコル
Linux コンピューティング ノード の 40000, 40002 TCP
Windows コンピューティング ノード の 1856, 6729, 6730, 7998, 8677, 9096, 9100-9611, 42323, 42324 TCP
Broker ノードの 9087、9091、9095、80、443、および Windows コンピューティング ノードのポート TCP
ヘッド ノードの 445、5800、5802、5969、5970、5974、5999、7997、9090、9092、9094、9892-9894、および ブローカー ノードのポート;1433 for Local Databases;Service Fabric クラスター (高可用性) の 10100、10101、10200、10300、10400 TCP
ヘッド ノードの 9894 UDP

Azure のヘッド ノードを含む HPC Pack クラスターの場合

完全に Azure の HPC Pack クラスターの場合は、次の NSG ルールを構成する必要があります。

1. 受信セキュリティ規則

AllowVNetInBound 既定の受信セキュリティ規則では、すべての受信仮想ネットワーク内トラフィックが許可されます。 ただし、ソース VirtualNetwork でトラフィックを拒否する規則を追加した場合、または優先度の高い任意の を する場合は、HPC ポート テーブル 一覧表示されているポートが拒否されていないこと 確認してください。

オンプレミス クライアントからインターネット経由でジョブを送信する場合は、次の受信セキュリティ規則を追加する必要があります。

名前 Port プロトコル source 宛先 アクション
AllowHttpsInBound 443 TCP [任意] [任意] Allow
AllowHpcSoaInbound 9087,9090,9091,9094 TCP [任意] [任意] Allow
2. 送信セキュリティ規則

AllowVNetOutBound 既定の送信セキュリティ規則では、すべての送信仮想ネットワーク内トラフィックが許可されます。 ただし、Destination VirtualNetwork でトラフィックを拒否するルールを追加した場合、または優先度の高い を する場合は、HPC ポート テーブルに一覧表示されているポート が拒否されていないこと 確認してください。

AllowInternetOutBound の既定の送信セキュリティ規則では、インターネットへのすべての送信トラフィック 許可されます。 ただし、Destination Internet でトラフィックを拒否する規則を追加した場合、または優先度の高い任意のする場合は、優先順位の高い次の送信規則を追加する必要があります。

名前 Port プロトコル source 宛先 アクション
AllowKeyVaultOutBound [任意] [任意] VirtualNetwork AzureKeyVault Allow
AllowAzureCloudOutBound [任意] [任意] VirtualNetwork AzureCloud Allow
AllowHttpsOutBound 443 TCP VirtualNetwork [任意] Allow

オンプレミスのヘッド ノードを使用するハイブリッド HPC Pack クラスターの場合

オンプレミスのヘッド ノードとブローカー ノード、および Azure IaaS コンピューティング ノードを含むハイブリッド HPC Pack クラスターの場合、Azure IaaS コンピューティング ノードの観点から次の NSG ルールを構成する必要があります。

1. 受信セキュリティ規則

AllowVNetInBound 既定の受信セキュリティ規則では、すべての受信仮想ネットワーク内トラフィックが許可されます。 ただし、ソース VirtualNetwork でトラフィックを拒否するルールを追加した場合、または優先度の高い任意の を する場合は、Linux コンピューティング ノード と、HPC ポート テーブルに一覧表示されている Windows コンピューティング ノード のポート 拒否されていないことを確認してください。

注:

Corporation ネットワークと Azure 仮想ネットワークの間にファイアウォールがある場合は、送信 ファイアウォール規則を構成して、ヘッド ノードの観点からこれらのポートを許可します。

2. 送信セキュリティ規則

AllowVNetOutBound 既定の送信セキュリティ規則では、すべての送信仮想ネットワーク内トラフィックが許可されます。 ただし、Destination VirtualNetwork でトラフィックを拒否するルールを追加した場合、または優先順位の高い任意の を する場合は、Azure IaaS コンピューティング ノードがオンプレミスのヘッド ノードに接続できるように、優先順位の高い次の送信規則を追加する必要があります。

名前 Port プロトコル source 宛先 アクション
AllowHpcIntraVNetTcpOutBound 443, 5970, 6729, 6730, 8677, 9892, 9893, 9894 TCP [任意] VirtualNetwork Allow
AllowHpcIntraVNetUdpOutBound 9894 UDP [任意] VirtualNetwork Allow

注:

Corporation ネットワークと Azure 仮想ネットワークの間にファイアウォールがある場合は、ヘッド ノードの観点からこれらのポートを許可するように、受信 ファイアウォール規則 構成します。

AllowInternetOutBound の既定の送信セキュリティ規則では、インターネットへのすべての送信トラフィック 許可されます。 ただし、Destination Internet でトラフィックを拒否する規則を追加した場合、または優先度の高い任意のする場合は、優先順位の高い次の送信規則を追加する必要があります。

名前 Port プロトコル source 宛先 アクション
AllowKeyVaultOutBound [任意] [任意] VirtualNetwork AzureKeyVault Allow
AllowAzureCloudOutBound [任意] [任意] VirtualNetwork AzureCloud Allow
AllowHttpsOutBound 443 TCP VirtualNetwork [任意] Allow

HPC Pack ヘッド ノードは、Azure Deployment Configuration の設定手順で次のパブリック URL にアクセスし、 の手順で Azure IaaS コンピューティング ノードを作成および管理 、オンプレミスファイアウォールの許可リストに追加する必要があります。

https://management.core.windows.net

https://management.azure.com

https://login.microsoftonline.com

https://login.live.com

https://login.windows.net

https://graph.windows.net

https://hpcazuresasdispatcher.azurewebsites.net

https://hpcazureconsumptionsb.servicebus.windows.net

https://*.vault.azure.net

https://*.microsoft.com

https://*.msauth.net

https://*.msftauth.net

https://*.core.windows.net

手順 1. Azure IaaS コンピューティング ノードのデプロイをサポートするようにクラスターを構成する

ヘッド ノードで HPC クラスター マネージャーを開き、Deployment To Do Listで、3 つの 必要なデプロイ タスクをすべて完了します。 指定した インストール資格情報のユーザー名とパスワードは、Azure 仮想マシンの管理者ユーザー名とパスワードとして使用されます。

手順 1.1 Azure デプロイ構成を設定する

HPC Cluster Manager または powerShell コマンドを して、Azure デプロイ構成を設定できます。

HPC Cluster Manager を使用して Azure Deployment Configuration を設定する

注:

この記事の Azure Deployment Configuration の設定ウィザードは、HPC Pack 2016 Update 2 (以降のバージョン) に基づいています。

[Azure Deployment Configuration 設定] をクリックし、ウィザードに従って構成を完了できます。

スクリーンショットは、[Azure デプロイ構成の設定] が強調表示された [実行する構成のデプロイ] の一覧を示しています。
1.Azure サービス プリンシパルを構成する

Azure サービス プリンシパルは、AZURE IaaS VM のプロビジョニング、開始、停止、削除に HPC Pack サービスによって使用されます。 Azure サービス プリンシパルを構成するには、[ログイン ボタンをクリックして、Azure サービス プリンシパル ページで Azure アカウントにログインします。

スクリーンショットは、[ログイン] ボタンが強調表示された状態でサブスクリプションとテナント ID を入力できる Azure サービス プリンシパル ページを示しています。

Azure アカウントに複数の Azure サブスクリプションが関連付けられている場合は、[ の選択] ボタン クリックして、Azure IaaS コンピューティング ノードのデプロイに使用するサブスクリプションを選択します。

[サービス プリンシパル名] 一覧から既存の Azure サービス プリンシパル 選択し、[参照] ボタンをクリックして、Azure サービス プリンシパルの作成に使用した適切な 管理証明書 を選択するか、[ の作成] ボタンをクリックして新しい Azure サービス プリンシパルを作成できます。

スクリーンショットは、[サービス プリンシパル名] ドロップダウン メニューが強調表示された [Azure サービス プリンシパル] ページを示しています。

新しい Azure サービス プリンシパルを作成する場合は、[Azure サービス プリンシパル の作成] ダイアログで、新しい Azure サービス プリンシパルのわかりやすい一意の 表示名 を指定し、[参照] クリックしてローカル コンピューター\個人用ストアから 証明書 を選択するか、[ のインポート] をクリック して PFX 形式の証明書をインポートするか、新しい自己署名証明書を生成します。 次に、[OK] クリックして Azure サービス プリンシパルを作成します。

スクリーンショットには、[Azure サービス プリンシパルの作成] ダイアログ ボックスが表示され、表示名を入力して証明書を参照できます。

注:

  • Azure サービス プリンシパルの証明書は、HPC ノード間の通信をセキュリティで保護するために使用される証明書とは異なる必要があります。

  • Azure サービス プリンシパルを作成するには、Azure アカウントが Azure サブスクリプションの 所有者 ロールである必要があり、Azure サービス プリンシパルは既定で Azure サブスクリプションの 共同作成者 ロールとして付与されます。HPC Pack クラスター内の Azure リソースのアクセス制御 を参照して、ユーザーのシナリオに応じて Azure サービス プリンシパルのアクセス許可を手動で再構成できます。

2.Azure Virtual Network を指定する

[Azure 仮想ネットワーク] ページで、Azure IaaS コンピューティング ノードを作成する Azure 仮想ネットワークの情報を指定します。

Azure Location: 仮想ネットワークが配置される Azure の場所

リソース グループ名: 仮想ネットワークが作成されたリソース グループ

仮想ネットワーク名: Azure IaaS コンピューティング ノードが作成される仮想ネットワークの名前。

サブネット名: Azure IaaS コンピューティング ノードが作成されるサブネットの名前。

スクリーンショットは、サブネット名を入力できる Azure 仮想ネットワーク ページを示しています。

注:

指定した仮想ネットワークには、ヘッド ノードが配置されているオンプレミス ネットワークへのサイト間 VPN または Express Route 接続が必要です。

3. Azure Key Vault 証明書を構成する

HPC Pack サービスは、X.509 証明書を使用して HPC ノード通信をセキュリティで保護します。 そのため、プロビジョニング中に Azure IaaS VM にインストールできるように、この証明書を Azure Key Vault にインポートする必要があります。 [Azure Key Vault 証明書の] ページ 、[ の選択] ボタンをクリックして[Azure Key Vault 名] を選択し、Azure Key Vault シークレットを既に作成している場合は[シークレット名] を します。 または、[ の作成] ボタンをクリックして新しいボタンを作成します。

スクリーンショットは、Key Vault 情報を入力できる Azure Key Vault 証明書ページを示しています。

新しい Key Vault シークレットを作成する場合は、[コンテナー名] リストから既存の Azure キー コンテナー名を選択するか、[ の作成] クリックして新しい Azure キー コンテナーを作成できます。 次に、[シークレット名]のわかりやすい を指定し、[ の参照] クリックするか、[インポート] を して正しい証明書を選択します。

スクリーンショットには、コンテナー名を選択し、シークレット名と証明書を入力できるダイアログ ボックスが表示されます。

注:

HPC ノード通信にヘッド ノードで自己署名証明書を使用している場合は、同じ証明書 (ヘッド ノードのインストール時に使用される証明書) を Azure Key Vault シークレットにアップロードする必要があります。 失敗した場合、信頼されていない証明書の問題が原因で、ヘッド ノードに対して Azure IaaS コンピューティング ノードに到達できなくなります。 また、次の PowerShell コマンドを使用して、ノード通信に使用される証明書の拇印を取得できます。Get-HPCClusterRegistry -propertyName SSLThumbprint

設定を確認し、[完了] クリックして構成を完了します。

PowerShell を使用して Azure デプロイ構成を設定する

次の PowerShell コマンドを実行して、既に Azure Deployment Configuration を設定することもできます。

  • Azure サービス プリンシパルと Azure Key Vault 証明書を作成しました。
  • すべてのヘッド ノード マシンに秘密キー を使用して、Azure サービス プリンシパルの証明書をローカル コンピューター\個人用 証明書ストア インストールしました。
Add-PSSnapin Microsoft.Hpc
# Set Azure subscription and Service Principal information
Set-HpcClusterRegistry -PropertyName SubscriptionId -PropertyValue <subscriptionId>
Set-HpcClusterRegistry -PropertyName TenantId -PropertyValue <tenantId>
Set-HpcClusterRegistry -PropertyName ApplicationId -PropertyValue <ServiceprincipalApplicationId>
Set-HpcClusterRegistry -PropertyName Thumbprint -PropertyValue <ServiceprincipalCertThumbprint>

# Set Virtual network information
Set-HpcClusterRegistry -PropertyName VNet -PropertyValue <VNetName>
Set-HpcClusterRegistry -PropertyName Subnet -PropertyValue <SubnetName>
Set-HpcClusterRegistry -PropertyName Location -PropertyValue <VNetLocation>
Set-HpcClusterRegistry -PropertyName ResourceGroup -PropertyValue <VNetResourceGroup>

# Set Azure Key vault certificate
Set-HpcKeyVaultCertificate -ResourceGroup <KeyVaultResourceGroupName> -CertificateUrl <KeyVaultSecretUrlWithVersion> -CertificateThumbprint <KeyVaultCertificateThumbprint>

手順 1.2 他のクラスター プロパティを構成する

ドメインに参加していない Azure IaaS Windows コンピューティング ノードまたは Linux コンピューティング ノード 、ヘッド ノードが配置される別のサブネット に作成する予定の場合は、ヘッド ノード で次の PowerShell コマンド を実行して、クラスターに異なるサブネット内のノードのホスト エントリを追加します。 失敗した場合、ヘッド ノードはホスト名を解決できないため、ヘッド ノードに対してノードに到達できません。

Set-HpcClusterRegistry -PropertyName HostFileForOtherSubnet -PropertyValue 1
if($env:CCP_CONNECTIONSTRING -like "*,*,*") {
    Connect-ServiceFabricCluster
    $opId = [Guid]::NewGuid()
    Start-ServiceFabricPartitionRestart -OperationId $opId -RestartPartitionMode AllReplicasOrInstances -ServiceName fabric:/HpcApplication/ManagementStatelessService -ErrorAction Stop
} else {
    Restart-Service -Name HpcManagement
}

Azure IaaS ノード テンプレート Azure IaaS Linux コンピューティング ノード 作成する予定の場合は、ヘッド ノード で次の PowerShell コマンド を実行して、ヘッド ノードと Linux コンピューティング ノード間の Http 経由の通信を有効にします。

Set-HpcClusterRegistry -PropertyName LinuxHttps -PropertyValue 0
if($env:CCP_CONNECTIONSTRING -like "*,*,*") {
    Connect-ServiceFabricCluster
    $opId = [Guid]::NewGuid()
    Start-ServiceFabricPartitionRestart -OperationId $opId -RestartPartitionMode AllReplicasOrInstances -ServiceName fabric:/HpcApplication/SchedulerStatefulService -ErrorAction Stop
} else {
    Restart-Service -Name HpcScheduler
}

HPC Pack 2019 Update 2 以前のバージョンのを実行していて、Azure IaaS ノード テンプレート で作成Azure IaaS Linux コンピューティング ノードを作成する予定の場合は、「HPC Pack の Linux 認証キーを管理する」 を参照して、Linux コンピューティング ノードの Linux 認証キーを設定していることを確認します。

手順 2. Azure IaaS ノード テンプレートを作成する

重要

  1. この記事の Azure IaaS ノード テンプレート ウィザードは、HPC Pack 2016 Update 3 に基づいています。 他の HPC Pack バージョンでは若干異なります。
  2. カスタム イメージまたは共有イメージを使用する場合は、VM イメージのオペレーティング システムが要件を満たしている必要があります。
  3. 共有イメージ は、HPC Pack 2016 Update 2 以前のバージョンではサポートされていません。

[構成] パネルで、[ノード テンプレート] をクリックし、[アクション] の一覧で [新しい ] をクリックして、Azure IaaS ノード テンプレートを作成します。

スクリーンショットは、[テンプレートの構成] ページを示しています。

[ノード テンプレートの種類 選択 ページで、Azure IaaS ノード テンプレートノード テンプレートの種類を選択します。

スクリーンショットは、[Azure I a S ノード テンプレート] が選択された [ノード テンプレートの種類の選択] を示しています。

テンプレート名の指定 ページで、テンプレート名 を指定し、必要に応じて 説明を指定します。

スクリーンショットには、[テンプレート名の指定] ページが表示され、テンプレート名が入力されています。

VM グループ情報の指定 ページで、IaaS コンピューティング ノード 作成される Azure リソース グループのリソース グループ名 を指定します。 既存のリソース グループを指定する場合は、Azure 仮想ネットワークが配置されているのと同じ Azure の場所にあることを確認します。

Azure 可用性セットにノードを 作成するかどうかを指定します。

スクリーンショットは、[リソース グループ名] と [Azure 可用性セットでのノードの作成] オプションが強調表示された [V M グループ情報の指定] ページを示しています。

[VM イメージの の指定] ページで、IaaS コンピューティング ノードのデプロイに使用する VM イメージを指定します。 MarketplaceImageCustomWindowsImage、または CustomLinuxImageイメージの種類のいずれかを選択できます。

MarketplaceImageとして [イメージの種類] 選択した場合は、[OS の種類] 選択し、[イメージ ラベル] を して、Azure Marketplace のパブリック VM イメージを選択します。

OS の種類 が Windows 使用されていて、HPC Pack ヘッド ノードがドメインに参加している場合は、ノードをドメインに参加 するかどうかを指定します。 Windows コンピューティング ノードをドメインに参加することをお勧めします。

スクリーンショットには、イメージの種類、OS の種類、およびイメージ ラベルを入力し、ノードをドメインに参加させるかどうかを選択できるダイアログ ボックスが表示されます。

CustomImageとしてイメージの種類 を選択した場合は、OS の種類の、カスタマイズされた VM イメージの イメージ名、イメージを格納する リソース グループの を指定します。 VM イメージは、Azure IaaS コンピューティング ノードが作成されるのと同じ Azure の場所に作成されている必要があります。 カスタム イメージの作成 に従って、IaaS VM 用に独自のカスタマイズされたイメージを作成してください。

カスタマイズされた HPC Pack コンピューティング ノード VM イメージを作成する方法については、HPC Pack コンピューティング ノードのカスタム VM イメージの詳細 リンクをクリックしてください。

スクリーンショットには、[O S の種類] を選択し、[リソース グループ] と [イメージ名] を入力し、ノードをドメインに参加させるかどうかを選択できるダイアログ ボックスが表示されます。

[イメージの種類] SharedImage として選択した場合は、OS の種類、Azure 共有イメージ ギャラリーの共有 VM イメージの Azure リソース ID を指定します。 手順 1.1 で指定した Azure サービス プリンシパルに、共有イメージ ギャラリーへの読み取り アクセス許可 付与されていることを確認します。

スクリーンショットには、Os の種類として Linux を選択し、リソース ID を入力できるダイアログ ボックスが表示

[確認] ページで、指定した設定を確認し、[作成] クリックしてノード テンプレートを作成します。

手順 3. IaaS コンピューティング ノードを作成して管理する

HPC Cluster Manager コンソール 開き、[リソース管理] バーをクリックし、[ノードの追加] クリックして、ノードの追加ウィザードを開始します。

スクリーンショットは、[ノードの追加] が強調表示された [リソース管理] ページを示しています。

[デプロイ方法の選択] ページで、[Azure IaaS VM ノード追加] を選択します。

スクリーンショットは、[Add Azure I a S V M nodes]\(Azure I a S V M ノードの追加\) が選択された [デプロイ方法の選択] ページを示しています。

[新しいノードの指定] ページで、手順 2 で作成した ノード テンプレート を選択し、ノード の数と ノードの VM サイズを指定して、[次へ]クリックします。

スクリーンショットは、[新しいノードの指定] ページを示しています。このページでは、ノード テンプレート、ノード数、ノードのサイズ (V M) を選択できます。

[完了]クリックすると、[ノード] 一覧に 2 つの新しいノード 表示されます。 これら 2 つのノードに対応する Azure 仮想マシンは、実際には Azure 側にまだ作成されていません。

スクリーンショットには、[リソース管理] ページが表示され、4 つのノードのうち 2 つ (開始されていないノード) が強調表示されています。

その後、ノードを選択し、[開始] をクリックして、Azure に仮想マシンを作成できます。

スクリーンショットは、[スタート] ボタンが強調表示された [ノード] ページを示しています。

Azure IaaS コンピューティング ノードのプロビジョニングを待ちます。

スクリーンショットは、プロビジョニング状態の 2 つのノードを含む [ノード] ページを示しています。

Azure IaaS コンピューティング ノードのデプロイが完了し、Node HealthOKになったら、これらのノードにジョブを送信できます。

ノードを手動で停止するには、[停止]をクリックすると、Azure 内の仮想マシンが割り当て解除されます。

スクリーンショットには、2 つのノードが選択され、[停止] ボタンが強調表示され、メニューに表示されている [ノード] ページが表示されます。

不要な場合は、ノード 削除 することもできます。削除すると、Azure 仮想マシンも削除されます。

azure ノードの自動拡張と縮小 機能 有効にした場合、Azure IaaS ノードは、クラスターのワークロードに応じて自動的に開始または停止されます。Azure リソースの自動拡張の縮小に関するページを参照してください。