Delen via


Azure Pipelines gebruiken om een HPC-oplossing te bouwen en implementeren

Azure DevOps-hulpprogramma's kunnen het bouwen en testen van HPC-oplossingen (High Performance Computing) van Azure Batch automatiseren. Azure Pipelines biedt moderne processen voor continue integratie (CI) en continue implementatie (CD) voor het bouwen, implementeren, testen en bewaken van software. Deze processen versnellen de levering van software, zodat u zich kunt richten op uw code in plaats van infrastructuur en bewerkingen te ondersteunen.

In dit artikel wordt beschreven hoe u CI/CD-processen instelt met behulp van Azure Pipelines met ARM-sjablonen (Azure Resource Manager-sjablonen) voor het implementeren van HPC-oplossingen in Azure Batch. In het voorbeeld wordt een build- en release-pijplijn gemaakt om een Azure Batch-infrastructuur te implementeren en een toepassingspakket vrij te geven. In het volgende diagram ziet u de algemene implementatiestroom, ervan uitgaande dat de code lokaal is ontwikkeld:

Diagram met de implementatiestroom in de pijplijn.

Vereiste voorwaarden

Als u de stappen in dit artikel wilt volgen, hebt u het volgende nodig:

De oplossing voorbereiden

In het voorbeeld in dit artikel worden verschillende ARM-sjablonen en een bestaande opensource-toepassing voor videoverwerking, FFmpeg, gebruikt. U kunt deze resources kopiëren of downloaden en naar uw Azure Repos-opslagplaats pushen.

Belangrijk

In dit voorbeeld wordt Windows-software geïmplementeerd op Windows Batch-knooppunten. Azure Pipelines, ARM-sjablonen en Batch bieden ook volledige ondersteuning voor Linux-software en -knooppunten.

Inzicht in de ARM-sjablonen

Drie mogelijkheidssjablonen, vergelijkbaar met eenheden of modules, implementeren specifieke onderdelen van functionaliteit. Een end-to-end-oplossingssjabloon implementeert vervolgens de onderliggende mogelijkheidssjablonen. Met deze gekoppelde sjabloonstructuur kan elke mogelijkheidssjabloon afzonderlijk worden getest en opnieuw worden gebruikt in alle oplossingen.

Diagram met een gekoppelde sjabloonstructuur met behulp van ARM-sjablonen.

Zie de referentiehandleiding voor Resource Manager-sjablonen voor Microsoft.Batch-resourcetypen voor gedetailleerde informatie over de sjablonen.

Sjabloon voor opslagaccount

Sla de volgende code op als een bestand met de naam storageAccount.json. Deze sjabloon definieert een Azure Storage-account dat vereist is voor het implementeren van de toepassing in het Batch-account.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "accountName": {
            "type": "string",
            "metadata": {
                 "description": "Name of the Azure Storage Account"
             }
         }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.Storage/storageAccounts",
            "name": "[parameters('accountName')]",
            "sku": {
                "name": "Standard_LRS"
            },
            "apiVersion": "2018-02-01",
            "location": "[resourceGroup().location]",
            "properties": {}
        }
    ],
    "outputs": {
        "blobEndpoint": {
          "type": "string",
          "value": "[reference(resourceId('Microsoft.Storage/storageAccounts', parameters('accountName'))).primaryEndpoints.blob]"
        },
        "resourceId": {
          "type": "string",
          "value": "[resourceId('Microsoft.Storage/storageAccounts', parameters('accountName'))]"
        }
    }
}

Batchaccountsjabloon

