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


Ускорение использования виртуальной машины IaaS Azure из кластера пакетов HPC

Требования к добавлению вычислительных узлов IaaS Azure с помощью пакета Microsoft HPC

В этом разделе описываются требования для добавления вычислительных узлов Azure IaaS в кластер HPC.

Поддерживаемая версия кластера пакета MICROSOFT HPC

Чтобы развернуть вычислительные узлы Azure IaaS в кластере пакетов HPC, необходимо запустить microsoft HPC Pack 2016 с обновлением 1 или более поздней версией.

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

Учетная запись подписки Azure

Необходимо получить подписку Azure или назначить роль владельца подписки.

  • Чтобы создать подписку Azure, перейдите на сайт Azure .

  • Чтобы получить доступ к существующей подписке, перейдите на портал Azure.

Примечание.

Существуют некоторые ограничения (также называемые квотами) для каждой подписки Azure. Ядра виртуальных машин имеют региональный общий предел, а также ограничение на региональный размер серии (Dv2, F и т. д.), которые применяются отдельно. Вы можете перейти на портале Azure, чтобы проверить квоты и использование подписки Azure. Если вы хотите увеличить квоту, открыть запрос в службу поддержки клиентов в Интернете.

Сетевая инфраструктура

Необходимо предоставить виртуальную сеть Azure и подсеть для вычислительных узлов Azure IaaS.

Если вы планируете создать кластер пакетов HPC полностью в Azure, необходимо создать головной узел и вычислительные узлы Azure IaaS в одной виртуальной сети Azure.

на схеме показана виртуальная сеть Azure с добавлением H P C N в группу аналогичных узлов.

Однако если вы планируете создать гибридный кластер пакета HPC с головными узлами в локальной корпоративной сети и создать вычислительные узлы Azure IaaS в Azure, необходимо настроить VPN- подключение типа "сеть — сеть" или ExpressRoute подключения из локальной сети к виртуальной сети Azure. Головной узел должен также подключаться через Интернет к службам Azure. Возможно, вам потребуется обратиться к администратору сети, чтобы настроить это подключение.

на схеме показана корпоративная сеть с H P H N, подключенная к виртуальной сети Azure.

Настройка группы безопасности сети для виртуальной сети Azure

Рекомендуется настроить группу безопасности сети для подсети виртуальной сети Azure. В следующей таблице портов HPC перечислены порты прослушивания для каждого типа узла HPC. Дополнительные сведения о портах см. в этом документе.

Роль Порт Протокол
вычислительный узел Linux 40000, 40002 TCP
вычислительный узел Windows 1856, 6729, 6730, 7998, 8677, 9096, 9100-9611, 42323, 42324 TCP
узла брокера 9087, 9091, 9095, 80, 443 и порты для вычислительного узла Windows TCP
головном узле 445, 5800, 5802, 5969, 5970, 5974, 5999, 7997, 9090, 9092, 9094, 9892-9894 и порты для узла брокера ; 1433 для локальных баз данных; 10100, 10101, 10200, 10300, 10400 для кластера Service Fabric (высокая доступность) TCP
головном узле 9894 UDP

Для кластера пакета HPC с головными узлами в Azure

Для кластера пакета HPC полностью в Azure необходимо настроить следующие правила NSG.

1. Правила безопасности для входящего трафика

Правило безопасности по умолчанию AllowVNetInBound разрешает весь входящий трафик внутри виртуальной сети. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью source VirtualNetwork или Any с более высоким приоритетом, убедитесь, что порты , перечисленные в таблице портов HPC, не запрещены.

Если вы хотите отправить задания из локального клиента через Интернет, необходимо добавить следующие правила безопасности для входящего трафика.

Имя Порт Протокол Исходный код Назначение Действие
AllowHttpsInBound 443 TCP Любое Любое Разрешить
AllowHpcSoaInbound 9087,9090,9091,9094 TCP Любое Любое Разрешить
2. Правила безопасности исходящего трафика

Правило безопасности исходящего трафика по умолчанию AllowVNetOutBound разрешает весь исходящий трафик внутри виртуальной сети. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью конечного VirtualNetwork или Any с более высоким приоритетом, убедитесь, что порты, перечисленные в таблице портов HPC, не запрещены.

Правило безопасности исходящего трафика по умолчанию AllowInternetOutBound позволяет всем исходящим трафику Интернет. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью конечного Internet или Любой с более высоким приоритетом, необходимо добавить следующие правила исходящего трафика с более высоким приоритетом:

