Freigeben über


Erstellen eines benutzerdefinierten VM-Images für HPC Pack IaaS-Computeknoten

In diesem Artikel wird beschrieben, wie Sie ein eigenes angepasstes VM-Image erstellen können, um IaaS-Computeknoten für Ihren HPC Pack 2016-Cluster bereitzustellen.

Es gibt zwei verschiedene Möglichkeiten zum Erstellen des angepassten VM-Images, eines für HPC Pack 2016 Update 3 und HPC Pack 2019, das andere für HPC Pack 2016 RTM, HPC Pack 2016 Update 1 und HPC Pack 2016 Update 2. Je nach HPC Pack-Version Ihres Kopfknotens wählen Sie die richtige Methode aus.

Hinweis

Der Unterschied zwischen HPC Pack Update 3 VM-Image und HPC Pack Update 2 (und früher) VM-Image besteht darin, dass HPC Pack-Computeknoten und Windows Management Framework 5.1 in letzterem vorinstalliert sein müssen.

Tipp

Sie können auch das Azure Image Builder-Feature verwenden, um die erstellung angepasster VM-Images zu automatisieren.

Erstellen eines benutzerdefinierten VM-Images für HPC Pack 2016 Update 3 und HPC Pack 2019

Schritt 1: Erstellen eines virtuellen Computers in Azure

Erstellen Sie im Azure-Portal einen virtuellen Azure-Computer mit einem der folgenden Betriebssysteme: Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019.

Schritt 2: Installieren und Konfigurieren Ihrer eigenen Anwendungen auf dem virtuellen Computer

Melden Sie sich auf dem virtuellen Computer an, installieren und konfigurieren Sie Ihre eigenen Anwendungen.

Schritt 3: Generalisieren des virtuellen Computers mithilfe von Sysprep

Detaillierter Link: Generalisieren einer VM vor dem Erstellen eines Images

  1. Melden Sie sich bei Ihrem virtuellen Windows-Computer an.
  2. Öffnen Sie ein Eingabeaufforderungsfenster als ein Administrator.
  3. Löschen Sie das Verzeichnis „Panther“ (c:\Windows\Panther).
  4. Ändern Sie dann das Verzeichnis in %windir%\system32\sysprep, und führen Sie dann Folgendes aus: sysprep.exe /oobe /generalize /mode:vm /shutdown

Die VM wird heruntergefahren, wenn Sysprep die Generalisierung des virtuellen Computers abgeschlossen hat. Starten Sie den virtuellen Computer nicht neu.

Legen Sie nach Abschluss von Sysprep den Status der VM auf Generalisiert fest.

Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized

Schritt 4: Erstellen eines VM-Images

Öffnen Sie das Azure-Portal, suchen Sie den virtuellen Computer aus der Liste der virtuellen Computer. Klicken Sie auf der Seite "Übersicht" des virtuellen Computers auf "Erfassen" , um ein verwaltetes Image vom virtuellen Computer zu erstellen.

  1. Öffnen Sie das Azure-Portal.
  2. Klicken Sie im Menü auf der linken Seite auf virtuelle Computer, und suchen Sie den virtuellen Computer.
  3. Klicken Sie auf der Seite "Übersicht" für den virtuellen Computer im oberen Menü auf "Erfassen".
  4. Geben Sie im Namen den Namen ein, den Sie für das Bild verwenden möchten.
  5. Wählen Sie in der Gruppe "Ressource " entweder " Neu erstellen" aus, und geben Sie einen Namen ein, oder wählen Sie "Vorhandene Verwenden " aus, und wählen Sie eine Ressourcengruppe aus der Dropdownliste aus.
  6. Wählen Sie "Diesen virtuellen Computer automatisch löschen" aus, nachdem Sie das Image erstellt haben.
  7. Klicken Sie auf "Erstellen ", um das VM-Image zu erstellen.

Erstellen eines benutzerdefinierten VM-Images für HPC Pack 2016 Update 2 (oder früher)

Schritt 1: Erstellen oder Auswählen eines Azure IaaS-Computeknotens mit HPC Pack 2016 Update 2 (oder einer früheren Version)

Sie können entweder einen virtuellen Azure-Computer erstellen und die richtige Version des HPC Pack 2016-Computeknotens manuell installieren oder einen derzeit ausgeführten Azure IaaS-Computeknoten in Ihrem vorhandenen HPC Pack 2016-Cluster auswählen.

Wenn Windows Management Framework (WMF) 5.1 nicht im IaaS-Computeknoten installiert ist, laden Sie es herunter, und installieren Sie es.

Schritt 2: Installieren und Konfigurieren Ihrer eigenen Anwendungen im Azure IaaS-Computeknoten

Melden Sie sich auf dem virtuellen Computer an, installieren und konfigurieren Sie Ihre eigenen Anwendungen.

Schritt 3: Deinstallieren der VM-Erweiterung(en) vom virtuellen Computer

Suchen Sie im Azure-Portal den entsprechenden virtuellen Azure-Computer, klicken Sie auf "Erweiterungen", deinstallieren Sie alle VM-Erweiterungen, falls vorhanden.

Schritt 4: Löschen der clusterspezifischen Informationen vom Computeknoten