Sla de volgende code op als een bestand met de naam batchAccount.json. Deze sjabloon definieert een Batch-account. Het Batch-account fungeert als een platform voor het uitvoeren van toepassingen in knooppuntgroepen.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "batchAccountName": {
           "type": "string",
           "metadata": {
                "description": "Name of the Azure Batch Account"
            }
        },
        "storageAccountId": {
           "type": "string",
           "metadata": {
                "description": "ID of the Azure Storage Account"
            }
        }
    },
    "variables": {},
    "resources": [
        {
            "name": "[parameters('batchAccountName')]",
            "type": "Microsoft.Batch/batchAccounts",
            "apiVersion": "2017-09-01",
            "location": "[resourceGroup().location]",
            "properties": {
              "poolAllocationMode": "BatchService",
              "autoStorage": {
                  "storageAccountId": "[parameters('storageAccountId')]"
              }
            }
          }
    ],
    "outputs": {}
}

Batch-poolsjabloon

Sla de volgende code op als een bestand met de naam batchAccountPool.json. Met deze sjabloon maakt u een knooppuntgroep en knooppunten in het Batch-account.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "batchAccountName": {
           "type": "string",
           "metadata": {
                "description": "Name of the Azure Batch Account"
           }
        },
        "batchAccountPoolName": {
            "type": "string",
            "metadata": {
                 "description": "Name of the Azure Batch Account Pool"
             }
         }
    },
    "variables": {},
    "resources": [
        {
            "name": "[concat(parameters('batchAccountName'),'/', parameters('batchAccountPoolName'))]",
            "type": "Microsoft.Batch/batchAccounts/pools",
            "apiVersion": "2017-09-01",
            "properties": {
                "deploymentConfiguration": {
                    "virtualMachineConfiguration": {
                        "imageReference": {
                            "publisher": "MicrosoftWindowsServer",
                            "offer": "WindowsServer",
                            "sku": "2022-datacenter",
                            "version": "latest"
                        },
                        "nodeAgentSkuId": "batch.node.windows amd64"
                    }
                },
                "vmSize": "Standard_D2s_v3"
            }
          }
    ],
    "outputs": {}
}

Orchestrator-sjabloon

Sla de volgende code op als een bestand met de naam deployment.json. Deze laatste sjabloon fungeert als orchestrator om de drie onderliggende mogelijkheidssjablonen te implementeren.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "StorageContainerUri": {
           "type": "string",
           "metadata": {
                "description": "URI of the Blob Storage Container containing the Azure Resource Manager templates"
            }
        },
        "StorageContainerSasToken": {
           "type": "string",
           "metadata": {
                "description": "The SAS token of the container containing the Azure Resource Manager templates"
            }
        },
        "applicationStorageAccountName": {
            "type": "string",
            "metadata": {
                 "description": "Name of the Azure Storage Account"
            }
         },
        "batchAccountName": {
            "type": "string",
            "metadata": {
                 "description": "Name of the Azure Batch Account"
            }
         },
         "batchAccountPoolName": {
             "type": "string",
             "metadata": {
                  "description": "Name of the Azure Batch Account Pool"
              }
          }
    },
    "variables": {},
    "resources": [
        {
            "apiVersion": "2017-05-10",
            "name": "storageAccountDeployment",
            "type": "Microsoft.Resources/deployments",
            "properties": {
                "mode": "Incremental",
                "templateLink": {
                  "uri": "[concat(parameters('StorageContainerUri'), 'arm-templates/storageAccount.json', parameters('StorageContainerSasToken'))]",
                  "contentVersion": "1.0.0.0"
                },
                "parameters": {
                    "accountName": {"value": "[parameters('applicationStorageAccountName')]"}
                }
            }
        },
        {
            "apiVersion": "2017-05-10",
            "name": "batchAccountDeployment",
            "type": "Microsoft.Resources/deployments",
            "dependsOn": [
                "storageAccountDeployment"
            ],
            "properties": {
                "mode": "Incremental",
                "templateLink": {
                  "uri": "[concat(parameters('StorageContainerUri'), 'arm-templates/batchAccount.json', parameters('StorageContainerSasToken'))]",
                  "contentVersion": "1.0.0.0"
                },
                "parameters": {
                    "batchAccountName": {"value": "[parameters('batchAccountName')]"},
                    "storageAccountId": {"value": "[reference('storageAccountDeployment').outputs.resourceId.value]"}
                }
            }
        },
        {
            "apiVersion": "2017-05-10",
            "name": "poolDeployment",
            "type": "Microsoft.Resources/deployments",
            "dependsOn": [
                "batchAccountDeployment"
            ],
            "properties": {
                "mode": "Incremental",
                "templateLink": {
                  "uri": "[concat(parameters('StorageContainerUri'), 'arm-templates/batchAccountPool.json', parameters('StorageContainerSasToken'))]",
                  "contentVersion": "1.0.0.0"
                },
                "parameters": {
                    "batchAccountName": {"value": "[parameters('batchAccountName')]"},
                    "batchAccountPoolName": {"value": "[parameters('batchAccountPoolName')]"}
                }
            }
        }
    ],
    "outputs": {}
}