Имя Порт Протокол Исходный код Назначение Действие
AllowKeyVaultOutBound Любое Любое Виртуальная сеть AzureKeyVault Разрешить
AllowAzureCloudOutBound Любое Любое Виртуальная сеть AzureCloud Разрешить
AllowHttpsOutBound 443 TCP Виртуальная сеть Любое Разрешить

Для гибридного кластера пакета HPC с локальными головными узлами

Для гибридного кластера пакета HPC с локальными головными узлами и узлами брокера и вычислительными узлами Azure IaaS необходимо настроить следующие правила NSG с точки зрения вычислительных узлов IaaS Azure.

1. Правила безопасности для входящего трафика

Правило безопасности по умолчанию AllowVNetInBound разрешает весь входящий трафик внутри виртуальной сети. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью исходного VirtualNetwork или Любой с более высоким приоритетом, убедитесь, что порты для вычислительного узла Linux и вычислительный узел Windows перечислены в таблице портов HPC.

Примечание.

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

2. Правила безопасности исходящего трафика

Правило безопасности исходящего трафика по умолчанию AllowVNetOutBound разрешает весь исходящий трафик внутри виртуальной сети. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью конечного VirtualNetwork или Любой с более высоким приоритетом, необходимо добавить следующие правила исходящего трафика с более высоким приоритетом, чтобы вычислительные узлы Azure IaaS могли подключаться к локальным головным узлам.

Имя Порт Протокол Исходный код Назначение Действие
AllowHpcIntraVNetTcpOutBound 443, 5970, 6729, 6730, 8677, 9892, 9893, 9894 TCP Любое Виртуальная сеть Разрешить
AllowHpcIntraVNetUdpOutBound 9894 UDP Любое Виртуальная сеть Разрешить

Примечание.

Если между корпоративной сетью и виртуальной сетью Azure установлены брандмауэры, настройте правила брандмауэра входящего, чтобы разрешить эти порты с точки зрения головных узлов.

Правило безопасности исходящего трафика по умолчанию AllowInternetOutBound позволяет всем исходящим трафику Интернет. Но если вы добавили какие-либо правила, чтобы запретить трафик с помощью конечного Internet или Любой с более высоким приоритетом, необходимо добавить следующие правила исходящего трафика с более высоким приоритетом:

Имя Порт Протокол Исходный код Назначение Действие
AllowKeyVaultOutBound Любое Любое Виртуальная сеть AzureKeyVault Разрешить
AllowAzureCloudOutBound Любое Любое Виртуальная сеть AzureCloud Разрешить
AllowHttpsOutBound 443 TCP Виртуальная сеть Любое Разрешить

Головные узлы пакета HPC могут получить доступ к следующим общедоступным URL-адресам на шаге set Azure Deployment Configuration и Create and manage Azure IaaS compute nodes step, you you add их в список разрешений локальных брандмауэров.

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. Настройка кластера для поддержки развертываний вычислительных узлов IaaS Azure

Откройте диспетчер кластеров HPC на головном узле , в списке задач развертываниявыполните все три необходимых задач развертывания. Имя пользователя и пароль учетных данных установки , которые вы предоставили, будут использоваться в качестве имени администратора и пароля виртуальных машин Azure.

Шаг 1.1. Настройка конфигурации развертывания Azure

Конфигурацию развертывания Azure можно настроить с помощью диспетчера кластеров HPC или команд PowerShell.

Настройка конфигурации развертывания Azure с помощью диспетчера кластеров HPC

Примечание.

Мастер настройки настройки развертывания Azure в этой статье основан на пакете HPC 2016 с обновлением 2 (и более поздней версии).

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

снимок экрана: список действий по развертыванию конфигурации с выделенным параметром
1. Настройка субъекта-службы Azure

Субъект-служба Azure используется службой пакета HPC для подготовки, запуска, остановки и удаления виртуальной машины Azure IaaS. Чтобы настроить субъект-службу Azure, нажмите кнопку Имя входа, чтобы войти в учетную запись Azure на странице субъекта-службы Azure.

снимок экрана: страница субъекта-службы Azure, на которой можно ввести подписку и I DS клиента с выделенной кнопкой входа.

Если у вас несколько подписок Azure, связанных с учетной записью Azure, нажмите кнопку Выберите, чтобы выбрать подписку, используемую для развертывания вычислительных узлов Azure IaaS.

