Delen via


Een Windows HPC-cluster (High-Performance Computing) met het IaaS-implementatiescript HPC Pack maken

Belangrijk

Klassieke VM's worden op 1 maart 2023 buiten gebruik gesteld.

Als u IaaS-resources van ASM gebruikt, dient u de migratie uiterlijk 1 maart 2023 te voltooien. U wordt aangeraden al eerder over te schakelen om te kunnen profiteren van de vele functieverbeteringen in Azure Resource Manager.

Zie Uw IaaS-resources vóór 1 maart 2023 naar Azure Resource Manager migreren voor meer informatie.

Voer het PowerShell-script voor de HPC Pack IaaS-implementatie uit om een volledig HPC Pack 2012 R2-cluster te implementeren voor Windows workloads in virtuele Azure-machines. Het cluster bestaat uit een hoofdknooppunt dat is verbonden met Active Directory en Windows Server en Microsoft HPC Pack, en extra Windows rekenresources die u opgeeft. Zie Create a Linux HPC cluster with the HPC Pack IaaS deployment script (Een HpC-cluster voor Linux maken met het IaaS-implementatiescript hpc pack) als u een HPC Pack-cluster wilt implementeren in Azure voor Linux-workloads.

Belangrijk

Met het PowerShell-script dat in dit artikel wordt beschreven, maakt u een Microsoft HPC Pack 2012 R2-cluster in Azure met behulp van het klassieke implementatiemodel. U doet er verstandig aan voor de meeste nieuwe implementaties het Resource Manager-model te gebruiken. Bovendien biedt het script dat in dit artikel wordt beschreven geen ondersteuning voor HPC Pack 2016. Zie de implementatieopties voor HPC Pack-clusters in Azure voor meer informatie over Resource Manager-sjablonen voor HPC Pack 2012 R2 en HPC Pack 2016.

Afhankelijk van uw omgeving en keuzes kan het script alle clusterinfrastructuur maken, met inbegrip van het virtuele Azure-netwerk, opslagaccounts, cloudservices, domeincontroller, externe of lokale SQL-databases, hoofdknooppunt en aanvullende clusterknooppunten. Het script kan ook gebruikmaken van een bestaande Azure-infrastructuur en alleen de HPC-clusterknooppunten maken.

Voor achtergrondinformatie over het plannen van een HPC Pack-cluster, zie de productevaluatie en planning en Aan de slag inhoud in de HPC Pack 2012 R2 TechNet Library.

Vereisten

  • Azure-abonnement: u kunt een abonnement gebruiken in de service Azure Global of Azure China. Uw abonnementslimieten zijn van invloed op het aantal en het type clusterknooppunten dat u kunt implementeren. Zie Limieten, quota's en beperkingen voor Azure-abonnementen en -service voor meer informatie.
  • Windows clientcomputer met Azure PowerShell 0.8.10 of hoger geïnstalleerd en geconfigureerd: Zie Aan de slag met Azure PowerShell voor installatie-instructies en stappen om verbinding te maken met uw Azure-abonnement.
  • HPC Pack IaaS-implementatiescript: download en pak de nieuwste versie van het script uit in het Microsoft Downloadcentrum. Controleer de versie van het script door uit te voeren New-HPCIaaSCluster.ps1 –Version. Dit artikel is gebaseerd op versie 4.5.2 van het script.
  • Scriptconfiguratiebestand: maak een XML-bestand dat door het script wordt gebruikt om het HPC-cluster te configureren. Zie de secties verder in dit artikel en het bestand Manual.rtf bij het implementatiescript voor informatie en voorbeelden.

Syntax

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

Notitie

Voer het script uit als beheerder.