Uw opslagplaats instellen

Upload de ARM-sjablonen, de FFmpeg-app en een YAML-builddefinitiebestand naar uw Azure Repos-repository.

  1. Upload de vier ARM-sjablonen naar een map met arm-sjablonen in uw opslagplaats.

  2. Voor het toepassingspakket downloadt en extraheert u de 64-bits versie van FFmpeg 4.3.1 en uploadt u deze naar een hpc-toepassingsmap in uw opslagplaats.

  3. Sla voor de builddefinitie de volgende definitie op als een bestand met de naam hpc-app.build.yml en upload deze naar een map met pijplijnen in uw opslagplaats.

    # To publish an application into Batch, you need to
    # first zip the file, and then publish an artifact, so
    # you can take the necessary steps in your release pipeline.
    steps:
    # First, zip up the files required in the Batch account.
    # For this instance, those are the ffmpeg files.
    - task: ArchiveFiles@2
      displayName: 'Archive applications'
      inputs:
        rootFolderOrFile: hpc-application
        includeRootFolder: false
        archiveFile: '$(Build.ArtifactStagingDirectory)/package/$(Build.BuildId).zip'
    # Publish the zip file, so you can use it as part
    # of your Release pipeline later.
    - task: PublishPipelineArtifact@0
      inputs:
        artifactName: 'hpc-application'
        targetPath: '$(Build.ArtifactStagingDirectory)/package'
    

Wanneer u klaar bent met het instellen van uw opslagplaats, moet de mapstructuur de volgende hoofdsecties hebben:

  • Een map met arm-sjablonen die de ARM-sjablonen bevat.
  • Een hpc-application-map die ffmpeg bevat.
  • Een map met pijplijnen die het YAML-builddefinitiebestand voor de build-pijplijn bevat.

Schermopname van de structuur van de opslagplaats.

Opmerking

Deze voorbeeldstructuur van codebasis laat zien dat u toepassings-, infrastructuur- en pijplijncode in dezelfde opslagplaats kunt opslaan.

De Azure-pijplijn maken

Nadat u de opslagplaats voor broncode hebt ingesteld, gebruikt u Azure Pipelines om een build-, test- en implementatiepijplijn voor uw toepassing te implementeren. In deze fase van een pijplijn voert u doorgaans tests uit om code te valideren en onderdelen van de software te bouwen. Het aantal en de typen tests en eventuele andere taken die u uitvoert, zijn afhankelijk van uw algehele build- en releasestrategie.

Maak de build-pijplijn