Вы можете выбрать существующего субъекта-службы Azure из списка имени субъекта-службы и нажать кнопку Обзор, чтобы выбрать правильный сертификат управления, который использовался для создания субъекта-службы Azure, или нажмите кнопку Создать, чтобы создать новый субъект-службу Azure.

снимок экрана: страница субъекта-службы Azure с выделенным раскрывающимся меню

Если вы решили создать субъект-службу Azure, в диалоговом окне создание субъекта-службы Azure, укажите понятное уникальное отображаемое имя для нового субъекта-службы Azure и щелкните Обзор, чтобы выбрать сертификата из локального компьютера\Личного хранилища, или щелкните Импортировать, чтобы импортировать сертификат формата PFX или создать новый самозаверяющий сертификат. Затем нажмите кнопку ОК, чтобы создать субъект-службу Azure.

снимок экрана: диалоговое окно

Примечание.

  • Сертификат субъекта-службы Azure должен отличаться от сертификата, используемого для защиты связи между узлами HPC.

  • Чтобы создать субъект-службу Azure, ваша учетная запись Azure должна быть владельцем ролью подписки Azure, а субъект-служба Azure будет предоставляться в качестве участника роли подписки Azure по умолчанию, вы можете ссылаться на управление доступом для ресурсов Azure в кластере пакетов HPC, чтобы вручную настроить разрешения доступа для субъекта-службы Azure в соответствии с вашим пользовательским сценарием.

2. Указание виртуальной сети Azure

На странице виртуальной сети Azure укажите сведения о виртуальной сети Azure, в которой будут созданы вычислительные узлы Azure IaaS.

расположении Azure: расположение Azure, в котором находится виртуальная сеть

имя группы ресурсов: группа ресурсов, в которой была создана виртуальная сеть.

имя виртуальной сети: имя виртуальной сети, в которой будут созданы вычислительные узлы Azure IaaS.

имя подсети: имя подсети, в которой будут созданы вычислительные узлы Azure IaaS.

снимок экрана: страница виртуальной сети Azure, в которой можно ввести имя подсети.

Примечание.

Указанная виртуальная сеть должна иметь сайт для VPN-подключения типа "сеть" или "Express Route" к локальной сети, в которой расположен головной узел.

3. Настройка сертификата Azure Key Vault

Служба пакета HPC использует сертификат X.509 для защиты взаимодействия узла HPC. Таким образом, необходимо импортировать этот сертификат в Azure Key Vault, чтобы его можно было установить на виртуальную машину Azure IaaS во время подготовки. На странице сертификата Azure Key Vault нажмите кнопку Выберите, чтобы выбрать имя хранилища ключей Azure и имя секрета, если вы уже создали секрет Azure Key Vault. Или нажмите кнопку Создать, чтобы создать новую.

снимок экрана: страница сертификата Azure Key Vault, где можно ввести сведения о Key Vault.

Если вы решили создать новый секрет Key Vault, вы можете выбрать существующее имя хранилища ключей Azure из списка имени хранилища или щелкните Создать, чтобы создать новое хранилище ключей Azure. Затем укажите понятное имя секрета, нажмите кнопку Обзор или импорт, чтобы выбрать правильный сертификат.

снимок экрана: диалоговое окно, в котором можно выбрать имя хранилища и ввести имя секрета и сертификат.

Примечание.

Если вы используете самозаверяющий сертификат на головном узле для обмена данными с узлом HPC, необходимо отправить тот же сертификат (который используется во время установки головного узла) в секрет Azure Key Vault. Если этого не удается сделать, вычислительные узлы Azure IaaS будут недоступны для головного узла из-за проблемы с доверенным сертификатом. И вы можете использовать следующую команду PowerShell, чтобы получить отпечаток сертификата, используемый для связи с узлом: Get-HPCClusterRegistry -propertyName SSLThumbprint

Просмотрите параметры и нажмите кнопку Готово, чтобы завершить настройку.

Настройка конфигурации развертывания Azure с помощью PowerShell

Вы также можете выполнить следующие команды PowerShell, чтобы задать конфигурацию развертывания Azure, если у вас уже есть:

  • Создан субъект-служба 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 или вычислительные узлы 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 Linux с помощью шаблона узла IaaS Azure, выполните следующую команду PowerShell на головном узле, чтобы включить обмен данными между головными узлами и вычислительными узлами Linux.

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
}

Шаг 2. Создание шаблона узла IaaS Azure