Parameters

  • ConfigFile: hiermee geeft u het bestandspad van het configuratiebestand op om het HPC-cluster te beschrijven. Zie meer over het configuratiebestand in dit onderwerp of in het bestand Manual.rtf in de map met het script.

  • AdminUserName: hiermee geeft u de gebruikersnaam op. Als het domein-forest door het script wordt gemaakt, wordt dit de gebruikersnaam van de lokale beheerder voor alle VM's en de naam van de domeinbeheerder. Als het domein-forest al bestaat, geeft dit de domeingebruiker op als de gebruikersnaam van de lokale beheerder om HPC Pack te installeren.

  • AdminPassword: hiermee geeft u het wachtwoord van de beheerder op. Als dit niet is opgegeven in de opdrachtregel, wordt u door het script gevraagd het wachtwoord in te voeren.

  • HPCImageName (optioneel): hiermee geeft u de naam op van de HPC Pack-VM-afbeelding die wordt gebruikt om het HPC-cluster te implementeren. Het moet een door Microsoft geleverde HPC Pack-afbeelding van de Azure Marketplace. Als dit niet is opgegeven (meestal aanbevolen), kiest het script de meest recente gepubliceerde HPC Pack 2012 R2-afbeelding. De meest recente installatie afbeelding is gebaseerd Windows Server 2012 R2 Datacenter met HPC Pack 2012 R2 Update 3 geïnstalleerd.

    Notitie

    De implementatie mislukt als u geen geldige HPC Pack-installatie afbeelding opgeeft.

  • LogFile (optioneel): hiermee geeft u het pad naar het implementatielogboekbestand op. Als dit niet is opgegeven, maakt het script een logboekbestand in de map temp van de computer met het script.

  • Force (optioneel): onderdrukt alle bevestigingsprompts.

  • NoCleanOnFailure (optioneel): hiermee geeft u op dat de Azure-VM's die niet zijn geïmplementeerd, niet worden verwijderd. Verwijder deze VM's handmatig voordat u het script opnieuw uitwerkt om door te gaan met de implementatie, anders kan de implementatie mislukken.

  • PSSessionSkipCACheck (optioneel): voor elke cloudservice met VM's die door dit script zijn geïmplementeerd, wordt automatisch een zelfonder ondertekend certificaat gegenereerd door Azure en gebruiken alle VM's in de cloudservice dit certificaat als het standaardcertificaat van Windows Remote Management (WinRM). Als u HPC-functies wilt implementeren in deze Azure-VM's, installeert het script deze certificaten standaard tijdelijk in het lokaal computer\Vertrouwde basiscertificeringsinstanties-opslag van de clientcomputer om de beveiligingsfout 'niet-vertrouwde CA' tijdens het uitvoeren van het script te onderdrukken. De certificaten worden verwijderd wanneer het script is klaar. Als deze parameter is opgegeven, worden de certificaten niet geïnstalleerd op de clientcomputer en wordt de beveiligingswaarschuwing onderdrukt.

    Belangrijk

    Deze parameter wordt niet aanbevolen voor productie-implementaties.

Voorbeeld

In het volgende voorbeeld wordt een HPC Pack-cluster gemaakt met behulp van het configuratiebestand MyConfigFile.xmlen worden beheerdersreferenties opgegeven voor het installeren van het cluster.

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

Aanvullende overwegingen

  • Het script kan desgewenst het indienen van een taak inschakelen via de HPC Pack-webportal of de HPC Pack-REST API.
  • Het script kan desgewenst aangepaste pre- en post-configuratiescripts uitvoeren op het hoofd-knooppunt als u aanvullende software wilt installeren of andere instellingen wilt configureren.

Configuratiebestand

Het configuratiebestand voor het implementatiescript is een XML-bestand. Het schemabestand HPCIaaSClusterConfig.xsd staat in de map met IaaS-implementatiescripts van HPC Pack. IaaSClusterConfig is het hoofdelement van het configuratiebestand, dat de onderliggende elementen bevat die in detail worden beschreven in het bestand Manual.rtf in de map met het implementatiescript.

Voorbeeldconfiguratiebestanden

Vervang in de volgende voorbeelden uw eigen waarden door uw abonnements-id of -naam en de account- en servicenamen.

Voorbeeld 1

Het volgende configuratiebestand implementeert een HPC Pack-cluster met een hoofdknooppunt met lokale databases en vijf rekenknooppunten met het Windows Server 2012 R2-besturingssysteem. Alle cloudservices worden rechtstreeks op de locatie VS - west gemaakt. Het hoofd-knooppunt fungeert als domeincontroller van het domein-forest.