In deze sectie maakt u een YAML-buildpijplijn om te werken met de ffmpeg-software die binnen het Batch-account wordt uitgevoerd.

  1. Selecteer in uw Azure DevOps-project Pijplijnen in het linkernavigatievenster en selecteer vervolgens Nieuwe pijplijn.

  2. Op het scherm Waar is uw code, selecteer Azure Repos Git.

    Schermopname van het scherm 'Nieuwe pijplijn'.

  3. Op het scherm Selecteer een repository, selecteer uw repository.

    Opmerking

    U kunt ook een build-pijplijn maken met behulp van een visuele ontwerper. Selecteer Op de pagina Nieuwe pijplijnde optie De klassieke editor gebruiken. U kunt een YAML-sjabloon gebruiken in de visualontwerper. Zie Uw klassieke pijplijn definiëren voor meer informatie.

  4. Selecteer op het scherm Uw pijplijn configureren het bestaand Azure Pipelines YAML-bestand.

  5. Op het scherm Selecteer een bestaand YAML-bestand, selecteer het hpc-app.build.yml bestand in uw repository, en selecteer vervolgens Doorgaan.

  6. Controleer in het Uw pijplijn YAML-scherm de buildconfiguratie en selecteer vervolgens Uitvoeren, of selecteer het vervolgkeuzemenu naast Uitvoeren en kies Opslaan. Deze sjabloon maakt continue integratie mogelijk, zodat de build automatisch wordt geactiveerd wanneer een nieuwe commit naar de repository voldoet aan de voorwaarden die zijn ingesteld in de build.

    Schermopname van een bestaande build-pijplijn.

  7. U kunt voortgangsupdates voor livebuilds bekijken. Als u de resultaten van de build wilt bekijken, selecteert u de juiste uitvoering vanuit uw builddefinitie in Azure Pipelines.

    Schermopname van live-uitvoer van build in Azure Pipelines.

Opmerking

Als u een clienttoepassing gebruikt om uw HPC-oplossing uit te voeren, moet u een afzonderlijke builddefinitie voor die toepassing maken. Zie de documentatie voor Azure Pipelines voor instructies.

De release-pijplijn maken

U gebruikt een Release-pijplijn van Azure Pipelines om uw toepassing en onderliggende infrastructuur te implementeren. Release-pijplijnen maken CD mogelijk en automatiseren uw releaseproces. Er zijn verschillende stappen voor het implementeren van uw toepassing en onderliggende infrastructuur.

De gekoppelde sjablonen voor deze oplossing moeten toegankelijk zijn vanaf een openbaar HTTP- of HTTPS-eindpunt. Dit eindpunt kan een GitHub-opslagplaats, een Azure Blob Storage-account of een andere opslaglocatie zijn. Om ervoor te zorgen dat de geüploade sjabloonartefacten veilig blijven, houdt u deze in een privémodus vast, maar opent u deze met behulp van een sas-token (Shared Access Signature).

In het volgende voorbeeld ziet u hoe u een infrastructuur en toepassing implementeert met behulp van sjablonen uit een Azure Storage-blob.