Важно!

  1. Мастер шаблона узла IaaS Azure в этой статье основан на пакете HPC 2016 с обновлением 3. Это немного отличается в других версиях пакета HPC.
  2. Если вы решили использовать пользовательский образ или общий образ, операционная система образа виртуальной машины должна соответствовать требованиям.
  3. общий образ не поддерживается в пакете HPC 2016 с обновлением 2 или более ранней версией.

На панели конфигурации щелкнитешаблонов узлов и щелкните Создать в списке действий , чтобы создать шаблон узла IaaS Azure.

снимок экрана: страница конфигурации отмеченных шаблонов.

На странице Выбор типа шаблона узла выберите тип шаблона узла шаблон узла IaaS Azure.

снимок экрана: выбор типа шаблона узла с выбранным шаблоном узла Azure I.

На странице Укажите имя шаблона укажите имя шаблона и при необходимости укажитеописания .

снимок экрана: страница

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

Укажите, нужно ли создавать узлы в группе доступности Azure.

снимок экрана: страница

На странице Указание образа виртуальной машины укажите образ виртуальной машины, используемый для развертывания вычислительных узлов IaaS. Можно выбрать один из следующихтипов изображений : MarketplaceImage, CustomWindowsImageили CustomLinuxImage.

Если выбрать тип изображения в качестве MarketplaceImage, выберите тип ОС и метку образа, чтобы выбрать общедоступный образ виртуальной машины в Azure Marketplace.

Если типа ОС используется Windows и присоединены к домену головного узла пакета HPC, укажите, следует ли присоединить узлы к домену. Рекомендуется присоединить вычислительные узлы Windows к домену.

снимок экрана: диалоговое окно, в котором можно ввести тип изображения, тип O S и метку изображения и выбрать, следует ли присоединить узлы к домену.

Если тип образа CustomImage, укажите тип ОС, имя образа настраиваемого образа виртуальной машины, а также группу ресурсов , в которой хранится образ. Образ виртуальной машины должен быть создан в том же расположении Azure, в котором будут созданы вычислительные узлы Azure IaaS. Следуйте создание пользовательского образа для создания собственного настраиваемого образа для виртуальной машины IaaS.

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

снимок экрана: диалоговое окно, в котором можно выбрать тип O S, ввести группу ресурсов и имя изображения и выбрать, следует ли присоединять узлы к домену.

Если выбрать тип образа SharedImage, укажитетипа ос , идентификатор ресурса Azure общего образа виртуальной машины в коллекции общих образов Azure. Убедитесь, что субъект-служба Azure, указанный на шаге 1.1, предоставляется разрешение на чтение в общей коллекции образов.

снимок экрана: диалоговое окно, в котором можно выбрать Тип оси Linux и ввести

На странице проверки просмотрите указанные параметры и щелкните Создать, чтобы создать шаблон узла.

Шаг 3. Создание вычислительных узлов IaaS и управление ими

Откройте консоль диспетчера кластеров HPC, щелкните панель управления ресурсами и щелкните Добавить узел, чтобы запустить мастер добавления узлов.

снимок экрана: страница

На странице выбор метода развертывания выберите Добавить узлы виртуальных машин IaaS Azure.

снимок экрана: страница

На странице Укажите новые узлы выберите шаблон узла , который мы только что создали на шаге 2, и укажите количество узлов и размер виртуальной машиныи нажмите кнопку Далее.

снимок экрана: страница

После нажатия кнопки Готововы можете найти два новых узла в списке узлов . Соответствующие виртуальные машины Azure для этих двух узлов фактически еще не созданы на стороне Azure.

снимок экрана: страница управления ресурсами с двумя из четырех узлов, которые не запущены, выделены.

Затем можно выбрать узлы и нажать кнопку Пуск, чтобы создать виртуальные машины в Azure.

снимок экрана: страница

Дождитесь подготовки вычислительных узлов Azure IaaS.

снимок экрана: страница

После завершения развертывания вычислительных узлов Azure IaaS работоспособности узла ОКможно отправить задания на эти узлы.

Вы можете вручную остановить узлы, щелкнув Остановить, а виртуальные машины в Azure будут выделены.

снимок экрана: страница

Вы также можете удалить узлы, если они больше не нужны, виртуальные машины Azure также будут удалены, если это сделать.

Если вы включили автоматическое увеличение и сжатие узлов Azure , узлы Azure IaaS будут автоматически запущены или остановлены в зависимости от рабочей нагрузки кластера, см. автоматическое сжатие ресурсов Azure.