Créer une image de machine virtuelle personnalisée pour le nœud de calcul IaaS HPC Pack
Cet article explique comment créer votre propre image de machine virtuelle personnalisée pour déployer des nœuds de calcul IaaS pour votre cluster HPC Pack 2016.
Il existe deux façons de créer l’image de machine virtuelle personnalisée, une pour HPC Pack 2016 Update 3, l’autre pour HPC Pack 2016 RTM, HPC Pack 2016 Update 1 et HPC Pack 2016 Update 2016 Update 2. Vous devez sélectionner la bonne façon en fonction de la version HPC Pack de vos nœuds principaux.
Remarque
La différence entre l’image de machine virtuelle HPC Pack Update 3 et l’image de machine virtuelle HPC Pack Update 2 (et antérieure) est que le nœud de calcul HPC Pack et Windows Management Framework 5.1 doit être préinstallé dans ce dernier.
Conseil
Vous pouvez également utiliser fonctionnalité Azure Image Builder pour automatiser la création d’images de machine virtuelle personnalisée.
Créer une image de machine virtuelle personnalisée pour HPC Pack 2016 Update 3
Étape 1 : Créer une machine virtuelle dans Azure
Sur portail Azure, créez une machine virtuelle Azure avec l’un des systèmes d’exploitation suivants : Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019.
Étape 2 : Installer et configurer vos propres applications dans la machine virtuelle
Connectez-vous à la machine virtuelle, installez et configurez vos propres applications.
Étape 3 : Généraliser la machine virtuelle à l’aide de Sysprep
Connectez-vous à la machine virtuelle Windows, accédez au répertoire %windir%\system32\sysprep
, puis exécutez sysprep.exe en tant qu’administrateur.
Dans la boîte de dialogue outil de préparation du système
Une fois Sysprep terminé, il arrête la machine virtuelle.
Étape 4 : Créer une image de machine virtuelle
Ouvrez le portail Azure , recherchez la machine virtuelle dans la liste des machines virtuelles. Dans la page Vue d’ensemble de de la machine virtuelle, cliquez sur Capture pour créer une image managée à partir de la machine virtuelle.
- Ouvrez le portail Azure .
- Dans le menu de gauche, cliquez sur Machines virtuelles et recherchez la machine virtuelle.
- Dans la page Vue d’ensemble
vue d’ensemble de la machine virtuelle, dans le menu supérieur, cliquez sur Capturer . - Dans Nom, tapez le nom que vous souhaitez utiliser pour l’image.
- Dans groupe de ressources sélectionnez Créer une et tapez un nom, ou sélectionnez Utiliser un existant et sélectionnez un groupe de ressources à utiliser dans la liste déroulante.
- Sélectionnez supprimer automatiquement cette machine virtuelle après avoir créé l’image.
- Cliquez sur Créer pour créer l’image de machine virtuelle.
Créer une image de machine virtuelle personnalisée pour HPC Pack 2016 Update 2 (ou version antérieure)
Étape 1 : Créer ou sélectionner un nœud de calcul IaaS Azure avec HPC Pack 2016 Update 2 (ou version antérieure)
Vous pouvez créer une machine virtuelle Azure et installer manuellement la version correcte de nœud de calcul HPC Pack 2016 dessus, ou sélectionner un nœud de calcul IaaS Azure en cours d’exécution dans votre cluster HPC Pack 2016 existant.
Si Windows Management Framework (WMF) 5.1 n’est pas installé dans le nœud de calcul IaaS, téléchargez et installez-le.
Étape 2 : Installer et configurer vos propres applications dans le nœud de calcul IaaS Azure
Connectez-vous à la machine virtuelle, installez et configurez vos propres applications.
Étape 3 : Désinstaller les extensions de machine virtuelle à partir de la machine virtuelle
Sur portail Azure, recherchez la machine virtuelle Azure correspondante, cliquez sur Extensions, désinstallez toutes les extensions de machine virtuelle s’il y en a un.
Étape 4 : Effacer les informations spécifiques du cluster à partir du nœud de calcul
Connectez-vous au nœud de calcul IaaS Azure, ouvrez une console Windows PowerShell en tant qu’administrateur et exécutez le script PowerShell suivant pour effacer les informations spécifiques au cluster.
# 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)
Étape 5 : Généraliser la machine virtuelle à l’aide de Sysprep
Connectez-vous à la machine virtuelle Windows, accédez au répertoire %windir%\system32\sysprep
, puis exécutez sysprep.exe en tant qu’administrateur.
Dans la boîte de dialogue outil de préparation du système
Une fois Sysprep terminé, il arrête la machine virtuelle.
Étape 6 : Créer une image de machine virtuelle
Ouvrez le portail Azure , recherchez la machine virtuelle dans la liste des machines virtuelles. Dans la page Vue d’ensemble de de la machine virtuelle, cliquez sur Capture pour créer une image managée à partir de la machine virtuelle.
- Ouvrez le portail Azure .
- Dans le menu de gauche, cliquez sur Machines virtuelles et recherchez la machine virtuelle.
- Dans la page Vue d’ensemble
vue d’ensemble de la machine virtuelle, dans le menu supérieur, cliquez sur Capturer . - Dans Nom, tapez le nom que vous souhaitez utiliser pour l’image.
- Dans groupe de ressources sélectionnez Créer une et tapez un nom, ou sélectionnez Utiliser un existant et sélectionnez un groupe de ressources à utiliser dans la liste déroulante.
- Sélectionnez supprimer automatiquement cette machine virtuelle après avoir créé l’image.
- Cliquez sur Créer pour créer l’image de machine virtuelle.