De pijplijn instellen

  1. In uw Azure DevOps-project, selecteer Pipelines>Releases in de linker navigatie.

  2. Selecteer in het volgende scherm Nieuw>Nieuwe release-pijplijn.

  3. Op het scherm Selecteer een sjabloon selecteert u Lege taak en sluit u vervolgens het scherm Fase.

  4. Selecteer Nieuwe release-pijplijn boven aan de pagina en wijzig de naam van de pijplijn in iets dat relevant is voor uw pijplijn, zoals Azure Batch + Pool implementeren.

    Schermopname van de eerste release-pijplijn.

  5. Selecteer Toevoegen in de sectie Artefacten.

  6. Selecteer in het scherm Een artefact toevoegende optie Build en selecteer vervolgens uw Build-pijplijn om de uitvoer voor de HPC-toepassing op te halen.

    Opmerking

    U kunt een bronalias maken of de standaardwaarde accepteren. Noteer de waarde van de bronalias , omdat u deze nodig hebt om taken te maken in de releasedefinitie.

    Schermopname van een artefact-link naar het hpc-application-pakket in de build-pijplijn.

  7. Selecteer Toevoegen.

  8. Op de pijplijnpagina, selecteer Toevoegen naast Artefacten om een koppeling naar een ander artefact en uw Azure Repos-opslagplaats te maken. Deze koppeling is vereist voor toegang tot de ARM-sjablonen in uw opslagplaats. ARM-sjablonen hebben geen compilatie nodig, dus u hoeft ze niet te pushen via een build-pijplijn.

    Opmerking

    Let nogmaals op de waarde van de bronalias die u later wilt gebruiken.

    Schermopname met een koppeling naar een artefact in de Azure Repos- repository.

  9. Selecteer het tabblad Variabelen . Maak de volgende variabelen in uw pijplijn, zodat u niet dezelfde gegevens opnieuw hoeft in te voeren in meerdere taken.

    Naam Waarde
    applicationStorageAccountName Naam voor het opslagaccount voor het opslaan van de binaire bestanden van de HPC-toepassing.
    batchAccountApplicationName Naam voor de toepassing in het Batch-account.
    batchAccountName Naam voor het Batch-account.
    batchAccountPoolName Naam voor de pool van virtuele machines (VM's) om de verwerking uit te voeren.
    batchApplicationId Unieke ID voor de Batch-toepassing, in de vorm van:
    /subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>^
    /providers/Microsoft.Batch/batchAccounts/<batchAccountName>^
    /applications/<batchAccountApplicationName>.

    Vervang de <subscriptionId> tijdelijke aanduiding door uw Azure-abonnements-id en de andere tijdelijke aanduidingen door de waarden die u voor de andere variabelen in deze lijst hebt ingesteld.
    batchApplicationVersion Semantische versie van uw Batch-toepassing, in dit geval 4.3.1.
    location Azure-regio voor de resources die moeten worden uitgerold.
    resourceGroupName Naam voor de resourcegroep waarin resources moeten worden geïmplementeerd.
    storageAccountName Naam voor het opslagaccount voor het opslaan van de gekoppelde ARM-sjablonen.
    StorageContainerSasToken $(<referenceName>.StorageContainerSasToken). Vervang de <referenceName tijdelijke aanduiding door de referentienaamwaarde die u configureert in de sectie Uitvoervariabelen van de volgende Azure File Copy-stap .
    StorageContainerUri $(<referenceName>.StorageContainerUri). Vervang de <referenceName> tijdelijke aanduiding door de verwijzingsnaamwaarde die u configureert in de sectie Uitvoervariabelen van de stap Azure File Copy.

    Schermopname van variabelen die zijn ingesteld voor de Azure Pipelines-release.

  10. Selecteer het tabblad Taken en selecteer vervolgens agenttaak.

  11. Op het scherm Agenttaak, onder Agentpool, selecteer Azure Pipelines.

  12. Selecteer onder Agentspecificatiede nieuwste versie van Windows.

    Schermopname van de agenttaakinstellingen.

Taken toevoegen

Maak zes taken om:

  • Download de zipped ffmpeg-bestanden.
  • Implementeer een opslagaccount om de geneste ARM-sjablonen te hosten.
  • Kopieer de ARM-sjablonen naar het opslagaccount.
  • Implementeer het Batch-account en de vereiste afhankelijkheden.
  • Maak een toepassing in het Batch-account.
  • Upload het toepassingspakket naar het Batch-account.

Voor elke nieuwe taak die door de volgende stappen wordt opgegeven:

  1. Selecteer het + symbool naast agenttaak in het linkerdeelvenster.

  2. Zoek en selecteer de opgegeven taak in het rechterdeelvenster.

  3. Voeg de eigenschappen toe of selecteer deze om de taak te configureren.

  4. Selecteer Toevoegen.

    Schermopname van de taken die worden gebruikt om de HPC-toepassing vrij te geven aan Azure Batch.

Maak de taken als volgt:

  1. Selecteer de taak Pijplijnartefacten downloaden en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Download ApplicationPackage naar agent in.
    • Artefactnaam: Voer hpc-application in.
    • Doelmap: Voer in $(System.DefaultWorkingDirectory).
  2. Maak een Azure Storage-account om uw ARM-sjablonen op te slaan. U kunt een bestaand opslagaccount gebruiken, maar om dit zelfstandige voorbeeld en de isolatie van inhoud te ondersteunen, maakt u een toegewezen opslagaccount.

    Selecteer de ARM-sjabloonimplementatie: Resourcegroepbereik taak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Implementeer opslagaccount voor ARM-sjablonen in.
    • Azure Resource Manager-verbinding: selecteer het juiste Azure-abonnement.
    • Abonnement: Selecteer het juiste Azure-abonnement.
    • Actie: Selecteer Resourcegroep maken of bijwerken.
    • Resourcegroep: Voer in $(resourceGroupName).
    • Locatie: Voer $(location)in.
    • Sjabloon: Voer in $(System.ArtifactsDirectory)/<AzureRepoArtifactSourceAlias>/arm-templates/storageAccount.json. Vervang de <AzureRepoArtifactSourceAlias> tijdelijke aanduiding door de bronalias van de opslagplaats die u eerder hebt genoteerd.
    • Sjabloonparameters overschrijven: Enter -accountName $(storageAccountName).
  3. Upload de bestanden uit broncodebeheer naar het opslagaccount. Een deel van deze Azure File Copy-taak voert de URI van de opslagaccountcontainer en het SAS-token uit naar een variabele, zodat deze in latere stappen opnieuw kunnen worden gebruikt.

    Selecteer de Azure File Copy-taak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer AzureBlob File Copy in.
    • Bron: Voer in $(System.ArtifactsDirectory)/<AzureRepoArtifactSourceAlias>/arm-templates/. Vervang de <AzureRepoArtifactSourceAlias> tijdelijke aanduiding door de bronalias van de opslagplaats die u eerder hebt genoteerd.
    • Azure-abonnement: Selecteer het juiste Azure-abonnement.
    • Doeltype: Kies Azure Blob.
    • RM-opslagaccount: Voer in $(storageAccountName).
    • Containernaam: Voer sjablonen in.
    • Referentienaam: Uitvoervariabelen uitvouwen en voer vervolgens ffmpeg in.

    Opmerking

    Als deze stap mislukt, moet u ervoor zorgen dat uw Azure DevOps-organisatie de rol Opslagblob-bijdrager heeft in het opslagaccount.

  4. Implementeer de orchestrator ARM-sjabloon om het Batch-account en de pool te maken. Deze sjabloon bevat parameters voor de container-URI van het opslagaccount en het SAS-token. De variabelen die in de ARM-sjabloon zijn vereist, worden bewaard in de sectie variabelen van de releasedefinitie en zijn ingesteld vanuit de azureBlob-bestandskopietaak.

    Selecteer de ARM-sjabloonimplementatie: Resourcegroepbereik taak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Azure Batch implementeren in.
    • Azure Resource Manager-verbinding: Selecteer het juiste Azure-abonnement.
    • Abonnement: Selecteer het juiste Azure-abonnement.
    • Actie: Selecteer Resourcegroep maken of bijwerken.
    • Resourcegroep: Voer in $(resourceGroupName).
    • Locatie: Voer $(location)in.
    • Sjabloonlocatie: Selecteer de URL van het bestand.
    • Sjabloonkoppeling: Voer in $(StorageContainerUri)arm-templates/deployment.json$(StorageContainerSasToken).
    • Sjabloonparameters overschrijven: Enter -StorageContainerUri $(StorageContainerUri) -StorageContainerSasToken $(StorageContainerSasToken) -applicationStorageAccountName $(applicationStorageAccountName) -batchAccountName $(batchAccountName) -batchAccountPoolName $(batchAccountPoolName).

    Een veelvoorkomende procedure is het gebruik van Azure Key Vault-taken. Als de service-principal die is verbonden met uw Azure-abonnement een passend toegangsbeleid heeft, kan deze geheimen downloaden uit Key Vault en worden gebruikt als variabele in uw pijplijn. De naam van het geheim wordt ingesteld met de bijbehorende waarde. U kunt bijvoorbeeld verwijzen naar een geheim van sshPassword met $(sshPassword) in de releasedefinitie.

  5. Roep Azure CLI aan om een toepassing te maken in Azure Batch.

    Selecteer de Azure CLI-taak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Een toepassing maken in een Azure Batch-account in.
    • Azure Resource Manager-verbinding: Selecteer het juiste Azure-abonnement.
    • Scripttype: Selecteer PowerShell Core.
    • Scriptlocatie: Kies inline-script.
    • Inlinescript: Voer in az batch application create --application-name $(batchAccountApplicationName) --name $(batchAccountName) --resource-group $(resourceGroupName).
  6. Roep Azure CLI aan om gekoppelde pakketten te uploaden naar de toepassing, in dit geval de ffmpeg-bestanden.

    Selecteer de Azure CLI-taak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Upload pakket naar Azure Batch-account in.
    • Azure Resource Manager-verbinding: Selecteer het juiste Azure-abonnement.
    • Scripttype: Selecteer PowerShell Core.
    • Scriptlocatie: Kies inline-script.
    • Inlinescript: Voer in az batch application package create --application-name $(batchAccountApplicationName) --name $(batchAccountName) --resource-group $(resourceGroupName) --version $(batchApplicationVersion) --package-file=$(System.DefaultWorkingDirectory)/$(Release.Artifacts.<AzureBuildArtifactSourceAlias>.BuildId).zip. Vervang de <AzureBuildArtifactSourceAlias> tijdelijke aanduiding door de alias Build Source die u eerder hebt genoteerd.

    Opmerking

    Het versienummer van het toepassingspakket is ingesteld op een variabele. Met de variabele kunt u eerdere versies van het pakket overschrijven en kunt u handmatig de pakketversie beheren die naar Azure Batch wordt gepusht.

De release maken en uitvoeren

  1. Wanneer u klaar bent met het maken van alle stappen, selecteert u Opslaan boven aan de pijplijnpagina en selecteert u OK.

  2. Selecteer Release maken boven aan de pagina.

  3. Als u de livereleasestatus wilt bekijken, selecteert u de koppeling boven aan de pagina met de mededeling dat de release is gemaakt.

  4. Als u de logboekuitvoer van de agent wilt weergeven, beweegt u de muisaanwijzer over de fase en selecteert u vervolgens de knop Logboeken .

    Schermopname van de status van de release.

De omgeving testen

Zodra de omgeving is ingesteld, controleert u of de volgende tests zijn uitgevoerd. Vervang de tijdelijke aanduidingen door de waarden van uw resourcegroep en Batch-account.

Verbinding maken met het Batch-account

Maak verbinding met het nieuwe Batch-account met behulp van Azure CLI vanaf een opdrachtprompt.

  1. Meld u aan bij uw Azure-account met az login en volg de instructies voor verificatie.
  2. Verifieer het Batch-account met az batch account login -g <resourceGroup> -n <batchAccount>.

De beschikbare toepassingen weergeven

az batch application list -g <resourceGroup> -n <batchAccount>

Controleer of de pool geldig is

az batch pool list

Let op in de uitvoer van de opdracht de waarde van currentDedicatedNodes om aan te passen in de volgende test.

Het formaat van de pool wijzigen

Voer de volgende opdracht uit om het formaat van de pool te wijzigen, zodat er rekenknooppunten beschikbaar zijn voor taak- en taaktests. Vervang de tijdelijke aanduiding door de <poolName> naamwaarde van uw pool en de <targetNumber> tijdelijke aanduiding door een getal dat groter is dan de currentDedicatedNodes waarde uit de vorige opdrachtuitvoer. Controleer de status door de az batch pool list opdracht uit te voeren totdat het vergroten is voltooid en het gewenste aantal knooppunten wordt weergegeven.

az batch pool resize --pool-id <poolname> --target-dedicated-nodes <target number>

Volgende stappen

Bekijk deze tutorials om te leren hoe je met een Batch-account werkt via een simpele applicatie.