Skip to content

Commit 944a952

Browse files
authored
Merge pull request #116251 from JnHs/jh-batch-api-diff
incorporate info and cleanup
2 parents a487521 + 871a1f3 commit 944a952

File tree

3 files changed

+45
-77
lines changed

3 files changed

+45
-77
lines changed

.openpublishing.redirection.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52494,6 +52494,11 @@
5249452494
"redirect_url": "/azure/batch/error-handling",
5249552495
"redirect_document_id": false
5249652496
},
52497+
{
52498+
"source_path": "articles/batch/batch-api-differences.md",
52499+
"redirect_url": "/azure/batch/batch-apis-tools",
52500+
"redirect_document_id": false
52501+
},
5249752502
{
5249852503
"source_path": "articles/virtual-machines/troubleshooting/troubleshoot-vm-unresponsive-group-policy-local-users.md",
5249952504
"redirect_url": "/azure/virtual-machines/troubleshooting/unresponsive-vm-apply-group-policy",

articles/batch/batch-api-differences.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

articles/batch/batch-apis-tools.md

Lines changed: 40 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -2,104 +2,85 @@
22
title: APIs and tools for developers
33
description: Learn about the APIs and tools available for developing solutions with the Azure Batch service.
44
ms.topic: conceptual
5-
ms.date: 12/07/2018
5+
ms.date: 05/22/2010
66
ms.custom: seodec18
77
---
88

99

1010
# Overview of Batch APIs and tools
1111

12-
Processing parallel workloads with Azure Batch is typically done programmatically by using one of the Batch APIs. Your client application or service can use the Batch APIs to communicate with the Batch service. With the Batch APIs, you can create and manage pools of compute nodes, either virtual machines or cloud services. You can then schedule jobs and tasks to run on those nodes.
12+
Processing parallel workloads with Azure Batch is typically done programmatically by using one of the Batch APIs. Your client application or service can use the Batch APIs to communicate with the Batch service. With the Batch APIs, you can create and manage pools of compute nodes, either virtual machines or cloud services. You can then schedule jobs and tasks to run on those nodes.
1313

1414
You can efficiently process large-scale workloads for your organization, or provide a service front end to your customers so that they can run jobs and tasks--on demand, or on a schedule--on one, hundreds, or even thousands of nodes. You can also use Azure Batch as part of a larger workflow, managed by tools such as [Azure Data Factory](../data-factory/transform-data-using-dotnet-custom-activity.md?toc=%2fazure%2fbatch%2ftoc.json).
1515

1616
> [!TIP]
17-
> To learn more about the features and workflow used in Azure Batch, see [Batch service workflow and features](batch-service-workflow-features.md).
18-
>
19-
>
17+
> To learn more about the features and workflow used in Azure Batch, see [Batch service workflow and resources](batch-service-workflow-features.md).
2018
2119
## Azure accounts for Batch development
20+
2221
When you develop Batch solutions, you use the following accounts in your Azure subscription:
2322

24-
* **Batch account** - Azure Batch resources, including pools, compute nodes, jobs, and tasks, are associated with an Azure [Batch account](accounts.md). When your application makes a request against the Batch service, it authenticates the request using the Azure Batch account name, the URL of the account, and either an access key or an Azure Active Directory token. You can [create a Batch account](batch-account-create-portal.md) in the Azure portal, or programmatically.
25-
* **Storage account** - Batch includes built-in support for working with files in [Azure Storage][azure_storage]. Nearly every Batch scenario uses Azure Blob storage for staging the programs that your tasks run and the data that they process, and for the storage of output data that they generate. Each Batch account is usually associated with a corresponding storage account.
23+
- **Batch account** - Azure Batch resources, including pools, compute nodes, jobs, and tasks, are associated with an Azure [Batch account](accounts.md). When your application makes a request against the Batch service, it authenticates the request using the Azure Batch account name, the URL of the account, and either an access key or an Azure Active Directory token. You can [create a Batch account](batch-account-create-portal.md) in the Azure portal or programmatically.
24+
- **Storage account** - Batch includes built-in support for working with files in [Azure Storage](../storage/index.yml). Nearly every Batch scenario uses Azure Blob storage for staging the programs that your tasks run and the data that they process, and for the storage of output data that they generate. Each Batch account is usually associated with a corresponding storage account.
25+
26+
## Service-level and management-level APIs
27+
28+
Azure Batch has two sets of APIs, one for the service level and one for the management level. The naming is often similar, but they return different results.
29+
30+
Only actions from the management APIs are tracked in the activity log. Service level APIs bypass the Azure Resource Management layer (management.azure.com) and are not logged.
31+
32+
For example, the [Batch service API to delete a pool](https://docs.microsoft.com/rest/api/batchservice/pool/delete) is targeted directly on the batch account: `DELETE {batchUrl}/pools/{poolId}`
33+
34+
Whereas the [Batch management API to delete a pool](https://docs.microsoft.com/rest/api/batchmanagement/pool/delete) is targeted at the management.azure.com layer: `DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}`
2635

2736
## Batch service APIs
2837

2938
Your applications and services can issue direct REST API calls or use one or more of the following client libraries to run and manage your Azure Batch workloads.
3039

3140
| API | API reference | Download | Tutorial | Code samples | More Info |
3241
| --- | --- | --- | --- | --- | --- |
33-
| **Batch REST** |[docs.microsoft.com][batch_rest] |N/A |- |- | [Supported Versions](/rest/api/batchservice/batch-service-rest-api-versioning) |
34-
| **Batch .NET** |[docs.microsoft.com][api_net] |[NuGet][api_net_nuget] |[Tutorial](tutorial-parallel-dotnet.md) |[GitHub][api_sample_net] | [Release Notes](https://aka.ms/batch-net-dataplane-changelog) |
35-
| **Batch Python** |[docs.microsoft.com][api_python] |[PyPI][api_python_pypi] |[Tutorial](tutorial-parallel-python.md)|[GitHub][api_sample_python] | [Readme](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/batch/azure-batch/README.md) |
36-
| **Batch Node.js** |[docs.microsoft.com][api_nodejs] |[npm][api_nodejs_npm] |[Tutorial](batch-nodejs-get-started.md) |- | [Readme](https://github.com/Azure/azure-sdk-for-node/tree/master/lib/services/batch) |
37-
| **Batch Java** |[docs.microsoft.com][api_java] |[Maven][api_java_jar] |- |[Readme][api_sample_java] | [Readme](https://github.com/Azure/azure-batch-sdk-for-java)|
42+
| **Batch REST** |[docs.microsoft.com](https://docs.microsoft.com/rest/api/batchservice/) |N/A |- |- | [Supported versions](/rest/api/batchservice/batch-service-rest-api-versioning) |
43+
| **Batch .NET** |[docs.microsoft.com](https://docs.microsoft.com/dotnet/api/overview/azure/batch?view=azure-dotnet) |[NuGet](https://www.nuget.org/packages/Microsoft.Azure.Batch/) |[Tutorial](tutorial-parallel-dotnet.md) |[GitHub](https://github.com/Azure-Samples/azure-batch-samples/tree/master/CSharp) | [Release notes](https://aka.ms/batch-net-dataplane-changelog) |
44+
| **Batch Python** |[docs.microsoft.com](https://docs.microsoft.com/python/api/overview/azure/batch/client?view=azure-python) |[PyPI](https://pypi.org/project/azure-batch/) |[Tutorial](tutorial-parallel-python.md)|[GitHub](https://github.com/Azure-Samples/azure-batch-samples/tree/master/Python/Batch) | [Readme](https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/batch/azure-batch/README.md) |
45+
| **Batch Node.js** |[docs.microsoft.com](https://docs.microsoft.com/javascript/api/overview/azure/batch/client?view=azure-node-latest) |[npm](https://www.npmjs.com/package/azure-batch) |[Tutorial](batch-nodejs-get-started.md) |- | [Readme](https://github.com/Azure/azure-sdk-for-node/tree/master/lib/services/batch) |
46+
| **Batch Java** |[docs.microsoft.com](https://docs.microsoft.com/java/api/overview/azure/batch?view=azure-java-stable) |[Maven](https://search.maven.org/search?q=a:azure-batch) |- |[GitHub](https://github.com/Azure-Samples/azure-batch-samples/tree/master/Java) | [Readme](https://github.com/Azure/azure-batch-sdk-for-java)|
3847

3948
## Batch Management APIs
4049

4150
The Azure Resource Manager APIs for Batch provide programmatic access to Batch accounts. Using these APIs, you can programmatically manage Batch accounts, quotas, application packages, and other resources through the Microsoft.Batch provider.
4251

4352
| API | API reference | Download | Tutorial | Code samples |
4453
| --- | --- | --- | --- | --- |
45-
| **Batch Management REST** |[docs.microsoft.com][api_rest_mgmt] |N/A |- |[GitHub](https://github.com/Azure-Samples/batch-dotnet-manage-batch-accounts) |
46-
| **Batch Management .NET** |[docs.microsoft.com][api_net_mgmt] |[NuGet][api_net_mgmt_nuget] | [Tutorial](batch-management-dotnet.md) |[GitHub][api_sample_net] |
47-
| **Batch Management Python** |[docs.microsoft.com][api_python_mgmt] |[PyPI][api_python_mgmt_pypi] |- |- |
48-
| **Batch Management Node.js** |[docs.microsoft.com][api_nodejs_mgmt] |[npm][api_nodejs_mgmt_npm] |- |- |
49-
| **Batch Management Java** |- |[Maven][api_java_mgmt_jar] |- |- |
54+
| **Batch Management REST** |[docs.microsoft.com](https://docs.microsoft.com/rest/api/batchmanagement/) |- |- |[GitHub](https://github.com/Azure-Samples/batch-dotnet-manage-batch-accounts) |
55+
| **Batch Management .NET** |[docs.microsoft.com](https://docs.microsoft.com/dotnet/api/overview/azure/batch/management?view=azure-dotnet) |[NuGet](https://www.nuget.org/packages/Microsoft.Azure.Management.Batch/) | [Tutorial](batch-management-dotnet.md) |[GitHub](https://github.com/Azure-Samples/azure-batch-samples/tree/master/CSharp) |
56+
| **Batch Management Python** |[docs.microsoft.com](https://docs.microsoft.com/python/api/overview/azure/batch/management?view=azure-python) |[PyPI](https://pypi.org/project/azure-mgmt-batch/) |- |- |
57+
| **Batch Management Node.js** |[docs.microsoft.com](https://docs.microsoft.com/javascript/api/overview/azure/batch/management?view=azure-node-latest) |[npm](https://www.npmjs.com/package/azure-arm-batch) |- |- |
58+
| **Batch Management Java** |[docs.microsoft.com](https://docs.microsoft.com/java/api/overview/azure/batch/management?view=azure-java-stable) |[Maven](https://search.maven.org/search?q=a:azure-batch) |- |- |
59+
5060
## Batch command-line tools
5161

5262
These command-line tools provide the same functionality as the Batch service and Batch Management APIs:
5363

54-
* [Batch PowerShell cmdlets][batch_ps]: The Azure Batch cmdlets in the [Azure PowerShell](/powershell/azure/overview) module enable you to manage Batch resources with PowerShell.
55-
* [Azure CLI](/cli/azure): The Azure CLI is a cross-platform toolset that provides shell commands for interacting with many Azure services, including the Batch service and Batch Management service. See [Manage Batch resources with Azure CLI](batch-cli-get-started.md) for more information about using the Azure CLI with Batch.
64+
- [Batch PowerShell cmdlets](https://docs.microsoft.com/powershell/module/az.batch/): The Azure Batch cmdlets in the [Azure PowerShell](/powershell/azure/overview) module enable you to manage Batch resources with PowerShell.
65+
- [Azure CLI](/cli/azure): The Azure CLI is a cross-platform toolset that provides shell commands for interacting with many Azure services, including the Batch service and Batch Management service. See [Manage Batch resources with Azure CLI](batch-cli-get-started.md) for more information about using the Azure CLI with Batch.
5666

5767
## Other tools for application development
5868

59-
Here are some additional tools that may be helpful for building and debugging your Batch applications and services:
69+
These additional tools may be helpful for building and debugging your Batch applications and services.
6070

61-
* [Azure portal][portal]: You can create, monitor, and delete Batch pools, jobs, and tasks in the Azure portal. You can view the status information for these and other resources while you run your jobs, and even download files from the compute nodes in your pools. For example, you can download a failed task's `stderr.txt` while troubleshooting. You can also download Remote Desktop (RDP) files that you can use to log in to compute nodes.
62-
* [Azure Batch Explorer][batch_labs]: Batch Explorer (formerly called BatchLabs) is a free, rich-featured, standalone client tool to help create, debug, and monitor Azure Batch applications. Download an [installation package](https://azure.github.io/BatchExplorer/) for Mac, Linux, or Windows.
63-
* [Azure Batch Shipyard](https://github.com/Azure/batch-shipyard): Batch Shipyard is a tool to help provision, execute, and monitor container-based batch processing and HPC workloads on Azure Batch.
64-
* [Azure Storage Explorer][storage_explorer]: While not strictly an Azure Batch tool, the Storage Explorer is another valuable tool to have while you are developing and debugging your Batch solutions.
71+
- [Azure portal](https://portal.azure.com/): You can create, monitor, and delete Batch pools, jobs, and tasks in the Azure portal. You can view status information for these and other resources while you run your jobs, and even download files from the compute nodes in your pools. For example, you can download a failed task's `stderr.txt` while troubleshooting. You can also download Remote Desktop (RDP) files that you can use to log in to compute nodes.
72+
- [Azure Batch Explorer](https://azure.github.io/BatchExplorer/): Batch Explorer (formerly called BatchLabs) is a free, rich-featured, standalone client tool to help create, debug, and monitor Azure Batch applications. Download an [installation package](https://azure.github.io/BatchExplorer/) for Mac, Linux, or Windows.
73+
- [Azure Batch Shipyard](https://github.com/Azure/batch-shipyard): Batch Shipyard is a tool to help provision, execute, and monitor container-based batch processing and HPC workloads on Azure Batch.
74+
- [Azure Storage Explorer](https://azure.microsoft.com/features/storage-explorer/): While not strictly an Azure Batch tool, the Storage Explorer is another valuable tool to have while you are developing and debugging your Batch solutions.
6575

6676
## Additional resources
6777

68-
- To learn about logging events from your Batch application, see [Log events for diagnostic evaluation and monitoring of Batch solutions](batch-diagnostics.md). For a reference on events raised by the Batch service, see [Batch Analytics](batch-analytics.md).
69-
- For information about environment variables for compute nodes, see [Azure Batch compute node environment variables](batch-compute-node-environment-variables.md).
78+
- To learn about logging events from your Batch application, see [Batch metrics, alerts, and logs for diagnostic evaluation and monitoring](batch-diagnostics.md).
79+
- For reference information on events raised by the Batch service, see [Batch Analytics](batch-analytics.md).
80+
- For information about environment variables for compute nodes, see [Azure Batch runtime environment variables](batch-compute-node-environment-variables.md).
7081

7182
## Next steps
7283

73-
* Learn about the [Batch service workflow and primary resources](batch-service-workflow-features.md) such as pools, nodes, jobs, and tasks.
74-
* [Get started with the Azure Batch library for .NET](tutorial-parallel-dotnet.md) to learn how to use C# and the Batch .NET library to execute a simple workload using a common Batch workflow. A [Python version](tutorial-parallel-python.md) and a [Node.js tutorial](batch-nodejs-get-started.md) are also available.
75-
* Download the [code samples on GitHub][github_samples] to see how both C# and Python can interface with Batch to schedule and process sample workloads.
76-
77-
[azure_storage]: https://azure.microsoft.com/services/storage/
78-
[api_java]: /java/api/overview/azure/batch
79-
[api_java_mgmt]: /java/api/overview/azure/batch/managementapi
80-
[api_java_jar]: https://search.maven.org/#search%7Cga%7C1%7Ca%3A%22azure-batch%22
81-
[api_java_mgmt_jar]: https://search.maven.org/#search%7Cga%7C1%7Ca%3A%22azure-batch%22
82-
[api_net]: /dotnet/api/overview/azure/batch/
83-
[api_net_nuget]: https://www.nuget.org/packages/Microsoft.Azure.Batch/
84-
[api_rest_mgmt]: /rest/api/batchmanagement/
85-
[api_net_mgmt]: /dotnet/api/overview/azure/batch/management
86-
[api_net_mgmt_nuget]: https://www.nuget.org/packages/Microsoft.Azure.Management.Batch/
87-
[api_nodejs]: /javascript/api/overview/azure/batch/client
88-
[api_nodejs_mgmt]: /javascript/api/overview/azure/batch/management
89-
[api_nodejs_npm]: https://www.npmjs.com/package/azure-batch
90-
[api_nodejs_mgmt_npm]: https://www.npmjs.com/package/azure-arm-batch
91-
[api_python]: /python/api/overview/azure/batch/client
92-
[api_python_mgmt]: /python/api/overview/azure/batch/management
93-
[api_python_pypi]: https://pypi.python.org/pypi/azure-batch
94-
[api_python_mgmt_pypi]: https://pypi.python.org/pypi/azure-mgmt-batch
95-
[api_sample_net]: https://github.com/Azure/azure-batch-samples/tree/master/CSharp
96-
[api_sample_python]: https://github.com/Azure/azure-batch-samples/tree/master/Python/Batch
97-
[api_sample_java]: https://github.com/Azure/azure-batch-samples/tree/master/Java/
98-
[batch_ps]: /powershell/module/az.batch/
99-
[batch_rest]: /rest/api/batchservice/
100-
[free_account]: https://azure.microsoft.com/free/
101-
[github_samples]: https://github.com/Azure/azure-batch-samples
102-
[msdn_benefits]: https://azure.microsoft.com/pricing/member-offers/msdn-benefits-details/
103-
[batch_labs]: https://azure.github.io/BatchExplorer/
104-
[storage_explorer]: https://storageexplorer.com/
105-
[portal]: https://portal.azure.com
84+
- Learn about the [Batch service workflow and primary resources](batch-service-workflow-features.md) such as pools, nodes, jobs, and tasks.
85+
- [Get started with the Azure Batch library for .NET](tutorial-parallel-dotnet.md) to learn how to use C# and the Batch .NET library to execute a simple workload using a common Batch workflow. A [Python version](tutorial-parallel-python.md) and a [Node.js tutorial](batch-nodejs-get-started.md) are also available.
86+
- Download the [code samples on GitHub](https://github.com/Azure-Samples/azure-batch-samples) to see how both C# and Python can interface with Batch to schedule and process sample workloads.

0 commit comments

Comments
 (0)