<?xml version="1.0" encoding="utf-8" ?>
<IaaSClusterConfig>
  <Subscription>
    <SubscriptionId>08701940-C02E-452F-B0B1-39D50119F267</SubscriptionId>
    <StorageAccount>mystorageaccount</StorageAccount>
  </Subscription>
  <Location>West US</Location>  
  <VNet>
    <VNetName>MyVNet</VNetName>
    <SubnetName>Subnet-1</SubnetName>
  </VNet>
  <Domain>
    <DCOption>HeadNodeAsDC</DCOption>
    <DomainFQDN>hpc.local</DomainFQDN>
  </Domain>
  <Database>
    <DBOption>LocalDB</DBOption>
  </Database>
  <HeadNode>
    <VMName>MyHeadNode</VMName>
    <ServiceName>MyHPCService</ServiceName>
    <VMSize>ExtraLarge</VMSize>
  </HeadNode>
  <ComputeNodes>
    <VMNamePattern>MyHPCCN-%1000%</VMNamePattern>
    <ServiceName>MyHPCCNService</ServiceName>
    <VMSize>Medium</VMSize>
    <NodeCount>5</NodeCount>
    <OSVersion>WindowsServer2012R2</OSVersion>
  </ComputeNodes>
</IaaSClusterConfig>

Voorbeeld 2

Met het volgende configuratiebestand wordt een HPC Pack-cluster geïmplementeerd in een bestaand domein-forest. Het cluster heeft 1 hoofdknooppunt met lokale databases en 12 rekenknooppunten met de VM-extensie BGInfo toegepast. Automatische installatie van Windows updates is uitgeschakeld voor alle VM's in het domein-forest. Alle cloudservices worden rechtstreeks op de Azië - oost gemaakt. De rekenknooppunten worden gemaakt in drie cloudservices en drie opslagaccounts: MyHPCCN-0001 tot En met MyHPCCN-0005 in MyHPCCNService01 en mycnstorage01; MyHPCCN-0006 naar MyHPCCN0010 in MyHPCCNService02 en mycnstorage02; en MyHPCCN-0011 naar MyHPCCN-0012 in MyHPCCNService03 en mycnstorage03). De rekenknooppunten worden gemaakt van een bestaande privé-afbeelding die is vastgelegd vanuit een rekenknooppunt. De service automatisch laten groeien en verkleinen is ingeschakeld met standaardintervallen voor groeien en verkleinen.

<?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>
     <NoWindowsAutoUpdate />
  </Domain>
  <Database>
    <DBOption>LocalDB</DBOption>
  </Database>
  <HeadNode>
    <VMName>MyHeadNode</VMName>
    <ServiceName>MyHPCService</ServiceName>
    <VMSize>ExtraLarge</VMSize>
  </HeadNode>
  <Certificates>
    <Certificate>
      <Id>1</Id>
      <PfxFile>d:\mytestcert1.pfx</PfxFile>
      <Password>MyPsw!!2</Password>
    </Certificate>
  </Certificates>
  <ComputeNodes>
    <VMNamePattern>MyHPCCN-%0001%</VMNamePattern>
<ServiceNamePattern>MyHPCCNService%01%</ServiceNamePattern>
<MaxNodeCountPerService>5</MaxNodeCountPerService>
<StorageAccountNamePattern>mycnstorage%01%</StorageAccountNamePattern>
    <VMSize>Medium</VMSize>
    <NodeCount>12</NodeCount>
    <ImageName HPCPackInstalled=”true”>MyHPCComputeNodeImage</ImageName>
    <VMExtensions>
       <VMExtension>
          <ExtensionName>BGInfo</ExtensionName>
          <Publisher>Microsoft.Compute</Publisher>
          <Version>1.*</Version>
       </VMExtension>
    </VMExtensions>
  </ComputeNodes>
  <AutoGrowShrink>
    <CertificateId>1</CertificateId>
  </AutoGrowShrink>
</IaaSClusterConfig>

Voorbeeld 3

