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


Создание кластера высокопроизводительных вычислительных систем (HPC) Linux с помощью сценария развертывания пакета HPC в IaaS

Важно!

1 марта 2023 г. мы прекратим поддержку классических виртуальных машин.

Если вы используете ресурсы IaaS из ASM, выполните миграцию до 1 марта 2023 г. Рекомендуем осуществить этот переход как можно раньше, чтобы воспользоваться различными улучшенными функциями в Azure Resource Manager.

Дополнительные сведения см. в статье Перенесите свои ресурсы IaaS в Azure Resource Manager до 1 марта 2023 г.

Выполните сценарий PowerShell для развертывания пакета HPC в IaaS, чтобы развернуть полный кластер HPC 2012 R2 для рабочих нагрузок Linux на виртуальных машинах Azure. Кластер состоит из присоединенного к Active Directory головного узла под управлением Windows Server и пакета Microsoft HPC, а также вычислительных узлов под управлением одного из дистрибутивов Linux с поддержкой пакета HPC. Если вы хотите развернуть кластер пакета HPC в Azure для рабочих нагрузок Windows, см. статью Создание кластера для высокопроизводительных вычислений (HPC) Windows с помощью сценария развертывания пакета HPC в IaaS.

Важно!

Сценарий PowerShell, описанный в этой статье, создает кластер пакета Microsoft HPC 2012 R2 в Azure с помощью классической модели развертывания. Для большинства новых развертываний Майкрософт рекомендует использовать модель диспетчера ресурсов. Кроме того сценарий, описанный в этой статье не поддерживает пакет HPC 2016. Сведения о шаблонах Resource Manager для HPC Pack 2012 R2 и HPC Pack 2016 в см. в статье Варианты развертывания кластера HPC Pack в Azure.

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

Общие сведения о планировании кластера пакета HPC см. в статьях Product Evaluation and Planning (Оценка и планирование продукта) и Getting Started (Приступая к работе), посвященных пакету HPC 2012 R2, в библиотеке TechNet.

Обязательные условия

  • Подписка Azure. Вы можете использовать подписку на глобальную службу Azure или Azure для Китая. Ограничения подписки влияют на количество и тип узлов кластера, которые вы можете развернуть. Дополнительные сведения см. в статье Подписка Azure, границы, квоты и ограничения службы.
  • Клиентские компьютеры под управлением Windows с установленной и настроенной средой Azure PowerShell 0.8.10 или более поздней версии. Пошаговые инструкции по установке и подключению к подписке Azure см. в статье Get started with Azure PowerShell cmdlets (Начало работы с командлетами Azure PowerShell).
  • Скрипт развертывания IaaS из пакета HPC. Скачайте и распакуйте последнюю версию скрипта из Центра загрузки Майкрософт. Проверьте версию сценария, запустив New-HPCIaaSCluster.ps1 –Version. В этой статье предполагается использование скрипта версии 4.5.2.
  • Файл конфигурации скрипта. Создайте XML-файл, с помощью которого скрипт настраивает кластер HPC. Информацию и примеры см. в следующих разделах этой статьи и в файле Manual.rtf, сопровождающем скрипт развертывания.

Синтаксис

New-HPCIaaSCluster.ps1 [-ConfigFile] <String> [-AdminUserName]<String> [[-AdminPassword] <String>] [[-HPCImageName] <String>] [[-LogFile] <String>] [-Force] [-NoCleanOnFailure] [-PSSessionSkipCACheck] [<CommonParameters>]

Примечание

Запустите скрипт от имени администратора.

Параметры

  • ConfigFile. Указывает путь к файлу конфигурации кластера HPC. Дополнительные сведения о файле конфигурации см. в этой статье или в файле Manual.rtf в папке со скриптом.

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

  • AdminPassword — пароль администратора. Если значение не указано в командной строке, скрипт предложит ввести пароль.

  • HPCImageName (необязательно) — образ виртуальной машины с пакетом HPC, используемый для развертывания кластера HPC. Это должен быть образ пакета HPC от корпорации Майкрософт (доступен в Azure Marketplace). Если значение не указано (рекомендуется в большинстве случаев), скрипт выбирает последний опубликованный образ пакета HPC 2012 R2. Последняя версия образа предполагает, что установлена ОС Windows Server 2012 R2 Datacenter с пакетом HPC 2012 R2 с обновлением 3.

    Примечание

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

  • LogFile (необязательно) — путь к файлу журнала развертывания. Если значение не указано, скрипт создаст файл журнала во временной папке на компьютере, на котором выполняется скрипт.

  • Force (необязательно). Скрывает все окна с запросами подтверждения.

  • NoCleanOnFailure (необязательно). Указывает, что виртуальные машины Azure, которые не удалось развернуть, не удаляются. Перед повторным выполнением скрипта следует удалить такие виртуальные машины вручную. В противном случае может произойти сбой развертывания.

  • PSSessionSkipCACheck (необязательно). Для каждой облачной службы с виртуальными машинами, развернутыми с помощью этого скрипта, Azure автоматически создает самозаверяющий сертификат, и все виртуальные машины в облачной службе используют его как стандартный сертификат удаленного управления Windows (WinRM). Чтобы развернуть функции HPC на этих виртуальных машинах Azure, скрипт по умолчанию временно устанавливает эти сертификаты в локальном корневом хранилище центров сертификации на клиентском компьютере для подавления ошибки безопасности "не доверенный ЦС" во время выполнения скрипта. После завершения выполнения скрипта сертификаты удаляются. Если этот параметр задан, сертификаты не устанавливаются на локальный компьютер, а предупреждения системы безопасности подавляются.

    Важно!

    Не рекомендуется использовать этот параметр для развертывания в рабочей среде.

