Поделиться через


Создание настраиваемого образа виртуальной машины для вычислительного узла IaaS пакета HPC

В этой статье описывается, как создать собственный настраиваемый образ виртуальной машины для развертывания вычислительных узлов IaaS для кластера ПАКЕТА HPC 2016.

Существует два разных способа создания настраиваемого образа виртуальной машины, один для пакета HPC 2016 с обновлением 3, другой для пакета HPC 2016 RTM, пакета HPC 2016 с обновлением 1 и пакета HPC 2016 с обновлением 2. Вы должны выбрать правильный способ в зависимости от версии пакета HPC головного узла.

Примечание.

Разница между образом виртуальной машины пакета HPC с обновлением 3 и образом виртуальной машины пакета HPC с обновлением 2 (и более ранним) заключается в том, что вычислительный узел пакета HPC и Windows Management Framework 5.1 должен быть предварительно установлен в последнем.

Совет

Вы также можете использовать функцию построителя образов Azure для автоматизации создания настраиваемого образа виртуальной машины.

Создание пользовательского образа виртуальной машины для пакета HPC 2016 с обновлением 3

Шаг 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 от имени администратора.

В диалоговом окне средства подготовки системы выберите введите"Общие" и установите флажок завершение работы в параметры завершения работы. Нажмите кнопку ОК, чтобы начать.

Когда sysprep завершит работу, она завершает работу виртуальной машины.

Шаг 4. Создание образа виртуальной машины

Откройте портале Azure, найдите виртуальную машину из списка виртуальных машин. На странице обзора виртуальной машины щелкните Записать, чтобы создать управляемый образ на виртуальной машине.

  1. Откройтепортала Azure .
  2. В меню слева щелкните "Виртуальные машины" и найдите виртуальную машину.
  3. На странице обзора виртуальной машины в верхнем меню щелкните "Запись".
  4. В nameвведите имя, которое вы хотите использовать для изображения.
  5. В группе ресурсов выберите Создать новую и введите имя или выберите Использовать существующие и выберите группу ресурсов, используемую в раскрывающемся списке.
  6. Выберите Автоматически удалите эту виртуальную машину после создания образа.
  7. Щелкните Создать, чтобы создать образ виртуальной машины.

Создание пользовательского образа виртуальной машины для пакета HPC 2016 с обновлением 2 (или более ранней версии)

Шаг 1. Создание или выбор вычислительного узла Azure IaaS с пакетом HPC 2016 с обновлением 2 (или более ранней версией)

Вы можете создать виртуальную машину Azure и вручную установить правильную версию вычислительного узла пакета HPC 2016 или выбрать текущий вычислительный узел Azure IaaS в существующем кластере ПАКЕТА HPC 2016.

Если Windows Management Framework (WMF) 5.1 не установлен в вычислительном узле IaaS, скачайте и установите его.

Шаг 2. Установка и настройка собственных приложений на вычислительном узле Azure IaaS

Войдите на виртуальную машину и установите и настройте собственные приложения.

Шаг 3. Удаление расширений виртуальной машины из виртуальной машины

На портале Azureнайдите соответствующую виртуальную машину 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 от имени администратора.

В диалоговом окне средства подготовки системы выберите введите"Общие" и установите флажок завершение работы в параметры завершения работы. Нажмите кнопку ОК, чтобы начать.

Когда sysprep завершит работу, она завершает работу виртуальной машины.

Шаг 6. Создание образа виртуальной машины

Откройте портале Azure, найдите виртуальную машину из списка виртуальных машин. На странице обзора виртуальной машины щелкните Записать, чтобы создать управляемый образ на виртуальной машине.

  1. Откройтепортала Azure .
  2. В меню слева щелкните "Виртуальные машины" и найдите виртуальную машину.
  3. На странице обзора виртуальной машины в верхнем меню щелкните "Запись".
  4. В nameвведите имя, которое вы хотите использовать для изображения.
  5. В группе ресурсов выберите Создать новую и введите имя или выберите Использовать существующие и выберите группу ресурсов, используемую в раскрывающемся списке.
  6. Выберите Автоматически удалите эту виртуальную машину после создания образа.
  7. Щелкните Создать, чтобы создать образ виртуальной машины.