適用於 Python 的 Azure Batch 程式庫Azure Batch libraries for python
概觀Overview
使用 Azure Batch 在雲端有效地執行大規模的平行和高效能計算應用程式。Run large-scale parallel and high-performance computing applications efficiently in the cloud with Azure Batch.
若要開始使用 Azure Batch,請參閱使用 Azure 入口網站建立 Batch 帳戶。To get started with Azure Batch, see Create a Batch account with the Azure portal.
安裝程式庫Install the libraries
用戶端程式庫Client library
Azure Batch 用戶端程式庫可讓您設定計算節點和集區、定義工作並將其設定為在作業中執行,以及設定作業管理員以控制和監控作業的執行。The Azure Batch client libraries let you configure compute nodes and pools, define tasks and configure them to run in jobs, and set up a job manager to control and monitor job execution. 深入了解如何使用這些物件以執行大規模的平行計算解決方案。Learn more about using these objects to run large-scale parallel compute solutions.
pip install azure-batch
範例Example
在 Batch 帳戶中設定 Linux 計算節點集區:Set up a pool of Linux compute nodes in a batch account:
# create the batch client for an account using its URI and keys
creds = batchauth.SharedKeyCredentials(account, key)
config = batch.BatchServiceClientConfiguration(creds, base_url = batch_url)
client = batch.BatchServiceClient(config)
# Create the VirtualMachineConfiguration, specifying
# the VM image reference and the Batch node agent to
# be installed on the node.
vmc = batchmodels.VirtualMachineConfiguration(
image_reference = ir,
node_agent_sku_id = "batch.node.ubuntu 14.04")
# Assign the virtual machine configuration to the pool
new_pool.virtual_machine_configuration = vmc
# Create pool in the Batch service
client.pool.add(new_pool)
管理 APIManagement API
使用 Azure Batch 管理程式庫來建立和刪除 Batch 帳戶、讀取和重新產生 Batch 帳戶金鑰,以及管理 Batch 帳戶的儲存體。Use the Azure Batch management libraries to create and delete batch accounts, read and regenerate batch account keys, and manage batch account storage.
pip install azure-mgmt-batch
範例Example
建立 Azure Batch 帳戶,並為其設定新的應用程式和 Azure 儲存體帳戶。Create an Azure Batch account and configure a new application and Azure storage account for it.
from azure.mgmt.batch import BatchManagementClient
from azure.mgmt.resource import ResourceManagementClient
from azure.mgmt.storage import StorageManagementClient
LOCATION ='eastus'
GROUP_NAME ='batchresourcegroup'
STORAGE_ACCOUNT_NAME ='batchstorageaccount'
# Create Resource group
print('Create Resource Group')
resource_client.resource_groups.create_or_update(GROUP_NAME, {'location': LOCATION})
# Create a storage account
storage_async_operation = storage_client.storage_accounts.create(
GROUP_NAME,
STORAGE_ACCOUNT_NAME,
StorageAccountCreateParameters(
sku=Sku(SkuName.standard_ragrs),
kind=Kind.storage,
location=LOCATION
)
)
storage_account = storage_async_operation.result()
# Create a Batch Account, specifying the storage account we want to link
storage_resource = storage_account.id
batch_account = azure.mgmt.batch.models.BatchAccountCreateParameters(
location=LOCATION,
auto_storage=azure.mgmt.batch.models.AutoStorageBaseProperties(storage_resource)
)
creating = batch_client.account.create('MyBatchAccount', LOCATION, batch_account)
creating.wait()