Met het volgende configuratiebestand wordt een HPC Pack-cluster geïmplementeerd in een bestaand domein-forest. Het cluster bevat één hoofdknooppunt, één databaseserver met een gegevensschijf van 500 GB, twee brokerknooppunten met het besturingssysteem Windows Server 2012 R2 en vijf rekenknooppunten met het Windows Server 2012 R2-besturingssysteem. De cloudservice MyHPCCNService wordt gemaakt in de affiniteitsgroep MyIBAffinityGroup en de andere cloudservices worden gemaakt in de affiniteitsgroep MyAffinityGroup. De HPC Job Scheduler REST API- en HPC-webportal zijn ingeschakeld op het hoofd-knooppunt.

<?xml version="1.0" encoding="utf-8" ?>
<IaaSClusterConfig>
  <Subscription>
    <SubscriptionName>Subscription-1</SubscriptionName>
    <StorageAccount>mystorageaccount</StorageAccount>
  </Subscription>
  <AffinityGroup>MyAffinityGroup</AffinityGroup>
  <Location>East Asia</Location>  
  <VNet>
    <VNetName>MyVNet</VNetName>
    <SubnetName>Subnet-1</SubnetName>
  </VNet>    
  <Domain>
    <DCOption>ExistingDC</DCOption>
    <DomainFQDN>hpc.local</DomainFQDN>
  </Domain>
  <Database>
    <DBOption>NewRemoteDB</DBOption>
    <DBVersion>SQLServer2014_Enterprise</DBVersion>
    <DBServer>
      <VMName>MyDBServer</VMName>
      <ServiceName>MyHPCService</ServiceName>
      <VMSize>ExtraLarge</VMSize>
      <DataDiskSizeInGB>500</DataDiskSizeInGB>
    </DBServer>
  </Database>
  <HeadNode>
    <VMName>MyHeadNode</VMName>
    <ServiceName>MyHPCService</ServiceName>
    <VMSize>ExtraLarge</VMSize>
    <EnableRESTAPI />
    <EnableWebPortal />
  </HeadNode>
  <ComputeNodes>
    <VMNamePattern>MyHPCCN-%0000%</VMNamePattern>
    <ServiceName>MyHPCCNService</ServiceName>
    <VMSize>A8</VMSize>
<NodeCount>5</NodeCount>
<AffinityGroup>MyIBAffinityGroup</AffinityGroup>
  </ComputeNodes>
  <BrokerNodes>
    <VMNamePattern>MyHPCBN-%0000%</VMNamePattern>
    <ServiceName>MyHPCBNService</ServiceName>
    <VMSize>Medium</VMSize>
    <NodeCount>2</NodeCount>
  </BrokerNodes>
</IaaSClusterConfig>

Voorbeeld 4

Met het volgende configuratiebestand wordt een HPC Pack-cluster geïmplementeerd in een bestaand domein-forest. Het cluster heeft twee hoofdknooppunten met lokale databases, er worden twee Azure-knooppuntsjablonen gemaakt en er worden middelgrote Azure-knooppunten gemaakt voor Azure-knooppuntsjabloon AzureTemplate1. Een scriptbestand wordt uitgevoerd op het hoofd-knooppunt nadat het hoofd-knooppunt is geconfigureerd.

<?xml version="1.0" encoding="utf-8" ?>
<IaaSClusterConfig>
  <Subscription>
    <SubscriptionName>Subscription-1</SubscriptionName>
    <StorageAccount>mystorageaccount</StorageAccount>
  </Subscription>
  <AffinityGroup>MyAffinityGroup</AffinityGroup>
  <Location>East Asia</Location>  
  <VNet>
    <VNetName>MyVNet</VNetName>
    <SubnetName>Subnet-1</SubnetName>
  </VNet>
  <Domain>
    <DCOption>ExistingDC</DCOption>
    <DomainFQDN>hpc.local</DomainFQDN>
  </Domain>
  <Database>
    <DBOption>LocalDB</DBOption>
  </Database>
  <HeadNode>
    <VMName>MyHeadNode</VMName>
    <ServiceName>MyHPCService</ServiceName>
