Azure Batch-Bibliotheken für .NETAzure Batch libraries for .NET

Bei Azure Batch handelt es sich um eine Plattform zum Ausführen umfangreicher paralleler und leistungsstarker Anwendungen (High Performance Computing, HPC) in der Cloud.Azure Batch is a platform service for running large-scale parallel and high-performance computing (HPC) applications efficiently in the cloud. Azure Batch plant die Ausführung rechenintensiver Aufgaben auf einer verwalteten Sammlung virtueller Computer und kann Computeressourcen automatisch skalieren, um den Anforderungen Ihrer Aufträge gerecht zu werden.Azure Batch schedules compute-intensive work to run on a managed collection of virtual machines, and can automatically scale compute resources to meet the needs of your jobs.

Mit Azure Batch definieren Sie mühelos Azure-Computeressourcen für die parallele und bedarfsorientierte Ausführung Ihrer Anwendungen.With Azure Batch, you can easily define Azure compute resources to execute your applications in parallel, and at scale. Es ist keine manuelle Erstellung, Konfiguration und Verwaltung eines HPC-Clusters, einzelner virtueller Computer, virtueller Netzwerke oder einer komplexen Infrastruktur für die Auftrags- und Aufgabenplanung erforderlich.There's no need to manually create, configure, and manage an HPC cluster, individual virtual machines, virtual networks, or a complex job and task scheduling infrastructure. Azure Batch automatisiert oder vereinfacht diese Aufgaben für Sie.Azure Batch automates or simplifies these tasks for you.

Weitere Informationen finden Sie unter Ausführen intrinsisch paralleler Workloads mit Batch.Read more about how to run intrinsically parallel workloads with Batch. Sie können sich auch über Erste Schritte zum Erstellen von Lösungen mit der Batch-Clientbibliothek für .NET informieren.You can also learn how to get started building solutions with the Batch client library for .NET. Lernen Sie auch das Verwalten von Batch-Konten und -Kontingenten mit der Batch Management-Clientbibliothek für .NET kennen.Discover how to manage Batch accounts and quotas with the Batch Management library for .NET.

ClientbibliothekClient library

Verwenden Sie die Clientbibliothek zur Ausführung paralleler Workloads mit Batch.Use the client library to run parallel workloads with Batch.

Installieren Sie das NuGet-Paket direkt über die Paket-Manager-Konsole in Visual Studio oder mit der .NET Core CLI.Install the NuGet package directly from the Visual Studio Package Manager console or with the .NET Core CLI.

Visual Studio-Paket-ManagerVisual Studio Package Manager

Install-Package Azure.Batch

.NET Core CLI.NET Core CLI

dotnet add package Azure.Batch

BeispielExample

Im folgenden Beispiel wird das Client-SDK zum Erstellen eines Auftrags in Azure Batch ausgeführt.The following example uses the client SDK to create a job to run in Azure Batch.

/*
using Microsoft.Azure.Batch.Auth;
using Microsoft.Azure.Batch;
*/
BatchSharedKeyCredentials credentials = new BatchSharedKeyCredentials(batchUrl, accountName, accountKey);
using (BatchClient batchClient = await BatchClient.OpenAsync(credentials))
{
    //set up pool specification and information along with resource files here
    JobManagerTask jobManagerTask = new JobManagerTask()
    {
        ResourceFiles = jobManagerResourceFiles,
        CommandLine = Constants.JobManagerExecutable,

        //Determines if the job should terminate when the job manager process exits.
        KillJobOnCompletion = true,
        Id = jobManagerTaskId
    };

    string jobId = Environment.GetEnvironmentVariable("USERNAME") + DateTime.UtcNow.ToString("yyyyMMdd-HHmmss");

    CloudJob unboundJob = batchClient.JobOperations.CreateJob(jobId, poolInformation);
    unboundJob.JobManagerTask = jobManagerTask;

    // now interact with the job ...
}

VerwaltungsbibliothekManagement library

Verwenden Sie die Verwaltungsbibliothek, um Batch-Konten, Kontingente und Anwendungspakete programmgesteuert zu verwalten.Use the management library to programmatically manage Batch accounts, quotas, and application packages.

Installieren Sie das NuGet-Paket direkt über die Paket-Manager-Konsole in Visual Studio oder mit der .NET Core CLI.Install the NuGet package directly from the Visual Studio Package Manager console or with the .NET Core CLI.

Visual Studio-Paket-ManagerVisual Studio Package Manager

Install-Package Microsoft.Azure.Management.Batch

.NET Core CLI.NET Core CLI

dotnet add package Microsoft.Azure.Management.Batch

BeispielExample

Im folgenden Beispiel wird das Kontingent für das Abonnement abgerufen, ein Konto erstellt und ein neuer primärer Kontoschlüssel generiert.The following example retrieves the quota for the subscription, creates an account, and regenerates the primary account key.

/*
using Microsoft.Azure.Management.Batch;
using Microsoft.Azure.Management.Batch.Models;
using Microsoft.Rest;
*/
using (BatchManagementClient batchManagementClient = new BatchManagementClient(new TokenCredentials(accessToken)))
{
    batchManagementClient.SubscriptionId = subscriptionId;

    // Get the account quota for the subscription
    BatchLocationQuota quotaResponse = await batchManagementClient.Location.GetQuotasAsync(location);
    Console.WriteLine("Your subscription can create {0} account(s) in the {1} region.", quotaResponse.AccountQuota, location);

    // Create account
    await batchManagementClient.BatchAccount.CreateAsync(ResourceGroupName, accountName, 
        new BatchAccountCreateParameters() { Location = location });

    // Regenerate primary account key
    BatchAccountKeys newKeys = await batchManagementClient.BatchAccount.RegenerateKeyAsync(
        ResourceGroupName, account.Name, AccountKeyType.Primary);
}

BeispieleSamples

Untersuchen Sie weiteren .NET-Beispielcode, den Sie in Ihren Apps verwenden können.Explore more sample .NET code you can use in your apps.