Melden Sie sich beim Azure IaaS-Computeknoten an, öffnen Sie eine Windows PowerShell-Konsole als Administrator, und führen Sie das folgende PowerShell-Skript aus, um die clusterspezifischen Informationen zu löschen.

# Step 1. Stop all the HPC services and change StartupType to Disabled
$hpcServices = @("HpcManagement", "HpcNodeManager", "msmpi", "HpcMonitoringClient", "HpcSoaDiagMon")
foreach($svc in $hpcServices)
{
    Stop-Service -Name $svc -Force -ErrorAction SilentlyContinue
    Set-Service -Name $svc -StartupType Disabled
}

# Step 2: Remove HPC logs and temp files from this node
$datadir = [System.Environment]::GetEnvironmentVariable("CCP_DATA", [System.EnvironmentVariableTarget]::Machine)
$logFilesPath = [System.IO.Path]::Combine($datadir, "LogFiles")
if(Test-Path $logFilesPath -PathType Container)
{
    Get-ChildItem -Path $logFilesPath | select -ExpandProperty FullName | Remove-Item -Force -Recurse -ErrorAction SilentlyContinue
}
Get-ChildItem -Path C:\Windows\Temp  | select -ExpandProperty FullName | Remove-Item -Force -Recurse -ErrorAction SilentlyContinue
Get-ChildItem -Path $env:TEMP | select -ExpandProperty FullName | Remove-Item -Force -Recurse -ErrorAction SilentlyContinue

# Step 3: Remove CustomData.bin if it exists
Remove-Item "$env:SYSTEMDRIVE\AzureData\CustomData.bin" -Force -ErrorAction SilentlyContinue

# Step 4: Remove the HPC communication certificate
$thumbprint = Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\HPC -Name SSLThumbPrint
Remove-Item Cert:\LocalMachine\My\$thumbprint -ErrorAction SilentlyContinue
Remove-Item Cert:\LocalMachine\Root\$thumbprint -ErrorAction SilentlyContinue

# Step 5: Clear the information of the current HPC cluster
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\HPC -Name ClusterConnectionString -Value ""
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\HPC -Name SSLThumbPrint -Value ""
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\HPC -Name NonDomainRole -Value 0 -Type DWord
if(Test-Path HKLM:\SOFTWARE\Wow6432Node\Microsoft\HPC)
{
    Set-ItemProperty -Path HKLM:\SOFTWARE\Wow6432Node\Microsoft\HPC -Name ClusterConnectionString -Value ""
    Set-ItemProperty -Path HKLM:\SOFTWARE\Wow6432Node\Microsoft\HPC -Name SSLThumbPrint -Value ""
    Set-ItemProperty -Path HKLM:\SOFTWARE\Wow6432Node\Microsoft\HPC -Name NonDomainRole -Value 0 -Type DWord
}

[Environment]::SetEnvironmentVariable("CCP_SCHEDULER", "", [System.EnvironmentVariableTarget]::Machine)
[Environment]::SetEnvironmentVariable("CCP_CLUSTERCONNECTIONSTRING", "", [System.EnvironmentVariableTarget]::Machine)

Schritt 5: Generalisieren des virtuellen Computers mithilfe von Sysprep

Detaillierter Link: Generalisieren einer VM vor dem Erstellen eines Images

  1. Melden Sie sich bei Ihrem virtuellen Windows-Computer an.
  2. Öffnen Sie ein Eingabeaufforderungsfenster als ein Administrator.
  3. Löschen Sie das Verzeichnis „Panther“ (c:\Windows\Panther).
  4. Ändern Sie dann das Verzeichnis in %windir%\system32\sysprep, und führen Sie dann Folgendes aus: sysprep.exe /oobe /generalize /mode:vm /shutdown

Die VM wird heruntergefahren, wenn Sysprep die Generalisierung des virtuellen Computers abgeschlossen hat. Starten Sie den virtuellen Computer nicht neu.

Legen Sie nach Abschluss von Sysprep den Status der VM auf Generalisiert fest.

Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized

Schritt 6: Erstellen eines VM-Images

Öffnen Sie das Azure-Portal, suchen Sie den virtuellen Computer aus der Liste der virtuellen Computer. Klicken Sie auf der Seite "Übersicht" des virtuellen Computers auf "Erfassen" , um ein verwaltetes Image vom virtuellen Computer zu erstellen.

  1. Öffnen Sie das Azure-Portal.
  2. Klicken Sie im Menü auf der linken Seite auf virtuelle Computer, und suchen Sie den virtuellen Computer.
  3. Klicken Sie auf der Seite "Übersicht" für den virtuellen Computer im oberen Menü auf "Erfassen".
  4. Geben Sie im Namen den Namen ein, den Sie für das Bild verwenden möchten.
  5. Wählen Sie in der Gruppe "Ressource " entweder " Neu erstellen" aus, und geben Sie einen Namen ein, oder wählen Sie "Vorhandene Verwenden " aus, und wählen Sie eine Ressourcengruppe aus der Dropdownliste aus.
  6. Wählen Sie "Diesen virtuellen Computer automatisch löschen" aus, nachdem Sie das Image erstellt haben.
  7. Klicken Sie auf "Erstellen ", um das VM-Image zu erstellen.