Delen via


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

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

In dit artikel wordt beschreven hoe u CI/CD-processen instelt met behulp van Azure Pipelines met Azure Resource Manager-sjablonen (ARM-sjablonen) om HPC-oplossingen op Azure Batch te implementeren. 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.

Vereisten

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 ze naar uw Opslagplaats voor Azure-opslagplaatsen pushen.

Belangrijk

In dit voorbeeld wordt Windows-software geïmplementeerd op Batch-knooppunten op basis van Windows. 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 de 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 verschillende oplossingen.

Diagram met een gekoppelde sjabloonstructuur met ARM-sjablonen.

Zie de naslaghandleiding voor Resource Manager sjabloon 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. Met deze sjabloon definieert u een Azure Storage-account. Dit is vereist 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'))]"
        }
    }
}

Batch-accountsjabloon

Sla de volgende code op als een bestand met de naam batchAccount.json. Met deze sjabloon wordt een Batch-account gedefinieerd. 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 een orchestrator voor het implementeren van de drie onderliggende mogelijkheidssjablonen.

{
    "$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-opslagplaats.

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

  2. Download voor het toepassingspakket de 64-bits Windows-versie van FFmpeg 4.3.1 en upload deze naar een map hpc-application 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 pijplijnmap 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 de opslagplaats, moet de mapstructuur de volgende hoofdsecties hebben:

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

Schermopname van de structuur van de opslagplaats.

Notitie

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 algemene build- en releasestrategie.

De build-pijplijn maken

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

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

  2. Selecteer in het scherm Waar is uw codede optie Azure-opslagplaatsen Git.

    Schermopname van het scherm Nieuwe pijplijn.

  3. Selecteer uw opslagplaats op het scherm Een opslagplaats selecteren.

    Notitie

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

  4. Selecteer in het scherm Uw pijplijn configurerende optie Bestaand YAML-bestand voor Azure-pijplijnen.

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

  6. Controleer in het scherm YAML van uw pijplijn controleren de buildconfiguratie en selecteer vervolgens Uitvoeren of selecteer de vervolgkeuzelijst naast Uitvoeren en selecteer Opslaan. Deze sjabloon maakt continue integratie mogelijk, zodat de build automatisch wordt geactiveerd wanneer een nieuwe doorvoer naar de opslagplaats voldoet aan de voorwaarden die zijn ingesteld in de build.

    Schermopname van een bestaande build-pijplijn.

  7. U kunt live updates voor de voortgang van de build bekijken. Als u de buildresultaten wilt bekijken, selecteert u de juiste uitvoering in uw builddefinitie in Azure Pipelines.

    Schermopname van live-uitvoer van build in Azure Pipelines.

Notitie

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 de onderliggende infrastructuur te implementeren. Release-pijplijnen maken CD mogelijk en automatiseren uw releaseproces. Er zijn verschillende stappen voor het implementeren van uw toepassing en de 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 ze in een privémodus, maar opent u ze 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. Selecteer in uw Azure DevOps-project pijplijnen>releases in de linkernavigatiebalk.

  2. Selecteer in het volgende scherm Depijplijn Nieuwe >nieuwe release.

  3. Selecteer in het scherm Een sjabloon selecterende optie Lege taak en sluit 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 Deploy Azure Batch + Pool.

    Schermopname van de eerste release-pijplijn.

  5. Selecteer Toevoegen in de sectie Artefacten.

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

    Notitie

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

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

  7. Selecteer Toevoegen.

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

    Notitie

    Noteer opnieuw de waarde van de bronalias die u later wilt gebruiken.

    Schermopname van een artefactkoppeling naar de Opslagplaats voor Azure-opslagplaatsen.

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

    Name Waarde
    applicationStorageAccountName Naam voor het opslagaccount voor 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 groep virtuele machines (VM's) om de verwerking uit te voeren.
    batchApplicationId Unieke id voor de Batch-toepassing, in de vorm:
    /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 hebt ingesteld voor de andere variabelen in deze lijst.
    batchApplicationVersion Semantische versie van uw Batch-toepassing, in dit geval 4.3.1.
    location Azure-regio voor de resources die moeten worden geïmplementeerd.
    resourceGroupName Naam voor de resourcegroep waarin resources moeten worden geïmplementeerd.
    storageAccountName Naam voor het opslagaccount voor de gekoppelde ARM-sjablonen.
    StorageContainerSasToken $(<referenceName>.StorageContainerSasToken). Vervang de <referenceName tijdelijke aanduiding door de waarde referentienaam die u configureert in de sectie Uitvoervariabelen van de volgende azure-bestandskopiestap .
    StorageContainerUri $(<referenceName>.StorageContainerUri). Vervang de <referenceName> tijdelijke aanduiding door de waarde referentienaam die u configureert in de sectie Uitvoervariabelen van de stap Azure File Copy.

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

  10. Selecteer het tabblad Taken en selecteer vervolgens Agenttaak.

  11. Selecteer in het scherm Agenttaak onder Agentpool de optie Azure-pijplijnen.

  12. Selecteer onder Agentspecificatiede optie windows-nieuwste.

    Schermopname van de instellingen van de agenttaak.

Taken toevoegen

Maak zes taken voor het volgende:

  • Download de gezipte 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 in 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 voor Azure Batch.

Maak de taken als volgt:

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

    • Weergavenaam: Voer ApplicationPackage downloaden naar agent in.
    • Naam van artefact: 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: resourcegroepbereiktaak en stel de volgende eigenschappen in:

    • Weergavenaam: Voer Opslagaccount implementeren 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 in $(location).
    • 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: Voer -accountName $(storageAccountName) in.
  3. Upload de artefacten vanuit broncodebeheer naar het opslagaccount. Een deel van deze Azure File Copy-taak voert de container-URI en het SAS-token van het opslagaccount uit naar een variabele, zodat deze in latere stappen opnieuw kunnen worden gebruikt.

    Selecteer de taak Azure File Copy 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: Selecteer Azure Blob.
    • RM-opslagaccount: voer in $(storageAccountName).
    • Containernaam: Voer sjablonen in.
    • Naslagnaam: Vouw Uitvoervariabelen uit en voer ffmpeg in.

    Notitie

    Als deze stap mislukt, moet u ervoor zorgen dat uw Azure DevOps-organisatie de rol Storage Blob-inzender 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 en het SAS-token van het opslagaccount. De variabelen die in de ARM-sjabloon zijn vereist, bevinden zich in de sectie variabelen van de releasedefinitie en zijn ingesteld op basis van de AzureBlob-bestandskopietaak.

    Selecteer de arm-sjabloonimplementatie: resourcegroepbereiktaak 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 in $(location).
    • Sjabloonlocatie: Selecteer de URL van het bestand.
    • Sjabloonkoppeling: Voer in $(StorageContainerUri)arm-templates/deployment.json$(StorageContainerSasToken).
    • Sjabloonparameters overschrijven: Voer -StorageContainerUri $(StorageContainerUri) -StorageContainerSasToken $(StorageContainerSasToken) -applicationStorageAccountName $(applicationStorageAccountName) -batchAccountName $(batchAccountName) -batchAccountPoolName $(batchAccountPoolName) in.

    Het is gebruikelijk om Azure Key Vault-taken te gebruiken. Als de service-principal die is verbonden met uw Azure-abonnement een geschikte toegangsbeleidsset heeft, kan deze geheimen downloaden van Key Vault en worden gebruikt als een 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 Toepassing maken in Azure Batch-account in.
    • Azure Resource Manager-verbinding: selecteer het juiste Azure-abonnement.
    • Scripttype: Selecteer PowerShell Core.
    • Scriptlocatie: selecteer Inlinescript.
    • 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 Pakket uploaden naar Azure Batch-account in.
    • Azure Resource Manager-verbinding: selecteer het juiste Azure-abonnement.
    • Scripttype: Selecteer PowerShell Core.
    • Scriptlocatie: selecteer Inlinescript.
    • 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.

    Notitie

    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 vervolgens OK.

  2. Selecteer Release maken bovenaan de pagina.

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

  4. Als u de logboekuitvoer van de agent wilt weergeven, plaatst u de muisaanwijzer op 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 de resourcegroep en het 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

Noteer in de uitvoer van de opdracht de waarde van currentDedicatedNodes die moet worden aangepast 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 <poolName> tijdelijke aanduiding door de waarde van uw poolnaam en de <targetNumber> tijdelijke aanduiding door een getal dat groter is dan de uit de currentDedicatedNodes vorige opdrachtuitvoer. Controleer de status door de az batch pool list opdracht uit te voeren totdat het wijzigen van het formaat is voltooid en het doelaantal knooppunten wordt weergegeven.

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

Volgende stappen

Bekijk deze zelfstudies voor meer informatie over het werken met een Batch-account via een eenvoudige toepassing.