Пример

В следующем примере создается HPC-кластер с помощью файла конфигурации MyConfigFile.xml, а также указываются учетные данные администратора для установки кластера.

.\New-HPCIaaSCluster.ps1 –ConfigFile MyConfigFile.xml -AdminUserName <username> –AdminPassword <password>

Дополнительные сведения

  • Скрипт дополнительно может включать отправку заданий через веб-портал для пакета HPC или с помощью REST API для пакета HPC.
  • Скрипт может дополнительно запускать другие скрипты до и после настройки головного узла (если нужно установить дополнительное программное обеспечение или настроить другие параметры).

Файл конфигурации

Скрипт развертывания использует файл конфигурации в формате XML. Файл схемы HPCIaaSClusterConfig.xsd находится в папке скрипта развертывания пакета HPC по модели IaaS. IaaSClusterConfig — это корневой элемент файла конфигурации. Его дочерние элементы подробно описаны в файле Manual.rtf в папке со скриптом развертывания.

Пример файла конфигурации

Следующий файл конфигурации создает контроллер домена и доменный лес, а также развертывает кластер пакета HPC с одним головным узлом с локальными базами данных и десятью вычислительными узлами под управлением Linux. Все облачные службы создаются сразу в расположении East Asia (Восточная Азия). Вычислительные узлы под управлением Linux создаются в двух облачных службах и двух учетных записях хранения (от MyLnxCN-0001 до MyLnxCN-0005 в MyLnxCNService01 и mylnxstorage01 и от MyLnxCN-0006 до MyLnxCN-0010 в MyLnxCNService02 и mylnxstorage02). Вычислительные узлы создаются из образа OpenLogic CentOS версии 7.0 для Linux.

Подставьте свои значения: имя вашей подписки и имена учетной записи и служб.

<?xml version="1.0" encoding="utf-8" ?>
<IaaSClusterConfig>
  <Subscription>
    <SubscriptionName>Subscription-1</SubscriptionName>
    <StorageAccount>mystorageaccount</StorageAccount>
  </Subscription>
  <Location>East Asia</Location>  
  <VNet>
    <VNetName>MyVNet</VNetName>
    <SubnetName>Subnet-1</SubnetName>
  </VNet>
  <Domain>
    <DCOption>NewDC</DCOption>
    <DomainFQDN>hpc.local</DomainFQDN>
    <DomainController>
      <VMName>MyDCServer</VMName>
      <ServiceName>MyHPCService</ServiceName>
      <VMSize>Large</VMSize>
    </DomainController>
  </Domain>
  <Database>
    <DBOption>LocalDB</DBOption>
  </Database>
  <HeadNode>
    <VMName>MyHeadNode</VMName>
    <ServiceName>MyHPCService</ServiceName>
    <VMSize>ExtraLarge</VMSize>
  </HeadNode>
  <LinuxComputeNodes>
    <VMNamePattern>MyLnxCN-%0001%</VMNamePattern>
    <ServiceNamePattern>MyLnxCNService%01%</ServiceNamePattern>
    <MaxNodeCountPerService>5</MaxNodeCountPerService>
    <StorageAccountNamePattern>mylnxstorage%01%</StorageAccountNamePattern>
    <VMSize>Medium</VMSize>
    <NodeCount>10</NodeCount>
    <ImageName>5112500ae3b842c8b9c604889f8753c3__OpenLogic-CentOS-70-20150325 </ImageName>
  </LinuxComputeNodes>
</IaaSClusterConfig>

Устранение неполадок

  • Ошибка "Виртуальная сеть не существует". Если запустить скрипт развертывания IaaS пакета HPC для одновременного развертывания нескольких кластеров в Azure в рамках одной подписки, одно или несколько развертываний могут завершиться ошибкой "Виртуальная сеть VNet_Name не существует". В случае возникновения этой ошибки повторно выполните сценарий для развертывания, завершившегося сбоем.

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

    Чтобы решить эту проблему, войдите на контроллер домена и удалите настройки сервера пересылки или задайте допустимый DNS-сервер пересылки. для этого в диспетчер сервера щелкните инструменты>DNS , чтобы открыть диспетчер DNS, а затем дважды щелкните серверы пересылки.

Дальнейшие действия