本文介绍如何创建自己的自定义 VM 映像,为 HPC Pack 2016 群集部署 IaaS 计算节点。
创建自定义 VM 映像的方法有两种不同的方法,一种用于 HPC Pack 2016 Update 3,另一种用于 HPC Pack 2016 RTM、HPC Pack 2016 Update 1 和 HPC Pack 2016 Update 2。 应根据头节点的 HPC Pack 版本选择正确的方法。
注意
HPC Pack Update 3 VM 映像与 HPC Pack Update 2(及更早版本)VM 映像之间的差异是 HPC Pack 计算节点和 Windows Management Framework 5.1 必须在后者中预安装。
提示
还可以使用 Azure 映像生成器 功能来自动创建自定义的 VM 映像。
为 HPC Pack 2016 Update 3 创建自定义 VM 映像
步骤 1:在 Azure 中创建虚拟机
在 Azure 门户上,创建具有以下操作系统之一的 Azure 虚拟机:Windows Server 2012、Windows Server 2012 R2、Windows Server 2016、Windows Server 2019。
步骤 2:在虚拟机中安装和配置自己的应用程序
登录到虚拟机,并安装和配置自己的应用程序。
步骤 3:使用 Sysprep 通用化虚拟机
登录到 Windows 虚拟机,转到目录 %windir%\system32\sysprep,然后以管理员身份运行 sysprep.exe。
在 系统准备工具 对话框中,选择 “输入系统现成体验”(OOBE),并确保选中“通用化”复选框,并在 关闭选项中选择 关闭。 单击“确定”
Sysprep 完成后,它会关闭虚拟机。
步骤 4:创建 VM 映像
打开 Azure 门户,从虚拟机列表中查找虚拟机。 在虚拟机的 概述 页上,单击 捕获 从虚拟机创建托管映像。
- 打开 Azure 门户。
- 在左侧菜单中,单击“虚拟机”,找到虚拟机。
- 在虚拟机的 概述 页上,在上部菜单中,单击 捕获。
- 在 名称中,键入要用于图像的名称。
- 在 资源组 选择 创建新 并键入名称,或选择 使用现有 并从下拉列表中选择要使用的资源组。
- 创建映像后,选择
自动删除此虚拟机。 - 单击 创建 以创建 VM 映像。
为 HPC Pack 2016 Update 2 创建自定义 VM 映像(或更早版本)
步骤 1:使用 HPC Pack 2016 Update 2 创建或选择 Azure IaaS 计算节点(或更早版本)
可以创建 Azure 虚拟机,并在其上手动安装正确版本的 HPC Pack 2016 计算节点,或选择现有 HPC Pack 2016 群集中当前运行的 Azure IaaS 计算节点。
如果未在 IaaS 计算节点中安装 Windows Management Framework (WMF) 5.1,请下载并安装它。
步骤 2:在 Azure IaaS 计算节点中安装和配置自己的应用程序
登录到虚拟机,并安装和配置自己的应用程序。
步骤 3:从虚拟机卸载 VM 扩展
在 azure 门户
步骤 4:从计算节点清除群集特定信息
登录到 Azure IaaS 计算节点,以管理员身份打开 Windows PowerShell 控制台,并运行以下 PowerShell 脚本以清除群集特定信息。
# 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)
步骤 5:使用 Sysprep 通用化虚拟机
登录到 Windows 虚拟机,转到目录 %windir%\system32\sysprep,然后以管理员身份运行 sysprep.exe。
在 系统准备工具 对话框中,选择 “输入系统现成体验”(OOBE),并确保选中“通用化”复选框,并在 关闭选项中选择 关闭。 单击“确定”
Sysprep 完成后,它会关闭虚拟机。
步骤 6:创建 VM 映像
打开 Azure 门户,从虚拟机列表中查找虚拟机。 在虚拟机的 概述 页上,单击 捕获 从虚拟机创建托管映像。
- 打开 Azure 门户。
- 在左侧菜单中,单击“虚拟机”,找到虚拟机。
- 在虚拟机的 概述 页上,在上部菜单中,单击 捕获。
- 在 名称中,键入要用于图像的名称。
- 在 资源组 选择 创建新 并键入名称,或选择 使用现有 并从下拉列表中选择要使用的资源组。
- 创建映像后,选择
自动删除此虚拟机。 - 单击 创建 以创建 VM 映像。