<VMSize>ExtraLarge</VMSize>
    <PostConfigScript>c:\MyHNPostActions.ps1</PostConfigScript>
  </HeadNode>
  <Certificates>
    <Certificate>
      <Id>1</Id>
      <PfxFile>d:\mytestcert1.pfx</PfxFile>
      <Password>MyPsw!!2</Password>
    </Certificate>
    <Certificate>
      <Id>2</Id>
      <PfxFile>d:\mytestcert2.pfx</PfxFile>
    </Certificate>    
  </Certificates>
  <AzureBurst>
    <AzureNodeTemplate>
      <TemplateName>AzureTemplate1</TemplateName>
      <SubscriptionId>bb9252ba-831f-4c9d-ae14-9a38e6da8ee4</SubscriptionId>
      <CertificateId>1</CertificateId>
      <ServiceName>mytestsvc1</ServiceName>
      <StorageAccount>myteststorage1</StorageAccount>
      <NodeCount>3</NodeCount>
      <RoleSize>Medium</RoleSize>
    </AzureNodeTemplate>
    <AzureNodeTemplate>
      <TemplateName>AzureTemplate2</TemplateName>
      <SubscriptionId>ad4b9f9f-05f2-4c74-a83f-f2eb73000e0b</SubscriptionId>
      <CertificateId>1</CertificateId>
      <ServiceName>mytestsvc2</ServiceName>
      <StorageAccount>myteststorage2</StorageAccount>
      <Proxy>
        <UsesStaticProxyCount>false</UsesStaticProxyCount>     
        <ProxyRatio>100</ProxyRatio>
        <ProxyRatioBase>400</ProxyRatioBase>
      </Proxy>
      <OSVersion>WindowsServer2012</OSVersion>
    </AzureNodeTemplate>
  </AzureBurst>
</IaaSClusterConfig>

Problemen oplossen

  • Foutmelding 'VNet bestaat niet': als u het script voor het gelijktijdig implementeren van meerdere clusters in Azure onder één abonnement hebt uitgevoerd, kunnen een of meer implementaties mislukken met de fout 'VNet VNet_Name doesn't exist'. Als deze fout optreedt, moet u het script opnieuw uitvoeren voor de mislukte implementatie.

  • Probleem bij toegang tot internet vanuit het virtuele Azure-netwerk: als u een cluster met een nieuwe domeincontroller maakt met behulp van het implementatiescript of als u een hoofdknooppunt-VM handmatig promoveert naar een domeincontroller, kunt u problemen ervaren bij het verbinden van de VM's met internet. Dit probleem kan optreden als een DNS-server van de doorsturende server automatisch is geconfigureerd op de domeincontroller en deze DNS-server van de doorsturende server niet correct wordt opgelost.

    U kunt dit probleem oplossen door u aan te melden bij de domeincontroller en de configuratie-instelling voor de doorsturende server te verwijderen of een geldige DNS-server voor doorsturen te configureren. Als u deze instelling wilt configureren, Serverbeheer u op ExtraDNS> om DNS-manager te openen en dubbelklikt u vervolgens op Doorstrolprogramma's.

  • Probleem bij het openen van het RDMA-netwerk vanaf rekenintensieve VM's: als u VM's met Windows Server-reken- of broker-knooppunt toevoegt met een grootte die geschikt is voor RDMA, zoals A8 of A9, kunt u problemen ervaren bij het verbinden van deze VM's met het RDMA-toepassingsnetwerk. Een reden waarom dit probleem zich voordoet, is als de HpcVmDrivers-extensie niet juist is geïnstalleerd wanneer de VM's aan het cluster worden toegevoegd. De extensie kan bijvoorbeeld vastgelopen zijn in de installatietoestand.

    U kunt dit probleem oplossen door eerst de status van de extensie in de VM's te controleren. Als de extensie niet juist is geïnstalleerd, verwijdert u de knooppunten uit het HPC-cluster en voegt u de knooppunten opnieuw toe. U kunt bijvoorbeeld reken-knooppunt-VM's toevoegen door het script Add-HpcIaaSNode.ps1 op het hoofd-knooppunt uit te voeren.

Volgende stappen