Microsoft.Batch BatchAccounts/pools 2023-11-01
Définition de ressource Bicep
Le type de ressource batchAccounts/pools peut être déployé avec des opérations qui ciblent :
- groupes de ressources - Consultez commandes de déploiement de groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.
Format de ressource
Pour créer une ressource Microsoft.Batch/batchAccounts/pools, ajoutez le bicep suivant à votre modèle.
resource symbolicname 'Microsoft.Batch/batchAccounts/pools@2023-11-01' = {
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
name: 'string'
properties: {
applicationLicenses: [
'string'
]
applicationPackages: [
{
id: 'string'
version: 'string'
}
]
certificates: [
{
id: 'string'
storeLocation: 'string'
storeName: 'string'
visibility: [
'string'
]
}
]
deploymentConfiguration: {
cloudServiceConfiguration: {
osFamily: 'string'
osVersion: 'string'
}
virtualMachineConfiguration: {
containerConfiguration: {
containerImageNames: [
'string'
]
containerRegistries: [
{
identityReference: {
resourceId: 'string'
}
password: 'string'
registryServer: 'string'
username: 'string'
}
]
type: 'string'
}
dataDisks: [
{
caching: 'string'
diskSizeGB: int
lun: int
storageAccountType: 'string'
}
]
diskEncryptionConfiguration: {
targets: [
'string'
]
}
extensions: [
{
autoUpgradeMinorVersion: bool
enableAutomaticUpgrade: bool
name: 'string'
protectedSettings: any(Azure.Bicep.Types.Concrete.AnyType)
provisionAfterExtensions: [
'string'
]
publisher: 'string'
settings: any(Azure.Bicep.Types.Concrete.AnyType)
type: 'string'
typeHandlerVersion: 'string'
}
]
imageReference: {
id: 'string'
offer: 'string'
publisher: 'string'
sku: 'string'
version: 'string'
}
licenseType: 'string'
nodeAgentSkuId: 'string'
nodePlacementConfiguration: {
policy: 'string'
}
osDisk: {
caching: 'string'
diskSizeGB: int
ephemeralOSDiskSettings: {
placement: 'CacheDisk'
}
managedDisk: {
storageAccountType: 'string'
}
writeAcceleratorEnabled: bool
}
securityProfile: {
encryptionAtHost: bool
securityType: 'trustedLaunch'
uefiSettings: {
secureBootEnabled: bool
vTpmEnabled: bool
}
}
serviceArtifactReference: {
id: 'string'
}
windowsConfiguration: {
enableAutomaticUpdates: bool
}
}
}
displayName: 'string'
interNodeCommunication: 'string'
metadata: [
{
name: 'string'
value: 'string'
}
]
mountConfiguration: [
{
azureBlobFileSystemConfiguration: {
accountKey: 'string'
accountName: 'string'
blobfuseOptions: 'string'
containerName: 'string'
identityReference: {
resourceId: 'string'
}
relativeMountPath: 'string'
sasKey: 'string'
}
azureFileShareConfiguration: {
accountKey: 'string'
accountName: 'string'
azureFileUrl: 'string'
mountOptions: 'string'
relativeMountPath: 'string'
}
cifsMountConfiguration: {
mountOptions: 'string'
password: 'string'
relativeMountPath: 'string'
source: 'string'
userName: 'string'
}
nfsMountConfiguration: {
mountOptions: 'string'
relativeMountPath: 'string'
source: 'string'
}
}
]
networkConfiguration: {
dynamicVnetAssignmentScope: 'string'
enableAcceleratedNetworking: bool
endpointConfiguration: {
inboundNatPools: [
{
backendPort: int
frontendPortRangeEnd: int
frontendPortRangeStart: int
name: 'string'
networkSecurityGroupRules: [
{
access: 'string'
priority: int
sourceAddressPrefix: 'string'
sourcePortRanges: [
'string'
]
}
]
protocol: 'string'
}
]
}
publicIPAddressConfiguration: {
ipAddressIds: [
'string'
]
provision: 'string'
}
subnetId: 'string'
}
resourceTags: {
{customized property}: 'string'
}
scaleSettings: {
autoScale: {
evaluationInterval: 'string'
formula: 'string'
}
fixedScale: {
nodeDeallocationOption: 'string'
resizeTimeout: 'string'
targetDedicatedNodes: int
targetLowPriorityNodes: int
}
}
startTask: {
commandLine: 'string'
containerSettings: {
containerRunOptions: 'string'
imageName: 'string'
registry: {
identityReference: {
resourceId: 'string'
}
password: 'string'
registryServer: 'string'
username: 'string'
}
workingDirectory: 'string'
}
environmentSettings: [
{
name: 'string'
value: 'string'
}
]
maxTaskRetryCount: int
resourceFiles: [
{
autoStorageContainerName: 'string'
blobPrefix: 'string'
fileMode: 'string'
filePath: 'string'
httpUrl: 'string'
identityReference: {
resourceId: 'string'
}
storageContainerUrl: 'string'
}
]
userIdentity: {
autoUser: {
elevationLevel: 'string'
scope: 'string'
}
userName: 'string'
}
waitForSuccess: bool
}
targetNodeCommunicationMode: 'string'
taskSchedulingPolicy: {
nodeFillType: 'string'
}
taskSlotsPerNode: int
userAccounts: [
{
elevationLevel: 'string'
linuxUserConfiguration: {
gid: int
sshPrivateKey: 'string'
uid: int
}
name: 'string'
password: 'string'
windowsUserConfiguration: {
loginMode: 'string'
}
}
]
vmSize: 'string'
}
}
Valeurs de propriété
ApplicationPackageReference
Nom | Description | Valeur |
---|---|---|
id | ID du package d’application à installer. Cela doit se trouver dans le même compte batch que le pool. Il peut s’agir d’une référence à une version spécifique ou à la version par défaut s’il en existe une. | chaîne (obligatoire) |
Version | Si cela est omis et qu’aucune version par défaut n’est spécifiée pour cette application, la requête échoue avec le code d’erreur InvalidApplicationPackageReferences. Si vous appelez directement l’API REST, le code d’état HTTP est 409. | corde |
AutoScaleSettings
Nom | Description | Valeur |
---|---|---|
evaluationInterval | Si elle est omise, la valeur par défaut est de 15 minutes (PT15M). | corde |
formule | Formule pour le nombre souhaité de nœuds de calcul dans le pool. | chaîne (obligatoire) |
AutoUserSpecification
Nom | Description | Valeur |
---|---|---|
elevationLevel | La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
portée | La valeur par défaut est Pool. Si le pool exécute Windows, une valeur de tâche doit être spécifiée si une isolation plus stricte entre les tâches est requise. Par exemple, si la tâche mute le Registre d’une manière qui peut avoir un impact sur d’autres tâches ou si des certificats ont été spécifiés sur le pool qui ne doit pas être accessible par les tâches normales, mais qu’elles doivent être accessibles par les tâches de démarrage. | 'Pool' 'Task' |
AzureBlobFileSystemConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Cette propriété s’exclue mutuellement avec sasKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
accountName | Nom du compte de stockage Azure. | chaîne (obligatoire) |
blobfuseOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
containerName | Nom du conteneur stockage Blob Azure. | chaîne (obligatoire) |
identityReference | Cette propriété s’exclue mutuellement avec accountKey et sasKey ; exactement un doit être spécifié. | ComputeNodeIdentityReference |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
sasKey | Cette propriété s’exclue mutuellement avec accountKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
AzureFileShareConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Clé du compte stockage Azure. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
accountName | Nom du compte stockage Azure. | chaîne (obligatoire) |
azureFileUrl | Il s’agit de la forme « https://{account}.file.core.windows.net/ ». | chaîne (obligatoire) |
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
BatchPoolIdentity
Nom | Description | Valeur |
---|---|---|
type | Type d’identité utilisé pour le pool Batch. | 'None' 'UserAssigned' (obligatoire) |
userAssignedIdentities | Liste des identités utilisateur associées au pool Batch. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
Nom | Description | Valeur |
---|
CertificateReference
Nom | Description | Valeur |
---|---|---|
id | ID complet du certificat à installer sur le pool. Cela doit se trouver dans le même compte batch que le pool. | chaîne (obligatoire) |
storeLocation | La valeur par défaut est currentUser. Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. | 'CurrentUser' 'LocalMachine' |
storeName | Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Les noms de magasin courants sont : My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, mais tout nom de magasin personnalisé peut également être utilisé. La valeur par défaut est My. | corde |
visibilité | Quels comptes d’utilisateur sur le nœud de calcul doivent avoir accès aux données privées du certificat. | Tableau de chaînes contenant l’un des éléments suivants : 'RemoteUser' 'StartTask' 'Task' |
CifsMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
mot de passe | Mot de passe à utiliser pour l’authentification auprès du système de fichiers CIFS. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
nom d’utilisateur | Utilisateur à utiliser pour l’authentification auprès du système de fichiers CIFS. | chaîne (obligatoire) |
CloudServiceConfiguration
Nom | Description | Valeur |
---|---|---|
osFamily | Les valeurs possibles sont : 2 - Famille de système d’exploitation 2, équivalente à Windows Server 2008 R2 SP1. 3 - Famille de systèmes d’exploitation 3, équivalent à Windows Server 2012. 4 - Famille de système d’exploitation 4, équivalente à Windows Server 2012 R2. 5 - Famille de systèmes d’exploitation 5, équivalent à Windows Server 2016. 6 - Famille de systèmes d’exploitation 6, équivalent à Windows Server 2019. Pour plus d’informations, consultez Versions du système d’exploitation invité Azure (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). | chaîne (obligatoire) |
osVersion | La valeur par défaut est * qui spécifie la dernière version du système d’exploitation pour la famille de systèmes d’exploitation spécifiée. | corde |
ComputeNodeIdentityReference
Nom | Description | Valeur |
---|---|---|
resourceId | ID de ressource ARM de l’identité affectée par l’utilisateur. | corde |
ContainerConfiguration
Nom | Description | Valeur |
---|---|---|
containerImageNames | Il s’agit de la référence d’image complète, comme indiqué dans « docker pull ». Une image est source du registre Docker par défaut, sauf si l’image est entièrement qualifiée avec un autre registre. | string[] |
containerRegistries | Si des images doivent être téléchargées à partir d’un registre privé qui nécessite des informations d’identification, ces informations d’identification doivent être fournies ici. | ContainerRegistry[] |
type | Technologie de conteneur à utiliser. | 'CriCompatible' 'DockerCompatible' (obligatoire) |
ContainerRegistry
Nom | Description | Valeur |
---|---|---|
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
mot de passe | Mot de passe pour vous connecter au serveur de Registre. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
registryServer | S’il est omis, la valeur par défaut est « docker.io ». | corde |
nom d’utilisateur | Nom d’utilisateur à connecter au serveur de Registre. | corde |
DataDisk
Nom | Description | Valeur |
---|---|---|
Cache | Les valeurs sont les suivantes : none : le mode de mise en cache du disque n’est pas activé. readOnly : le mode de mise en cache du disque est en lecture seule. readWrite : le mode de mise en cache du disque est en lecture et en écriture. La valeur par défaut de la mise en cache n’est pas. Pour plus d’informations sur les options de mise en cache, consultez : https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de données. | int (obligatoire) |
lun | Le lun est utilisé pour identifier de manière unique chaque disque de données. Si vous attachez plusieurs disques, chacun doit avoir un lun distinct. La valeur doit être comprise entre 0 et 63, inclus. | int (obligatoire) |
storageAccountType | S’il est omis, la valeur par défaut est « Standard_LRS ». Les valeurs sont les suivantes : Standard_LRS : le disque de données doit utiliser un stockage standard localement redondant. Premium_LRS : le disque de données doit utiliser un stockage premium localement redondant. |
'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
DeploymentConfiguration
Nom | Description | Valeur |
---|---|---|
cloudServiceConfiguration | Cette propriété et virtualMachineConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. Cette propriété ne peut pas être spécifiée si le compte Batch a été créé avec sa propriété poolAllocationMode définie sur « UserSubscription ». | cloudServiceConfiguration |
virtualMachineConfiguration | Cette propriété et cloudServiceConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. | VirtualMachineConfiguration |
DiffDiskSettings
Nom | Description | Valeur |
---|---|---|
placement | Cette propriété peut être utilisée par l’utilisateur dans la demande pour choisir l’emplacement dans lequel le système d’exploitation doit se trouver. Par exemple, cachez l’espace disque pour l’approvisionnement de disque de système d’exploitation éphémère. Pour plus d’informations sur les exigences de taille de disque de système d’exploitation éphémère, reportez-vous aux exigences de taille de disque du système d’exploitation éphémère pour les machines virtuelles Windows sur /azure/virtual-machines/windows/ephemeral-os-disks#size-requirements et les machines virtuelles Linux sur /azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. | 'CacheDisk' |
DiskEncryptionConfiguration
Nom | Description | Valeur |
---|---|---|
Cibles | Sur le pool Linux, seul « TemporaryDisk » est pris en charge ; sur le pool Windows, « OsDisk » et « TemporaryDisk » doivent être spécifiés. | Tableau de chaînes contenant l’un des éléments suivants : 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
Nom | Description | Valeur |
---|---|---|
nom | Nom de la variable d’environnement. | chaîne (obligatoire) |
valeur | Valeur de la variable d’environnement. | corde |
FixedScaleSettings
Nom | Description | Valeur |
---|---|---|
nodeDeallocationOption | Si elle est omise, la valeur par défaut est Requeue. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | La valeur par défaut est de 15 minutes. Les valeurs de délai d’expiration utilisent le format ISO 8601. Par exemple, utilisez PT10M pendant 10 minutes. La valeur minimale est de 5 minutes. Si vous spécifiez une valeur inférieure à 5 minutes, le service Batch rejette la demande avec une erreur ; si vous appelez directement l’API REST, le code d’état HTTP est 400 (requête incorrecte). | corde |
targetDedicatedNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
targetLowPriorityNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
ImageReference
Nom | Description | Valeur |
---|---|---|
id | Cette propriété s’exclue mutuellement avec d’autres propriétés. L’image de la galerie de calcul Azure doit avoir des réplicas dans la même région que le compte Azure Batch. Pour plus d’informations sur les paramètres de pare-feu de l’agent de nœud Batch pour communiquer avec le service Batch, consultez /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. | corde |
offrir | Par exemple, UbuntuServer ou WindowsServer. | corde |
éditeur | Par exemple, Canonical ou MicrosoftWindowsServer. | corde |
Sku | Par exemple, 18.04-LTS ou 2022-datacenter. | corde |
Version | Vous pouvez spécifier la valeur « latest » pour sélectionner la dernière version d’une image. S’il est omis, la valeur par défaut est « latest ». | corde |
InboundNatPool
Nom | Description | Valeur |
---|---|---|
backendPort | Cela doit être unique dans un pool Batch. Les valeurs acceptables sont comprises entre 1 et 65535, à l’exception de 22, 3389, 29876 et 29877, car elles sont réservées. Si des valeurs réservées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeEnd | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 5 000 et 55 000, qui sont réservés par le service Batch. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeStart | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 50000 et 55000, qui sont réservés. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
nom | Le nom doit être unique dans un pool Batch, peut contenir des lettres, des chiffres, des traits de soulignement, des points et des traits d’union. Les noms doivent commencer par une lettre ou un nombre, doivent se terminer par une lettre, un nombre ou un trait de soulignement, et ne peuvent pas dépasser 77 caractères. Si des valeurs non valides sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
networkSecurityGroupRules | Le nombre maximal de règles qui peuvent être spécifiées sur tous les points de terminaison d’un pool Batch est de 25. Si aucune règle de groupe de sécurité réseau n’est spécifiée, une règle par défaut est créée pour autoriser l’accès entrant au backendPort spécifié. Si le nombre maximal de règles de groupe de sécurité réseau est dépassé, la requête échoue avec le code d’état HTTP 400. | NetworkSecurityGroupRule[] |
protocole | Protocole du point de terminaison. | 'TCP' 'UDP' (obligatoire) |
LinuxUserConfiguration
Nom | Description | Valeur |
---|---|---|
Gid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. Si le système d’exploitation sous-jacent n’est pas spécifié, le gid est sélectionné. | Int |
sshPrivateKey | La clé privée ne doit pas être protégée par mot de passe. La clé privée est utilisée pour configurer automatiquement l’authentification basée sur une clé asymétrique pour SSH entre les nœuds d’un pool Linux lorsque la propriété enableInterNodeCommunication du pool est true (elle est ignorée si enableInterNodeCommunication est false). Pour ce faire, placez la paire de clés dans le répertoire .ssh de l’utilisateur. S’il n’est pas spécifié, ssh sans mot de passe n’est pas configuré entre les nœuds (aucune modification du répertoire .ssh de l’utilisateur est effectuée). | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Uid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. S’il n’est pas spécifié, le système d’exploitation sous-jacent sélectionne l’interface utilisateur. | Int |
ManagedDisk
Nom | Description | Valeur |
---|---|---|
storageAccountType | Type de compte de stockage à utiliser pour créer des disques de données ou un disque de système d’exploitation. | 'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
MetadataItem
Nom | Description | Valeur |
---|---|---|
nom | Nom de l’élément de métadonnées. | chaîne (obligatoire) |
valeur | Valeur de l’élément de métadonnées. | chaîne (obligatoire) |
Microsoft.Batch/batchAccounts/pools
Nom | Description | Valeur |
---|---|---|
identité | Type d’identité utilisé pour le pool Batch. | BatchPoolIdentity |
nom | Nom de la ressource | corde Contraintes: Longueur minimale = 1 Longueur maximale = 1 Modèle = ^[a-zA-Z0-9_-]+$ (obligatoire) |
parent | Dans Bicep, vous pouvez spécifier la ressource parente d’une ressource enfant. Vous devez uniquement ajouter cette propriété lorsque la ressource enfant est déclarée en dehors de la ressource parente. Pour plus d’informations, consultez ressource enfant en dehors de la ressource parente. |
Nom symbolique de la ressource de type : batchAccounts |
Propriétés | Propriétés associées au pool. | PoolProperties |
MountConfiguration
Nom | Description | Valeur |
---|---|---|
azureBlobFileSystemConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureFileShareConfiguration |
cifsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | CifsMountConfiguration |
nfsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | NFSMountConfiguration |
NetworkConfiguration
Nom | Description | Valeur |
---|---|---|
dynamicVnetAssignmentScope | Étendue de l’attribution de réseau virtuel dynamique. | 'job' 'none' |
enableAcceleratedNetworking | La mise en réseau accélérée permet une virtualisation d’E/S racine unique (SR-IOV) vers une machine virtuelle, ce qui peut entraîner une amélioration des performances réseau. Pour plus d’informations, consultez : /azure/virtual-network/accelerated-networking-overview. | Bool |
endpointConfiguration | La configuration du point de terminaison de pool est prise en charge uniquement sur les pools avec la propriété virtualMachineConfiguration. | PoolEndpointConfiguration |
publicIPAddressConfiguration | Cette propriété est uniquement prise en charge sur les pools avec la propriété virtualMachineConfiguration. | publicIPAddressConfiguration |
subnetId | Le réseau virtuel doit se trouver dans la même région et dans le même abonnement que le compte Azure Batch. Le sous-réseau spécifié doit avoir suffisamment d’adresses IP libres pour prendre en charge le nombre de nœuds dans le pool. Si le sous-réseau n’a pas suffisamment d’adresses IP gratuites, le pool alloue partiellement des nœuds de calcul et une erreur de redimensionnement se produit. Le principal de service « MicrosoftAzureBatch » doit avoir le rôle « Contributeur de machine virtuelle classique » Role-Based Contrôle d’accès (RBAC) pour le réseau virtuel spécifié. Le sous-réseau spécifié doit autoriser la communication du service Azure Batch à planifier des tâches sur les nœuds de calcul. Cela peut être vérifié en vérifiant si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés. Si la communication aux nœuds de calcul dans le sous-réseau spécifié est refusée par un groupe de sécurité réseau, le service Batch définit l’état des nœuds de calcul sur inutilisable. Si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés, quelques ports système réservés doivent être activés pour la communication entrante. Pour les pools créés avec une configuration de machine virtuelle, activez les ports 29876 et 29877, ainsi que le port 22 pour Linux et le port 3389 pour Windows. Pour les pools créés avec une configuration de service cloud, activez les ports 10100, 20100 et 30100. Activez également les connexions sortantes au stockage Azure sur le port 443. Pour les pools cloudServiceConfiguration, seuls les réseaux virtuels « classiques » sont pris en charge. Pour plus d’informations, consultez : /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | corde |
NetworkSecurityGroupRule
Nom | Description | Valeur |
---|---|---|
accès | Action qui doit être effectuée pour une adresse IP, une plage de sous-réseaux ou une balise spécifiée. | 'Autoriser' 'Deny' (obligatoire) |
priorité | Les priorités au sein d’un pool doivent être uniques et sont évaluées par ordre de priorité. Plus le nombre est faible, plus la priorité est élevée. Par exemple, les règles peuvent être spécifiées avec des numéros de commande de 150, 250 et 350. La règle avec le numéro d’ordre de 150 est prioritaire sur la règle dont l’ordre est de 250. Les priorités autorisées sont de 150 à 4096. Si des valeurs réservées ou dupliquées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
sourceAddressPrefix | Les valeurs valides sont une seule adresse IP (c’est-à-dire 10.10.10.10), un sous-réseau IP (par exemple, 192.168.1.0/24), une balise par défaut ou * (pour toutes les adresses). Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
sourcePortRanges | Les valeurs valides sont « * » (pour tous les ports 0 - 65535) ou des tableaux de ports ou plages de ports (c’est-à-dire 100-200). Les ports doivent se trouver dans la plage de 0 à 65535 et les plages de ports ou ports ne peuvent pas se chevaucher. Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. La valeur par défaut est *. | string[] |
NFSMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
NodePlacementConfiguration
Nom | Description | Valeur |
---|---|---|
politique | Stratégie d’allocation utilisée par le service Batch pour approvisionner les nœuds. S’il n’est pas spécifié, Batch utilise la stratégie régionale. | 'Régional' 'Zonal' |
OSDisk
Nom | Description | Valeur |
---|---|---|
Cache | Type de mise en cache à activer pour le disque. | 'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de système d’exploitation. | Int |
ephemeralOSDiskSettings | Spécifie les paramètres de disque éphémères pour le disque du système d’exploitation utilisé par la machine virtuelle. | DiffDiskSettings |
managedDisk | ManagedDisk | |
writeAcceleratorEnabled | Spécifie si writeAccelerator doit être activé ou désactivé sur le disque. | Bool |
PoolEndpointConfiguration
Nom | Description | Valeur |
---|---|---|
inboundNatPools | Le nombre maximal de pools NAT entrants par pool Batch est de 5. Si le nombre maximal de pools NAT entrants est dépassé, la requête échoue avec le code d’état HTTP 400. Cela ne peut pas être spécifié si IPAddressProvisioningType est NoPublicIPAddresses. | inboundNatPool[] (obligatoire) |
PoolProperties
Nom | Description | Valeur |
---|---|---|
applicationLicenses | La liste des licences d’application doit être un sous-ensemble de licences d’application de service Batch disponibles. Si une licence n’est pas prise en charge, la création du pool échoue. | string[] |
applicationPackages | Les modifications apportées aux références de package d’application affectent tous les nouveaux nœuds de calcul qui rejoignent le pool, mais n’affectent pas les nœuds de calcul qui se trouvent déjà dans le pool tant qu’ils ne sont pas redémarrés ou réimages. Il existe au maximum 10 références de package d’application sur un pool donné. | applicationPackageReference[] |
Certificats | Pour les nœuds de calcul Windows, le service Batch installe les certificats dans le magasin de certificats et l’emplacement spécifiés. Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. Avertissement : cette propriété est déconseillée et sera supprimée après février 2024. Utilisez plutôt l''extension Azure KeyVault. |
CertificateReference[] |
deploymentConfiguration | L’utilisation de CloudServiceConfiguration spécifie que les nœuds doivent être créés à l’aide d’Azure Cloud Services (PaaS), tandis que VirtualMachineConfiguration utilise des machines virtuelles Azure (IaaS). | DeploymentConfiguration |
displayName | Le nom complet n’a pas besoin d’être unique et peut contenir des caractères Unicode pouvant atteindre une longueur maximale de 1024. | corde |
interNodeCommunication | Cela impose des restrictions sur les nœuds qui peuvent être affectés au pool. L’activation de cette valeur peut réduire le nombre de nœuds demandé à allouer dans le pool. Si elle n’est pas spécifiée, cette valeur est définie par défaut sur « Disabled ». | 'Désactivé' 'Activé' |
métadonnées | Le service Batch n’affecte aucune signification aux métadonnées ; il s’agit uniquement de l’utilisation du code utilisateur. | MetadataItem[] |
mountConfiguration | Cela prend en charge Azure Files, NFS, CIFS/SMB et Blobfuse. | MountConfiguration[] |
networkConfiguration | Configuration réseau d’un pool. | networkConfiguration |
resourceTags | Balises définies par l’utilisateur à associer au pool Azure Batch. Quand elles sont spécifiées, ces balises sont propagées aux ressources Azure de stockage associées au pool. Cette propriété ne peut être spécifiée que lorsque le compte Batch a été créé avec la propriété poolAllocationMode définie sur « UserSubscription ». | PoolPropertiesResourceTags |
scaleSettings | Définit la taille souhaitée du pool. Il peut s’agir de « fixedScale » où les targetDedicatedNodes demandés sont spécifiés, ou « autoScale » qui définit une formule qui est régulièrement réévaluée. Si cette propriété n’est pas spécifiée, le pool aura une échelle fixe avec 0 targetDedicatedNodes. | scaleSettings |
startTask | Dans une opération PATCH (mise à jour), cette propriété peut être définie sur un objet vide pour supprimer la tâche de démarrage du pool. | startTask |
targetNodeCommunicationMode | Si elle est omise, la valeur par défaut est Default. | 'Classique' 'Default' 'Simplifié' |
taskSchedulingPolicy | S’il n’est pas spécifié, la valeur par défaut est répartie. | TaskSchedulingPolicy |
taskSlotsPerNode | La valeur par défaut est 1. La valeur maximale est la plus petite de 4 fois le nombre de cœurs de la vmSize du pool ou 256. | Int |
userAccounts | Liste des comptes d’utilisateur à créer sur chaque nœud du pool. | UserAccount[] |
vmSize | Pour plus d’informations sur les tailles disponibles de machines virtuelles pour les pools de services cloud (pools créés avec cloudServiceConfiguration), consultez Tailles pour les services cloud (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch prend en charge toutes les tailles de machine virtuelle cloud Services, à l’exception d’ExtraSmall. Pour plus d’informations sur les tailles de machines virtuelles disponibles pour les pools utilisant des images de la Place de marché des machines virtuelles (pools créés avec virtualMachineConfiguration) consultez Tailles pour les machines virtuelles (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) ou tailles pour les machines virtuelles (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch prend en charge toutes les tailles de machine virtuelle Azure, à l’exception des STANDARD_A0 et celles avec stockage Premium (STANDARD_GS, STANDARD_DS et série STANDARD_DSV2). | corde |
PoolPropertiesResourceTags
Nom | Description | Valeur |
---|
PublicIPAddressConfiguration
Nom | Description | Valeur |
---|---|---|
ipAddressIds | Le nombre d’adresses IP spécifiées ici limite la taille maximale du pool - 100 nœuds dédiés ou 100 nœuds Spot/basse priorité peuvent être alloués pour chaque adresse IP publique. Par exemple, un pool nécessitant 250 machines virtuelles dédiées aurait besoin d’au moins 3 adresses IP publiques spécifiées. Chaque élément de cette collection est de la forme : /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}. | string[] |
disposition | La valeur par défaut est BatchManaged | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
Nom | Description | Valeur |
---|---|---|
autoStorageContainerName | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. | corde |
blobPrefix | La propriété est valide uniquement lorsque autoStorageContainerName ou storageContainerUrl est utilisé. Ce préfixe peut être un nom de fichier partiel ou un sous-répertoire. Si aucun préfixe n’est spécifié, tous les fichiers du conteneur sont téléchargés. | corde |
fileMode | Cette propriété s’applique uniquement aux fichiers téléchargés sur des nœuds de calcul Linux. Il sera ignoré s’il est spécifié pour un resourceFile qui sera téléchargé sur un nœud Windows. Si cette propriété n’est pas spécifiée pour un nœud Linux, la valeur par défaut 0770 est appliquée au fichier. | corde |
filePath | Si la propriété httpUrl est spécifiée, filePath est requis et décrit le chemin vers lequel le fichier sera téléchargé, y compris le nom de fichier. Sinon, si la propriété autoStorageContainerName ou storageContainerUrl est spécifiée, filePath est facultatif et est le répertoire dans lequel télécharger les fichiers. Dans le cas où filePath est utilisé comme répertoire, toute structure de répertoires déjà associée aux données d’entrée sera conservée dans son intégralité et ajoutée au répertoire filePath spécifié. Le chemin d’accès relatif spécifié ne peut pas décomposer le répertoire de travail de la tâche (par exemple à l’aide de '..'). | corde |
httpUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Si l’URL pointe vers stockage Blob Azure, elle doit être lisible à partir de nœuds de calcul. Il existe trois façons d’obtenir cette URL pour un objet blob dans le stockage Azure : incluez une signature d’accès partagé (SAP) accordant des autorisations de lecture sur l’objet blob, utilisez une identité managée avec une autorisation de lecture ou définissez la liste de contrôle d’accès pour l’objet blob ou son conteneur afin d’autoriser l’accès public. | corde |
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
storageContainerUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Cette URL doit être lisible et listable à partir de nœuds de calcul. Il existe trois façons d’obtenir une telle URL pour un conteneur dans le stockage Azure : inclure une signature d’accès partagé (SAP) accordant des autorisations de lecture et de liste sur le conteneur, utiliser une identité managée avec des autorisations de lecture et de liste, ou définir la liste de contrôle d’accès pour le conteneur afin d’autoriser l’accès public. | corde |
ScaleSettings
Nom | Description | Valeur |
---|---|---|
mise à l’échelle automatique | Cette propriété et fixedScale s’excluent mutuellement et l’une des propriétés doit être spécifiée. | AutoScaleSettings |
fixedScale | Cette propriété et cette mise à l’échelle automatique sont mutuellement exclusives et l’une des propriétés doit être spécifiée. | fixedScaleSettings |
SecurityProfile
Nom | Description | Valeur |
---|---|---|
encryptionAtHost | Cette propriété peut être utilisée par l’utilisateur dans la demande pour activer ou désactiver le chiffrement de l’hôte pour la machine virtuelle ou le groupe de machines virtuelles identiques. Cela active le chiffrement pour tous les disques, y compris le disque Resource/Temp sur l’hôte lui-même. | Bool |
securityType | Spécifie le SecurityType de la machine virtuelle. Il doit être défini sur n’importe quelle valeur spécifiée pour activer UefiSettings. | 'trustedLaunch' |
uefiSettings | Spécifie les paramètres de sécurité tels que le démarrage sécurisé et vTPM utilisés lors de la création de la machine virtuelle. | UefiSettings |
ServiceArtifactReference
Nom | Description | Valeur |
---|---|---|
id | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | chaîne (obligatoire) |
StartTask
Nom | Description | Valeur |
---|---|---|
commandLine | La ligne de commande ne s’exécute pas sous un interpréteur de commandes et ne peut donc pas tirer parti des fonctionnalités de l’interpréteur de commandes telles que l’extension de variable d’environnement. Si vous souhaitez tirer parti de ces fonctionnalités, vous devez appeler l’interpréteur de commandes dans la ligne de commande, par exemple en utilisant « cmd /c MyCommand » dans Windows ou « /bin/sh -c MyCommand » dans Linux. Obligatoire si d’autres propriétés de startTask sont spécifiées. | corde |
containerSettings | Lorsque cela est spécifié, tous les répertoires sont récursifs sous la AZ_BATCH_NODE_ROOT_DIR (la racine des répertoires Azure Batch sur le nœud) sont mappés dans le conteneur, toutes les variables d’environnement de tâche sont mappées dans le conteneur et la ligne de commande de tâche est exécutée dans le conteneur. | TaskContainerSettings |
environmentSettings | Liste des paramètres de variable d’environnement pour la tâche de démarrage. | EnvironmentSetting[] |
maxTaskRetryCount | Le service Batch retente une tâche si son code de sortie n’est pas différent de zéro. Notez que cette valeur contrôle spécifiquement le nombre de nouvelles tentatives. Le service Batch essaie la tâche une fois, puis peut réessayer jusqu’à cette limite. Par exemple, si le nombre maximal de nouvelles tentatives est égal à 3, Batch tente la tâche jusqu’à 4 fois (une tentative initiale et 3 nouvelles tentatives). Si le nombre maximal de nouvelles tentatives est égal à 0, le service Batch ne réessaye pas la tâche. Si le nombre maximal de nouvelles tentatives est -1, le service Batch retente la tâche sans limite. La valeur par défaut est 0 | Int |
resourceFiles | Liste des fichiers que le service Batch télécharge sur le nœud de calcul avant d’exécuter la ligne de commande. | ResourceFile[] |
userIdentity | Si elle est omise, la tâche s’exécute en tant qu’utilisateur non administratif unique à la tâche. | userIdentity |
waitForSuccess | Si la valeur est true et que la tâche de démarrage échoue sur un nœud de calcul, le service Batch retente la tâche de démarrage jusqu’à son nombre maximal de nouvelles tentatives (maxTaskRetryCount). Si la tâche n’est toujours pas terminée après toutes les nouvelles tentatives, le service Batch marque le nœud de calcul inutilisable et ne planifie pas les tâches. Cette condition peut être détectée via l’état du nœud et la planification des détails d’erreur. Si la valeur est false, le service Batch n’attend pas la fin de la tâche de démarrage. Dans ce cas, d’autres tâches peuvent commencer à s’exécuter sur le nœud de calcul pendant que la tâche de démarrage est toujours en cours d’exécution ; et même si la tâche de démarrage échoue, les nouvelles tâches continueront d’être planifiées sur le nœud. La valeur par défaut est true. | Bool |
TaskContainerSettings
TaskSchedulingPolicy
Nom | Description | Valeur |
---|---|---|
nodeFillType | Comment les tâches doivent être distribuées entre les nœuds de calcul. | 'Pack' 'Spread' (obligatoire) |
UefiSettings
Nom | Description | Valeur |
---|---|---|
secureBootEnabled | Spécifie si le démarrage sécurisé doit être activé sur la machine virtuelle. | Bool |
vTpmEnabled | Spécifie si vTPM doit être activé sur la machine virtuelle. | Bool |
UserAccount
Nom | Description | Valeur |
---|---|---|
elevationLevel | nonAdmin : l’utilisateur automatique est un utilisateur standard sans accès élevé. administrateur : l’utilisateur automatique est un utilisateur disposant d’un accès élevé et fonctionne avec des autorisations d’administrateur complètes. La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Cette propriété est ignorée si elle est spécifiée sur un pool Windows. S’il n’est pas spécifié, l’utilisateur est créé avec les options par défaut. | LinuxUserConfiguration |
nom | Nom du compte d’utilisateur. Les noms peuvent contenir n’importe quel caractère Unicode jusqu’à une longueur maximale de 20. | chaîne (obligatoire) |
mot de passe | Mot de passe du compte d’utilisateur. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
windowsUserConfiguration | Cette propriété ne peut être spécifiée que si l’utilisateur se trouve sur un pool Windows. S’il n’est pas spécifié et sur un pool Windows, l’utilisateur est créé avec les options par défaut. | windowsUserConfiguration |
UserAssignedIdentities
Nom | Description | Valeur |
---|
UserIdentity
VirtualMachineConfiguration
Nom | Description | Valeur |
---|---|---|
containerConfiguration | Si elle est spécifiée, le programme d’installation est effectué sur chaque nœud du pool pour permettre l’exécution des tâches dans des conteneurs. Toutes les tâches régulières et les tâches du gestionnaire de travaux s’exécutent sur ce pool doivent spécifier la propriété containerSettings, et toutes les autres tâches peuvent la spécifier. | ContainerConfiguration |
dataDisks | Cette propriété doit être spécifiée si les nœuds de calcul du pool doivent avoir des disques de données vides attachés. | DataDisk[] |
diskEncryptionConfiguration | Si spécifié, le chiffrement est effectué sur chaque nœud du pool pendant l’approvisionnement de nœuds. | DiskEncryptionConfiguration |
Extensions | Si elle est spécifiée, les extensions mentionnées dans cette configuration sont installées sur chaque nœud. | VMExtension [] |
imageReference | Référence à une image de la Place de marché des machines virtuelles Azure ou à la ressource Image Azure d’une machine virtuelle personnalisée. Pour obtenir la liste de toutes les images Vérifiées par Azure Batch, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | ImageReference (obligatoire) |
licenseType | Cela s’applique uniquement aux images qui contiennent le système d’exploitation Windows et ne doivent être utilisées que lorsque vous conservez des licences locales valides pour les nœuds qui seront déployés. En cas d’omission, aucune remise de licence locale n’est appliquée. Les valeurs sont les suivantes : Windows_Server : la licence locale est destinée à Windows Server. Windows_Client : la licence locale est destinée au client Windows. |
corde |
nodeAgentSkuId | L’agent de nœud Batch est un programme qui s’exécute sur chaque nœud du pool et fournit l’interface de commande et de contrôle entre le nœud et le service Batch. Il existe différentes implémentations de l’agent de nœud, appelées références SKU, pour différents systèmes d’exploitation. Vous devez spécifier une référence SKU de l’agent de nœud qui correspond à la référence d’image sélectionnée. Pour obtenir la liste des références SKU de l’agent de nœud prises en charge, ainsi que leur liste de références d’images vérifiées, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | chaîne (obligatoire) |
nodePlacementConfiguration | Cette configuration spécifie des règles sur la façon dont les nœuds du pool seront alloués physiquement. | NodePlacementConfiguration |
osDisk | Contient la configuration des paramètres OSDisk éphémères. | osDisk |
securityProfile | Spécifie les paramètres de profil de sécurité de la machine virtuelle ou du groupe de machines virtuelles identiques. | SecurityProfile |
serviceArtifactReference | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | ServiceArtifactReference |
windowsConfiguration | Cette propriété ne doit pas être spécifiée si l’imageReference spécifie une image de système d’exploitation Linux. | windowsConfiguration |
VMExtension
Nom | Description | Valeur |
---|---|---|
autoUpgradeMinorVersion | Indique si l’extension doit utiliser une version mineure plus récente si elle est disponible au moment du déploiement. Une fois déployée, toutefois, l’extension ne met pas à niveau les versions mineures, sauf si elle est redéployée, même avec cette propriété définie sur true. | Bool |
enableAutomaticUpgrade | Indique si l’extension doit être automatiquement mise à niveau par la plateforme s’il existe une version plus récente de l’extension disponible. | Bool |
nom | Nom de l’extension de machine virtuelle. | chaîne (obligatoire) |
protectedSettings | L’extension peut contenir protectedSettings ou protectedSettingsFromKeyVault ou aucun paramètre protégé du tout. | quelconque |
provisionAfterExtensions | Collection de noms d’extensions après lesquels cette extension doit être provisionnée. | string[] |
éditeur | Nom du serveur de publication du gestionnaire d’extensions. | chaîne (obligatoire) |
Paramètres | Paramètres publics au format JSON pour l’extension. | quelconque |
type | Type des extensions. | chaîne (obligatoire) |
typeHandlerVersion | Version du gestionnaire de scripts. | corde |
WindowsConfiguration
Nom | Description | Valeur |
---|---|---|
enableAutomaticUpdates | Si elle est omise, la valeur par défaut est true. | Bool |
WindowsUserConfiguration
Nom | Description | Valeur |
---|---|---|
loginMode | Spécifie le mode de connexion pour l’utilisateur. La valeur par défaut pour les pools VirtualMachineConfiguration est le mode interactif et pour les pools CloudServiceConfiguration est le mode batch. | 'Batch' 'Interactive' |
Exemples de démarrage rapide
Les exemples de démarrage rapide suivants déploient ce type de ressource.
Fichier Bicep | Description |
---|---|
pool Azure Batch sans adresses IP publiques | Ce modèle crée un pool de communications de nœud simplifié Azure Batch sans adresses IP publiques. |
Définition de ressource de modèle ARM
Le type de ressource batchAccounts/pools peut être déployé avec des opérations qui ciblent :
- groupes de ressources - Consultez commandes de déploiement de groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.
Format de ressource
Pour créer une ressource Microsoft.Batch/batchAccounts/pools, ajoutez le code JSON suivant à votre modèle.
{
"type": "Microsoft.Batch/batchAccounts/pools",
"apiVersion": "2023-11-01",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"properties": {
"applicationLicenses": [ "string" ],
"applicationPackages": [
{
"id": "string",
"version": "string"
}
],
"certificates": [
{
"id": "string",
"storeLocation": "string",
"storeName": "string",
"visibility": [ "string" ]
}
],
"deploymentConfiguration": {
"cloudServiceConfiguration": {
"osFamily": "string",
"osVersion": "string"
},
"virtualMachineConfiguration": {
"containerConfiguration": {
"containerImageNames": [ "string" ],
"containerRegistries": [
{
"identityReference": {
"resourceId": "string"
},
"password": "string",
"registryServer": "string",
"username": "string"
}
],
"type": "string"
},
"dataDisks": [
{
"caching": "string",
"diskSizeGB": "int",
"lun": "int",
"storageAccountType": "string"
}
],
"diskEncryptionConfiguration": {
"targets": [ "string" ]
},
"extensions": [
{
"autoUpgradeMinorVersion": "bool",
"enableAutomaticUpgrade": "bool",
"name": "string",
"protectedSettings": {},
"provisionAfterExtensions": [ "string" ],
"publisher": "string",
"settings": {},
"type": "string",
"typeHandlerVersion": "string"
}
],
"imageReference": {
"id": "string",
"offer": "string",
"publisher": "string",
"sku": "string",
"version": "string"
},
"licenseType": "string",
"nodeAgentSkuId": "string",
"nodePlacementConfiguration": {
"policy": "string"
},
"osDisk": {
"caching": "string",
"diskSizeGB": "int",
"ephemeralOSDiskSettings": {
"placement": "CacheDisk"
},
"managedDisk": {
"storageAccountType": "string"
},
"writeAcceleratorEnabled": "bool"
},
"securityProfile": {
"encryptionAtHost": "bool",
"securityType": "trustedLaunch",
"uefiSettings": {
"secureBootEnabled": "bool",
"vTpmEnabled": "bool"
}
},
"serviceArtifactReference": {
"id": "string"
},
"windowsConfiguration": {
"enableAutomaticUpdates": "bool"
}
}
},
"displayName": "string",
"interNodeCommunication": "string",
"metadata": [
{
"name": "string",
"value": "string"
}
],
"mountConfiguration": [
{
"azureBlobFileSystemConfiguration": {
"accountKey": "string",
"accountName": "string",
"blobfuseOptions": "string",
"containerName": "string",
"identityReference": {
"resourceId": "string"
},
"relativeMountPath": "string",
"sasKey": "string"
},
"azureFileShareConfiguration": {
"accountKey": "string",
"accountName": "string",
"azureFileUrl": "string",
"mountOptions": "string",
"relativeMountPath": "string"
},
"cifsMountConfiguration": {
"mountOptions": "string",
"password": "string",
"relativeMountPath": "string",
"source": "string",
"userName": "string"
},
"nfsMountConfiguration": {
"mountOptions": "string",
"relativeMountPath": "string",
"source": "string"
}
}
],
"networkConfiguration": {
"dynamicVnetAssignmentScope": "string",
"enableAcceleratedNetworking": "bool",
"endpointConfiguration": {
"inboundNatPools": [
{
"backendPort": "int",
"frontendPortRangeEnd": "int",
"frontendPortRangeStart": "int",
"name": "string",
"networkSecurityGroupRules": [
{
"access": "string",
"priority": "int",
"sourceAddressPrefix": "string",
"sourcePortRanges": [ "string" ]
}
],
"protocol": "string"
}
]
},
"publicIPAddressConfiguration": {
"ipAddressIds": [ "string" ],
"provision": "string"
},
"subnetId": "string"
},
"resourceTags": {
"{customized property}": "string"
},
"scaleSettings": {
"autoScale": {
"evaluationInterval": "string",
"formula": "string"
},
"fixedScale": {
"nodeDeallocationOption": "string",
"resizeTimeout": "string",
"targetDedicatedNodes": "int",
"targetLowPriorityNodes": "int"
}
},
"startTask": {
"commandLine": "string",
"containerSettings": {
"containerRunOptions": "string",
"imageName": "string",
"registry": {
"identityReference": {
"resourceId": "string"
},
"password": "string",
"registryServer": "string",
"username": "string"
},
"workingDirectory": "string"
},
"environmentSettings": [
{
"name": "string",
"value": "string"
}
],
"maxTaskRetryCount": "int",
"resourceFiles": [
{
"autoStorageContainerName": "string",
"blobPrefix": "string",
"fileMode": "string",
"filePath": "string",
"httpUrl": "string",
"identityReference": {
"resourceId": "string"
},
"storageContainerUrl": "string"
}
],
"userIdentity": {
"autoUser": {
"elevationLevel": "string",
"scope": "string"
},
"userName": "string"
},
"waitForSuccess": "bool"
},
"targetNodeCommunicationMode": "string",
"taskSchedulingPolicy": {
"nodeFillType": "string"
},
"taskSlotsPerNode": "int",
"userAccounts": [
{
"elevationLevel": "string",
"linuxUserConfiguration": {
"gid": "int",
"sshPrivateKey": "string",
"uid": "int"
},
"name": "string",
"password": "string",
"windowsUserConfiguration": {
"loginMode": "string"
}
}
],
"vmSize": "string"
}
}
Valeurs de propriété
ApplicationPackageReference
Nom | Description | Valeur |
---|---|---|
id | ID du package d’application à installer. Cela doit se trouver dans le même compte batch que le pool. Il peut s’agir d’une référence à une version spécifique ou à la version par défaut s’il en existe une. | chaîne (obligatoire) |
Version | Si cela est omis et qu’aucune version par défaut n’est spécifiée pour cette application, la requête échoue avec le code d’erreur InvalidApplicationPackageReferences. Si vous appelez directement l’API REST, le code d’état HTTP est 409. | corde |
AutoScaleSettings
Nom | Description | Valeur |
---|---|---|
evaluationInterval | Si elle est omise, la valeur par défaut est de 15 minutes (PT15M). | corde |
formule | Formule pour le nombre souhaité de nœuds de calcul dans le pool. | chaîne (obligatoire) |
AutoUserSpecification
Nom | Description | Valeur |
---|---|---|
elevationLevel | La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
portée | La valeur par défaut est Pool. Si le pool exécute Windows, une valeur de tâche doit être spécifiée si une isolation plus stricte entre les tâches est requise. Par exemple, si la tâche mute le Registre d’une manière qui peut avoir un impact sur d’autres tâches ou si des certificats ont été spécifiés sur le pool qui ne doit pas être accessible par les tâches normales, mais qu’elles doivent être accessibles par les tâches de démarrage. | 'Pool' 'Task' |
AzureBlobFileSystemConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Cette propriété s’exclue mutuellement avec sasKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
accountName | Nom du compte de stockage Azure. | chaîne (obligatoire) |
blobfuseOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
containerName | Nom du conteneur stockage Blob Azure. | chaîne (obligatoire) |
identityReference | Cette propriété s’exclue mutuellement avec accountKey et sasKey ; exactement un doit être spécifié. | ComputeNodeIdentityReference |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
sasKey | Cette propriété s’exclue mutuellement avec accountKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
AzureFileShareConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Clé du compte stockage Azure. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
accountName | Nom du compte stockage Azure. | chaîne (obligatoire) |
azureFileUrl | Il s’agit de la forme « https://{account}.file.core.windows.net/ ». | chaîne (obligatoire) |
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
BatchPoolIdentity
Nom | Description | Valeur |
---|---|---|
type | Type d’identité utilisé pour le pool Batch. | 'None' 'UserAssigned' (obligatoire) |
userAssignedIdentities | Liste des identités utilisateur associées au pool Batch. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
Nom | Description | Valeur |
---|
CertificateReference
Nom | Description | Valeur |
---|---|---|
id | ID complet du certificat à installer sur le pool. Cela doit se trouver dans le même compte batch que le pool. | chaîne (obligatoire) |
storeLocation | La valeur par défaut est currentUser. Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. | 'CurrentUser' 'LocalMachine' |
storeName | Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Les noms de magasin courants sont : My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, mais tout nom de magasin personnalisé peut également être utilisé. La valeur par défaut est My. | corde |
visibilité | Quels comptes d’utilisateur sur le nœud de calcul doivent avoir accès aux données privées du certificat. | Tableau de chaînes contenant l’un des éléments suivants : 'RemoteUser' 'StartTask' 'Task' |
CifsMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
mot de passe | Mot de passe à utiliser pour l’authentification auprès du système de fichiers CIFS. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
nom d’utilisateur | Utilisateur à utiliser pour l’authentification auprès du système de fichiers CIFS. | chaîne (obligatoire) |
CloudServiceConfiguration
Nom | Description | Valeur |
---|---|---|
osFamily | Les valeurs possibles sont : 2 - Famille de système d’exploitation 2, équivalente à Windows Server 2008 R2 SP1. 3 - Famille de systèmes d’exploitation 3, équivalent à Windows Server 2012. 4 - Famille de système d’exploitation 4, équivalente à Windows Server 2012 R2. 5 - Famille de systèmes d’exploitation 5, équivalent à Windows Server 2016. 6 - Famille de systèmes d’exploitation 6, équivalent à Windows Server 2019. Pour plus d’informations, consultez Versions du système d’exploitation invité Azure (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). | chaîne (obligatoire) |
osVersion | La valeur par défaut est * qui spécifie la dernière version du système d’exploitation pour la famille de systèmes d’exploitation spécifiée. | corde |
ComputeNodeIdentityReference
Nom | Description | Valeur |
---|---|---|
resourceId | ID de ressource ARM de l’identité affectée par l’utilisateur. | corde |
ContainerConfiguration
Nom | Description | Valeur |
---|---|---|
containerImageNames | Il s’agit de la référence d’image complète, comme indiqué dans « docker pull ». Une image est source du registre Docker par défaut, sauf si l’image est entièrement qualifiée avec un autre registre. | string[] |
containerRegistries | Si des images doivent être téléchargées à partir d’un registre privé qui nécessite des informations d’identification, ces informations d’identification doivent être fournies ici. | ContainerRegistry[] |
type | Technologie de conteneur à utiliser. | 'CriCompatible' 'DockerCompatible' (obligatoire) |
ContainerRegistry
Nom | Description | Valeur |
---|---|---|
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
mot de passe | Mot de passe pour vous connecter au serveur de Registre. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
registryServer | S’il est omis, la valeur par défaut est « docker.io ». | corde |
nom d’utilisateur | Nom d’utilisateur à connecter au serveur de Registre. | corde |
DataDisk
Nom | Description | Valeur |
---|---|---|
Cache | Les valeurs sont les suivantes : none : le mode de mise en cache du disque n’est pas activé. readOnly : le mode de mise en cache du disque est en lecture seule. readWrite : le mode de mise en cache du disque est en lecture et en écriture. La valeur par défaut de la mise en cache n’est pas. Pour plus d’informations sur les options de mise en cache, consultez : https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de données. | int (obligatoire) |
lun | Le lun est utilisé pour identifier de manière unique chaque disque de données. Si vous attachez plusieurs disques, chacun doit avoir un lun distinct. La valeur doit être comprise entre 0 et 63, inclus. | int (obligatoire) |
storageAccountType | S’il est omis, la valeur par défaut est « Standard_LRS ». Les valeurs sont les suivantes : Standard_LRS : le disque de données doit utiliser un stockage standard localement redondant. Premium_LRS : le disque de données doit utiliser un stockage premium localement redondant. |
'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
DeploymentConfiguration
Nom | Description | Valeur |
---|---|---|
cloudServiceConfiguration | Cette propriété et virtualMachineConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. Cette propriété ne peut pas être spécifiée si le compte Batch a été créé avec sa propriété poolAllocationMode définie sur « UserSubscription ». | cloudServiceConfiguration |
virtualMachineConfiguration | Cette propriété et cloudServiceConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. | VirtualMachineConfiguration |
DiffDiskSettings
Nom | Description | Valeur |
---|---|---|
placement | Cette propriété peut être utilisée par l’utilisateur dans la demande pour choisir l’emplacement dans lequel le système d’exploitation doit se trouver. Par exemple, cachez l’espace disque pour l’approvisionnement de disque de système d’exploitation éphémère. Pour plus d’informations sur les exigences de taille de disque de système d’exploitation éphémère, reportez-vous aux exigences de taille de disque du système d’exploitation éphémère pour les machines virtuelles Windows sur /azure/virtual-machines/windows/ephemeral-os-disks#size-requirements et les machines virtuelles Linux sur /azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. | 'CacheDisk' |
DiskEncryptionConfiguration
Nom | Description | Valeur |
---|---|---|
Cibles | Sur le pool Linux, seul « TemporaryDisk » est pris en charge ; sur le pool Windows, « OsDisk » et « TemporaryDisk » doivent être spécifiés. | Tableau de chaînes contenant l’un des éléments suivants : 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
Nom | Description | Valeur |
---|---|---|
nom | Nom de la variable d’environnement. | chaîne (obligatoire) |
valeur | Valeur de la variable d’environnement. | corde |
FixedScaleSettings
Nom | Description | Valeur |
---|---|---|
nodeDeallocationOption | Si elle est omise, la valeur par défaut est Requeue. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | La valeur par défaut est de 15 minutes. Les valeurs de délai d’expiration utilisent le format ISO 8601. Par exemple, utilisez PT10M pendant 10 minutes. La valeur minimale est de 5 minutes. Si vous spécifiez une valeur inférieure à 5 minutes, le service Batch rejette la demande avec une erreur ; si vous appelez directement l’API REST, le code d’état HTTP est 400 (requête incorrecte). | corde |
targetDedicatedNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
targetLowPriorityNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
ImageReference
Nom | Description | Valeur |
---|---|---|
id | Cette propriété s’exclue mutuellement avec d’autres propriétés. L’image de la galerie de calcul Azure doit avoir des réplicas dans la même région que le compte Azure Batch. Pour plus d’informations sur les paramètres de pare-feu de l’agent de nœud Batch pour communiquer avec le service Batch, consultez /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. | corde |
offrir | Par exemple, UbuntuServer ou WindowsServer. | corde |
éditeur | Par exemple, Canonical ou MicrosoftWindowsServer. | corde |
Sku | Par exemple, 18.04-LTS ou 2022-datacenter. | corde |
Version | Vous pouvez spécifier la valeur « latest » pour sélectionner la dernière version d’une image. S’il est omis, la valeur par défaut est « latest ». | corde |
InboundNatPool
Nom | Description | Valeur |
---|---|---|
backendPort | Cela doit être unique dans un pool Batch. Les valeurs acceptables sont comprises entre 1 et 65535, à l’exception de 22, 3389, 29876 et 29877, car elles sont réservées. Si des valeurs réservées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeEnd | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 5 000 et 55 000, qui sont réservés par le service Batch. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeStart | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 50000 et 55000, qui sont réservés. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
nom | Le nom doit être unique dans un pool Batch, peut contenir des lettres, des chiffres, des traits de soulignement, des points et des traits d’union. Les noms doivent commencer par une lettre ou un nombre, doivent se terminer par une lettre, un nombre ou un trait de soulignement, et ne peuvent pas dépasser 77 caractères. Si des valeurs non valides sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
networkSecurityGroupRules | Le nombre maximal de règles qui peuvent être spécifiées sur tous les points de terminaison d’un pool Batch est de 25. Si aucune règle de groupe de sécurité réseau n’est spécifiée, une règle par défaut est créée pour autoriser l’accès entrant au backendPort spécifié. Si le nombre maximal de règles de groupe de sécurité réseau est dépassé, la requête échoue avec le code d’état HTTP 400. | NetworkSecurityGroupRule[] |
protocole | Protocole du point de terminaison. | 'TCP' 'UDP' (obligatoire) |
LinuxUserConfiguration
Nom | Description | Valeur |
---|---|---|
Gid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. Si le système d’exploitation sous-jacent n’est pas spécifié, le gid est sélectionné. | Int |
sshPrivateKey | La clé privée ne doit pas être protégée par mot de passe. La clé privée est utilisée pour configurer automatiquement l’authentification basée sur une clé asymétrique pour SSH entre les nœuds d’un pool Linux lorsque la propriété enableInterNodeCommunication du pool est true (elle est ignorée si enableInterNodeCommunication est false). Pour ce faire, placez la paire de clés dans le répertoire .ssh de l’utilisateur. S’il n’est pas spécifié, ssh sans mot de passe n’est pas configuré entre les nœuds (aucune modification du répertoire .ssh de l’utilisateur est effectuée). | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Uid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. S’il n’est pas spécifié, le système d’exploitation sous-jacent sélectionne l’interface utilisateur. | Int |
ManagedDisk
Nom | Description | Valeur |
---|---|---|
storageAccountType | Type de compte de stockage à utiliser pour créer des disques de données ou un disque de système d’exploitation. | 'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
MetadataItem
Nom | Description | Valeur |
---|---|---|
nom | Nom de l’élément de métadonnées. | chaîne (obligatoire) |
valeur | Valeur de l’élément de métadonnées. | chaîne (obligatoire) |
Microsoft.Batch/batchAccounts/pools
Nom | Description | Valeur |
---|---|---|
apiVersion | Version de l’API | '2023-11-01' |
identité | Type d’identité utilisé pour le pool Batch. | BatchPoolIdentity |
nom | Nom de la ressource | corde Contraintes: Longueur minimale = 1 Longueur maximale = 1 Modèle = ^[a-zA-Z0-9_-]+$ (obligatoire) |
Propriétés | Propriétés associées au pool. | PoolProperties |
type | Type de ressource | 'Microsoft.Batch/batchAccounts/pools' |
MountConfiguration
Nom | Description | Valeur |
---|---|---|
azureBlobFileSystemConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureFileShareConfiguration |
cifsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | CifsMountConfiguration |
nfsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | NFSMountConfiguration |
NetworkConfiguration
Nom | Description | Valeur |
---|---|---|
dynamicVnetAssignmentScope | Étendue de l’attribution de réseau virtuel dynamique. | 'job' 'none' |
enableAcceleratedNetworking | La mise en réseau accélérée permet une virtualisation d’E/S racine unique (SR-IOV) vers une machine virtuelle, ce qui peut entraîner une amélioration des performances réseau. Pour plus d’informations, consultez : /azure/virtual-network/accelerated-networking-overview. | Bool |
endpointConfiguration | La configuration du point de terminaison de pool est prise en charge uniquement sur les pools avec la propriété virtualMachineConfiguration. | PoolEndpointConfiguration |
publicIPAddressConfiguration | Cette propriété est uniquement prise en charge sur les pools avec la propriété virtualMachineConfiguration. | publicIPAddressConfiguration |
subnetId | Le réseau virtuel doit se trouver dans la même région et dans le même abonnement que le compte Azure Batch. Le sous-réseau spécifié doit avoir suffisamment d’adresses IP libres pour prendre en charge le nombre de nœuds dans le pool. Si le sous-réseau n’a pas suffisamment d’adresses IP gratuites, le pool alloue partiellement des nœuds de calcul et une erreur de redimensionnement se produit. Le principal de service « MicrosoftAzureBatch » doit avoir le rôle « Contributeur de machine virtuelle classique » Role-Based Contrôle d’accès (RBAC) pour le réseau virtuel spécifié. Le sous-réseau spécifié doit autoriser la communication du service Azure Batch à planifier des tâches sur les nœuds de calcul. Cela peut être vérifié en vérifiant si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés. Si la communication aux nœuds de calcul dans le sous-réseau spécifié est refusée par un groupe de sécurité réseau, le service Batch définit l’état des nœuds de calcul sur inutilisable. Si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés, quelques ports système réservés doivent être activés pour la communication entrante. Pour les pools créés avec une configuration de machine virtuelle, activez les ports 29876 et 29877, ainsi que le port 22 pour Linux et le port 3389 pour Windows. Pour les pools créés avec une configuration de service cloud, activez les ports 10100, 20100 et 30100. Activez également les connexions sortantes au stockage Azure sur le port 443. Pour les pools cloudServiceConfiguration, seuls les réseaux virtuels « classiques » sont pris en charge. Pour plus d’informations, consultez : /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | corde |
NetworkSecurityGroupRule
Nom | Description | Valeur |
---|---|---|
accès | Action qui doit être effectuée pour une adresse IP, une plage de sous-réseaux ou une balise spécifiée. | 'Autoriser' 'Deny' (obligatoire) |
priorité | Les priorités au sein d’un pool doivent être uniques et sont évaluées par ordre de priorité. Plus le nombre est faible, plus la priorité est élevée. Par exemple, les règles peuvent être spécifiées avec des numéros de commande de 150, 250 et 350. La règle avec le numéro d’ordre de 150 est prioritaire sur la règle dont l’ordre est de 250. Les priorités autorisées sont de 150 à 4096. Si des valeurs réservées ou dupliquées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
sourceAddressPrefix | Les valeurs valides sont une seule adresse IP (c’est-à-dire 10.10.10.10), un sous-réseau IP (par exemple, 192.168.1.0/24), une balise par défaut ou * (pour toutes les adresses). Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
sourcePortRanges | Les valeurs valides sont « * » (pour tous les ports 0 - 65535) ou des tableaux de ports ou plages de ports (c’est-à-dire 100-200). Les ports doivent se trouver dans la plage de 0 à 65535 et les plages de ports ou ports ne peuvent pas se chevaucher. Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. La valeur par défaut est *. | string[] |
NFSMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
NodePlacementConfiguration
Nom | Description | Valeur |
---|---|---|
politique | Stratégie d’allocation utilisée par le service Batch pour approvisionner les nœuds. S’il n’est pas spécifié, Batch utilise la stratégie régionale. | 'Régional' 'Zonal' |
OSDisk
Nom | Description | Valeur |
---|---|---|
Cache | Type de mise en cache à activer pour le disque. | 'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de système d’exploitation. | Int |
ephemeralOSDiskSettings | Spécifie les paramètres de disque éphémères pour le disque du système d’exploitation utilisé par la machine virtuelle. | DiffDiskSettings |
managedDisk | ManagedDisk | |
writeAcceleratorEnabled | Spécifie si writeAccelerator doit être activé ou désactivé sur le disque. | Bool |
PoolEndpointConfiguration
Nom | Description | Valeur |
---|---|---|
inboundNatPools | Le nombre maximal de pools NAT entrants par pool Batch est de 5. Si le nombre maximal de pools NAT entrants est dépassé, la requête échoue avec le code d’état HTTP 400. Cela ne peut pas être spécifié si IPAddressProvisioningType est NoPublicIPAddresses. | inboundNatPool[] (obligatoire) |
PoolProperties
Nom | Description | Valeur |
---|---|---|
applicationLicenses | La liste des licences d’application doit être un sous-ensemble de licences d’application de service Batch disponibles. Si une licence n’est pas prise en charge, la création du pool échoue. | string[] |
applicationPackages | Les modifications apportées aux références de package d’application affectent tous les nouveaux nœuds de calcul qui rejoignent le pool, mais n’affectent pas les nœuds de calcul qui se trouvent déjà dans le pool tant qu’ils ne sont pas redémarrés ou réimages. Il existe au maximum 10 références de package d’application sur un pool donné. | applicationPackageReference[] |
Certificats | Pour les nœuds de calcul Windows, le service Batch installe les certificats dans le magasin de certificats et l’emplacement spécifiés. Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. Avertissement : cette propriété est déconseillée et sera supprimée après février 2024. Utilisez plutôt l''extension Azure KeyVault. |
CertificateReference[] |
deploymentConfiguration | L’utilisation de CloudServiceConfiguration spécifie que les nœuds doivent être créés à l’aide d’Azure Cloud Services (PaaS), tandis que VirtualMachineConfiguration utilise des machines virtuelles Azure (IaaS). | DeploymentConfiguration |
displayName | Le nom complet n’a pas besoin d’être unique et peut contenir des caractères Unicode pouvant atteindre une longueur maximale de 1024. | corde |
interNodeCommunication | Cela impose des restrictions sur les nœuds qui peuvent être affectés au pool. L’activation de cette valeur peut réduire le nombre de nœuds demandé à allouer dans le pool. Si elle n’est pas spécifiée, cette valeur est définie par défaut sur « Disabled ». | 'Désactivé' 'Activé' |
métadonnées | Le service Batch n’affecte aucune signification aux métadonnées ; il s’agit uniquement de l’utilisation du code utilisateur. | MetadataItem[] |
mountConfiguration | Cela prend en charge Azure Files, NFS, CIFS/SMB et Blobfuse. | MountConfiguration[] |
networkConfiguration | Configuration réseau d’un pool. | networkConfiguration |
resourceTags | Balises définies par l’utilisateur à associer au pool Azure Batch. Quand elles sont spécifiées, ces balises sont propagées aux ressources Azure de stockage associées au pool. Cette propriété ne peut être spécifiée que lorsque le compte Batch a été créé avec la propriété poolAllocationMode définie sur « UserSubscription ». | PoolPropertiesResourceTags |
scaleSettings | Définit la taille souhaitée du pool. Il peut s’agir de « fixedScale » où les targetDedicatedNodes demandés sont spécifiés, ou « autoScale » qui définit une formule qui est régulièrement réévaluée. Si cette propriété n’est pas spécifiée, le pool aura une échelle fixe avec 0 targetDedicatedNodes. | scaleSettings |
startTask | Dans une opération PATCH (mise à jour), cette propriété peut être définie sur un objet vide pour supprimer la tâche de démarrage du pool. | startTask |
targetNodeCommunicationMode | Si elle est omise, la valeur par défaut est Default. | 'Classique' 'Default' 'Simplifié' |
taskSchedulingPolicy | S’il n’est pas spécifié, la valeur par défaut est répartie. | TaskSchedulingPolicy |
taskSlotsPerNode | La valeur par défaut est 1. La valeur maximale est la plus petite de 4 fois le nombre de cœurs de la vmSize du pool ou 256. | Int |
userAccounts | Liste des comptes d’utilisateur à créer sur chaque nœud du pool. | UserAccount[] |
vmSize | Pour plus d’informations sur les tailles disponibles de machines virtuelles pour les pools de services cloud (pools créés avec cloudServiceConfiguration), consultez Tailles pour les services cloud (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch prend en charge toutes les tailles de machine virtuelle cloud Services, à l’exception d’ExtraSmall. Pour plus d’informations sur les tailles de machines virtuelles disponibles pour les pools utilisant des images de la Place de marché des machines virtuelles (pools créés avec virtualMachineConfiguration) consultez Tailles pour les machines virtuelles (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) ou tailles pour les machines virtuelles (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch prend en charge toutes les tailles de machine virtuelle Azure, à l’exception des STANDARD_A0 et celles avec stockage Premium (STANDARD_GS, STANDARD_DS et série STANDARD_DSV2). | corde |
PoolPropertiesResourceTags
Nom | Description | Valeur |
---|
PublicIPAddressConfiguration
Nom | Description | Valeur |
---|---|---|
ipAddressIds | Le nombre d’adresses IP spécifiées ici limite la taille maximale du pool - 100 nœuds dédiés ou 100 nœuds Spot/basse priorité peuvent être alloués pour chaque adresse IP publique. Par exemple, un pool nécessitant 250 machines virtuelles dédiées aurait besoin d’au moins 3 adresses IP publiques spécifiées. Chaque élément de cette collection est de la forme : /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}. | string[] |
disposition | La valeur par défaut est BatchManaged | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
Nom | Description | Valeur |
---|---|---|
autoStorageContainerName | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. | corde |
blobPrefix | La propriété est valide uniquement lorsque autoStorageContainerName ou storageContainerUrl est utilisé. Ce préfixe peut être un nom de fichier partiel ou un sous-répertoire. Si aucun préfixe n’est spécifié, tous les fichiers du conteneur sont téléchargés. | corde |
fileMode | Cette propriété s’applique uniquement aux fichiers téléchargés sur des nœuds de calcul Linux. Il sera ignoré s’il est spécifié pour un resourceFile qui sera téléchargé sur un nœud Windows. Si cette propriété n’est pas spécifiée pour un nœud Linux, la valeur par défaut 0770 est appliquée au fichier. | corde |
filePath | Si la propriété httpUrl est spécifiée, filePath est requis et décrit le chemin vers lequel le fichier sera téléchargé, y compris le nom de fichier. Sinon, si la propriété autoStorageContainerName ou storageContainerUrl est spécifiée, filePath est facultatif et est le répertoire dans lequel télécharger les fichiers. Dans le cas où filePath est utilisé comme répertoire, toute structure de répertoires déjà associée aux données d’entrée sera conservée dans son intégralité et ajoutée au répertoire filePath spécifié. Le chemin d’accès relatif spécifié ne peut pas décomposer le répertoire de travail de la tâche (par exemple à l’aide de '..'). | corde |
httpUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Si l’URL pointe vers stockage Blob Azure, elle doit être lisible à partir de nœuds de calcul. Il existe trois façons d’obtenir cette URL pour un objet blob dans le stockage Azure : incluez une signature d’accès partagé (SAP) accordant des autorisations de lecture sur l’objet blob, utilisez une identité managée avec une autorisation de lecture ou définissez la liste de contrôle d’accès pour l’objet blob ou son conteneur afin d’autoriser l’accès public. | corde |
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
storageContainerUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Cette URL doit être lisible et listable à partir de nœuds de calcul. Il existe trois façons d’obtenir une telle URL pour un conteneur dans le stockage Azure : inclure une signature d’accès partagé (SAP) accordant des autorisations de lecture et de liste sur le conteneur, utiliser une identité managée avec des autorisations de lecture et de liste, ou définir la liste de contrôle d’accès pour le conteneur afin d’autoriser l’accès public. | corde |
ScaleSettings
Nom | Description | Valeur |
---|---|---|
mise à l’échelle automatique | Cette propriété et fixedScale s’excluent mutuellement et l’une des propriétés doit être spécifiée. | AutoScaleSettings |
fixedScale | Cette propriété et cette mise à l’échelle automatique sont mutuellement exclusives et l’une des propriétés doit être spécifiée. | fixedScaleSettings |
SecurityProfile
Nom | Description | Valeur |
---|---|---|
encryptionAtHost | Cette propriété peut être utilisée par l’utilisateur dans la demande pour activer ou désactiver le chiffrement de l’hôte pour la machine virtuelle ou le groupe de machines virtuelles identiques. Cela active le chiffrement pour tous les disques, y compris le disque Resource/Temp sur l’hôte lui-même. | Bool |
securityType | Spécifie le SecurityType de la machine virtuelle. Il doit être défini sur n’importe quelle valeur spécifiée pour activer UefiSettings. | 'trustedLaunch' |
uefiSettings | Spécifie les paramètres de sécurité tels que le démarrage sécurisé et vTPM utilisés lors de la création de la machine virtuelle. | UefiSettings |
ServiceArtifactReference
Nom | Description | Valeur |
---|---|---|
id | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | chaîne (obligatoire) |
StartTask
Nom | Description | Valeur |
---|---|---|
commandLine | La ligne de commande ne s’exécute pas sous un interpréteur de commandes et ne peut donc pas tirer parti des fonctionnalités de l’interpréteur de commandes telles que l’extension de variable d’environnement. Si vous souhaitez tirer parti de ces fonctionnalités, vous devez appeler l’interpréteur de commandes dans la ligne de commande, par exemple en utilisant « cmd /c MyCommand » dans Windows ou « /bin/sh -c MyCommand » dans Linux. Obligatoire si d’autres propriétés de startTask sont spécifiées. | corde |
containerSettings | Lorsque cela est spécifié, tous les répertoires sont récursifs sous la AZ_BATCH_NODE_ROOT_DIR (la racine des répertoires Azure Batch sur le nœud) sont mappés dans le conteneur, toutes les variables d’environnement de tâche sont mappées dans le conteneur et la ligne de commande de tâche est exécutée dans le conteneur. | TaskContainerSettings |
environmentSettings | Liste des paramètres de variable d’environnement pour la tâche de démarrage. | EnvironmentSetting[] |
maxTaskRetryCount | Le service Batch retente une tâche si son code de sortie n’est pas différent de zéro. Notez que cette valeur contrôle spécifiquement le nombre de nouvelles tentatives. Le service Batch essaie la tâche une fois, puis peut réessayer jusqu’à cette limite. Par exemple, si le nombre maximal de nouvelles tentatives est égal à 3, Batch tente la tâche jusqu’à 4 fois (une tentative initiale et 3 nouvelles tentatives). Si le nombre maximal de nouvelles tentatives est égal à 0, le service Batch ne réessaye pas la tâche. Si le nombre maximal de nouvelles tentatives est -1, le service Batch retente la tâche sans limite. La valeur par défaut est 0 | Int |
resourceFiles | Liste des fichiers que le service Batch télécharge sur le nœud de calcul avant d’exécuter la ligne de commande. | ResourceFile[] |
userIdentity | Si elle est omise, la tâche s’exécute en tant qu’utilisateur non administratif unique à la tâche. | userIdentity |
waitForSuccess | Si la valeur est true et que la tâche de démarrage échoue sur un nœud de calcul, le service Batch retente la tâche de démarrage jusqu’à son nombre maximal de nouvelles tentatives (maxTaskRetryCount). Si la tâche n’est toujours pas terminée après toutes les nouvelles tentatives, le service Batch marque le nœud de calcul inutilisable et ne planifie pas les tâches. Cette condition peut être détectée via l’état du nœud et la planification des détails d’erreur. Si la valeur est false, le service Batch n’attend pas la fin de la tâche de démarrage. Dans ce cas, d’autres tâches peuvent commencer à s’exécuter sur le nœud de calcul pendant que la tâche de démarrage est toujours en cours d’exécution ; et même si la tâche de démarrage échoue, les nouvelles tâches continueront d’être planifiées sur le nœud. La valeur par défaut est true. | Bool |
TaskContainerSettings
TaskSchedulingPolicy
Nom | Description | Valeur |
---|---|---|
nodeFillType | Comment les tâches doivent être distribuées entre les nœuds de calcul. | 'Pack' 'Spread' (obligatoire) |
UefiSettings
Nom | Description | Valeur |
---|---|---|
secureBootEnabled | Spécifie si le démarrage sécurisé doit être activé sur la machine virtuelle. | Bool |
vTpmEnabled | Spécifie si vTPM doit être activé sur la machine virtuelle. | Bool |
UserAccount
Nom | Description | Valeur |
---|---|---|
elevationLevel | nonAdmin : l’utilisateur automatique est un utilisateur standard sans accès élevé. administrateur : l’utilisateur automatique est un utilisateur disposant d’un accès élevé et fonctionne avec des autorisations d’administrateur complètes. La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Cette propriété est ignorée si elle est spécifiée sur un pool Windows. S’il n’est pas spécifié, l’utilisateur est créé avec les options par défaut. | LinuxUserConfiguration |
nom | Nom du compte d’utilisateur. Les noms peuvent contenir n’importe quel caractère Unicode jusqu’à une longueur maximale de 20. | chaîne (obligatoire) |
mot de passe | Mot de passe du compte d’utilisateur. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
windowsUserConfiguration | Cette propriété ne peut être spécifiée que si l’utilisateur se trouve sur un pool Windows. S’il n’est pas spécifié et sur un pool Windows, l’utilisateur est créé avec les options par défaut. | windowsUserConfiguration |
UserAssignedIdentities
Nom | Description | Valeur |
---|
UserIdentity
VirtualMachineConfiguration
Nom | Description | Valeur |
---|---|---|
containerConfiguration | Si elle est spécifiée, le programme d’installation est effectué sur chaque nœud du pool pour permettre l’exécution des tâches dans des conteneurs. Toutes les tâches régulières et les tâches du gestionnaire de travaux s’exécutent sur ce pool doivent spécifier la propriété containerSettings, et toutes les autres tâches peuvent la spécifier. | ContainerConfiguration |
dataDisks | Cette propriété doit être spécifiée si les nœuds de calcul du pool doivent avoir des disques de données vides attachés. | DataDisk[] |
diskEncryptionConfiguration | Si spécifié, le chiffrement est effectué sur chaque nœud du pool pendant l’approvisionnement de nœuds. | DiskEncryptionConfiguration |
Extensions | Si elle est spécifiée, les extensions mentionnées dans cette configuration sont installées sur chaque nœud. | VMExtension [] |
imageReference | Référence à une image de la Place de marché des machines virtuelles Azure ou à la ressource Image Azure d’une machine virtuelle personnalisée. Pour obtenir la liste de toutes les images Vérifiées par Azure Batch, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | ImageReference (obligatoire) |
licenseType | Cela s’applique uniquement aux images qui contiennent le système d’exploitation Windows et ne doivent être utilisées que lorsque vous conservez des licences locales valides pour les nœuds qui seront déployés. En cas d’omission, aucune remise de licence locale n’est appliquée. Les valeurs sont les suivantes : Windows_Server : la licence locale est destinée à Windows Server. Windows_Client : la licence locale est destinée au client Windows. |
corde |
nodeAgentSkuId | L’agent de nœud Batch est un programme qui s’exécute sur chaque nœud du pool et fournit l’interface de commande et de contrôle entre le nœud et le service Batch. Il existe différentes implémentations de l’agent de nœud, appelées références SKU, pour différents systèmes d’exploitation. Vous devez spécifier une référence SKU de l’agent de nœud qui correspond à la référence d’image sélectionnée. Pour obtenir la liste des références SKU de l’agent de nœud prises en charge, ainsi que leur liste de références d’images vérifiées, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | chaîne (obligatoire) |
nodePlacementConfiguration | Cette configuration spécifie des règles sur la façon dont les nœuds du pool seront alloués physiquement. | NodePlacementConfiguration |
osDisk | Contient la configuration des paramètres OSDisk éphémères. | osDisk |
securityProfile | Spécifie les paramètres de profil de sécurité de la machine virtuelle ou du groupe de machines virtuelles identiques. | SecurityProfile |
serviceArtifactReference | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | ServiceArtifactReference |
windowsConfiguration | Cette propriété ne doit pas être spécifiée si l’imageReference spécifie une image de système d’exploitation Linux. | windowsConfiguration |
VMExtension
Nom | Description | Valeur |
---|---|---|
autoUpgradeMinorVersion | Indique si l’extension doit utiliser une version mineure plus récente si elle est disponible au moment du déploiement. Une fois déployée, toutefois, l’extension ne met pas à niveau les versions mineures, sauf si elle est redéployée, même avec cette propriété définie sur true. | Bool |
enableAutomaticUpgrade | Indique si l’extension doit être automatiquement mise à niveau par la plateforme s’il existe une version plus récente de l’extension disponible. | Bool |
nom | Nom de l’extension de machine virtuelle. | chaîne (obligatoire) |
protectedSettings | L’extension peut contenir protectedSettings ou protectedSettingsFromKeyVault ou aucun paramètre protégé du tout. | quelconque |
provisionAfterExtensions | Collection de noms d’extensions après lesquels cette extension doit être provisionnée. | string[] |
éditeur | Nom du serveur de publication du gestionnaire d’extensions. | chaîne (obligatoire) |
Paramètres | Paramètres publics au format JSON pour l’extension. | quelconque |
type | Type des extensions. | chaîne (obligatoire) |
typeHandlerVersion | Version du gestionnaire de scripts. | corde |
WindowsConfiguration
Nom | Description | Valeur |
---|---|---|
enableAutomaticUpdates | Si elle est omise, la valeur par défaut est true. | Bool |
WindowsUserConfiguration
Nom | Description | Valeur |
---|---|---|
loginMode | Spécifie le mode de connexion pour l’utilisateur. La valeur par défaut pour les pools VirtualMachineConfiguration est le mode interactif et pour les pools CloudServiceConfiguration est le mode batch. | 'Batch' 'Interactive' |
Modèles de démarrage rapide
Les modèles de démarrage rapide suivants déploient ce type de ressource.
Modèle | Description |
---|---|
pool Azure Batch sans adresses IP publiques |
Ce modèle crée un pool de communications de nœud simplifié Azure Batch sans adresses IP publiques. |
Définition de ressource Terraform (fournisseur AzAPI)
Le type de ressource batchAccounts/pools peut être déployé avec des opérations qui ciblent :
- groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.
Format de ressource
Pour créer une ressource Microsoft.Batch/batchAccounts/pools, ajoutez le terraform suivant à votre modèle.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Batch/batchAccounts/pools@2023-11-01"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
body = jsonencode({
properties = {
applicationLicenses = [
"string"
]
applicationPackages = [
{
id = "string"
version = "string"
}
]
certificates = [
{
id = "string"
storeLocation = "string"
storeName = "string"
visibility = [
"string"
]
}
]
deploymentConfiguration = {
cloudServiceConfiguration = {
osFamily = "string"
osVersion = "string"
}
virtualMachineConfiguration = {
containerConfiguration = {
containerImageNames = [
"string"
]
containerRegistries = [
{
identityReference = {
resourceId = "string"
}
password = "string"
registryServer = "string"
username = "string"
}
]
type = "string"
}
dataDisks = [
{
caching = "string"
diskSizeGB = int
lun = int
storageAccountType = "string"
}
]
diskEncryptionConfiguration = {
targets = [
"string"
]
}
extensions = [
{
autoUpgradeMinorVersion = bool
enableAutomaticUpgrade = bool
name = "string"
protectedSettings = ?
provisionAfterExtensions = [
"string"
]
publisher = "string"
settings = ?
type = "string"
typeHandlerVersion = "string"
}
]
imageReference = {
id = "string"
offer = "string"
publisher = "string"
sku = "string"
version = "string"
}
licenseType = "string"
nodeAgentSkuId = "string"
nodePlacementConfiguration = {
policy = "string"
}
osDisk = {
caching = "string"
diskSizeGB = int
ephemeralOSDiskSettings = {
placement = "CacheDisk"
}
managedDisk = {
storageAccountType = "string"
}
writeAcceleratorEnabled = bool
}
securityProfile = {
encryptionAtHost = bool
securityType = "trustedLaunch"
uefiSettings = {
secureBootEnabled = bool
vTpmEnabled = bool
}
}
serviceArtifactReference = {
id = "string"
}
windowsConfiguration = {
enableAutomaticUpdates = bool
}
}
}
displayName = "string"
interNodeCommunication = "string"
metadata = [
{
name = "string"
value = "string"
}
]
mountConfiguration = [
{
azureBlobFileSystemConfiguration = {
accountKey = "string"
accountName = "string"
blobfuseOptions = "string"
containerName = "string"
identityReference = {
resourceId = "string"
}
relativeMountPath = "string"
sasKey = "string"
}
azureFileShareConfiguration = {
accountKey = "string"
accountName = "string"
azureFileUrl = "string"
mountOptions = "string"
relativeMountPath = "string"
}
cifsMountConfiguration = {
mountOptions = "string"
password = "string"
relativeMountPath = "string"
source = "string"
userName = "string"
}
nfsMountConfiguration = {
mountOptions = "string"
relativeMountPath = "string"
source = "string"
}
}
]
networkConfiguration = {
dynamicVnetAssignmentScope = "string"
enableAcceleratedNetworking = bool
endpointConfiguration = {
inboundNatPools = [
{
backendPort = int
frontendPortRangeEnd = int
frontendPortRangeStart = int
name = "string"
networkSecurityGroupRules = [
{
access = "string"
priority = int
sourceAddressPrefix = "string"
sourcePortRanges = [
"string"
]
}
]
protocol = "string"
}
]
}
publicIPAddressConfiguration = {
ipAddressIds = [
"string"
]
provision = "string"
}
subnetId = "string"
}
resourceTags = {
{customized property} = "string"
}
scaleSettings = {
autoScale = {
evaluationInterval = "string"
formula = "string"
}
fixedScale = {
nodeDeallocationOption = "string"
resizeTimeout = "string"
targetDedicatedNodes = int
targetLowPriorityNodes = int
}
}
startTask = {
commandLine = "string"
containerSettings = {
containerRunOptions = "string"
imageName = "string"
registry = {
identityReference = {
resourceId = "string"
}
password = "string"
registryServer = "string"
username = "string"
}
workingDirectory = "string"
}
environmentSettings = [
{
name = "string"
value = "string"
}
]
maxTaskRetryCount = int
resourceFiles = [
{
autoStorageContainerName = "string"
blobPrefix = "string"
fileMode = "string"
filePath = "string"
httpUrl = "string"
identityReference = {
resourceId = "string"
}
storageContainerUrl = "string"
}
]
userIdentity = {
autoUser = {
elevationLevel = "string"
scope = "string"
}
userName = "string"
}
waitForSuccess = bool
}
targetNodeCommunicationMode = "string"
taskSchedulingPolicy = {
nodeFillType = "string"
}
taskSlotsPerNode = int
userAccounts = [
{
elevationLevel = "string"
linuxUserConfiguration = {
gid = int
sshPrivateKey = "string"
uid = int
}
name = "string"
password = "string"
windowsUserConfiguration = {
loginMode = "string"
}
}
]
vmSize = "string"
}
})
}
Valeurs de propriété
ApplicationPackageReference
Nom | Description | Valeur |
---|---|---|
id | ID du package d’application à installer. Cela doit se trouver dans le même compte batch que le pool. Il peut s’agir d’une référence à une version spécifique ou à la version par défaut s’il en existe une. | chaîne (obligatoire) |
Version | Si cela est omis et qu’aucune version par défaut n’est spécifiée pour cette application, la requête échoue avec le code d’erreur InvalidApplicationPackageReferences. Si vous appelez directement l’API REST, le code d’état HTTP est 409. | corde |
AutoScaleSettings
Nom | Description | Valeur |
---|---|---|
evaluationInterval | Si elle est omise, la valeur par défaut est de 15 minutes (PT15M). | corde |
formule | Formule pour le nombre souhaité de nœuds de calcul dans le pool. | chaîne (obligatoire) |
AutoUserSpecification
Nom | Description | Valeur |
---|---|---|
elevationLevel | La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
portée | La valeur par défaut est Pool. Si le pool exécute Windows, une valeur de tâche doit être spécifiée si une isolation plus stricte entre les tâches est requise. Par exemple, si la tâche mute le Registre d’une manière qui peut avoir un impact sur d’autres tâches ou si des certificats ont été spécifiés sur le pool qui ne doit pas être accessible par les tâches normales, mais qu’elles doivent être accessibles par les tâches de démarrage. | 'Pool' 'Task' |
AzureBlobFileSystemConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Cette propriété s’exclue mutuellement avec sasKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
accountName | Nom du compte de stockage Azure. | chaîne (obligatoire) |
blobfuseOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
containerName | Nom du conteneur stockage Blob Azure. | chaîne (obligatoire) |
identityReference | Cette propriété s’exclue mutuellement avec accountKey et sasKey ; exactement un doit être spécifié. | ComputeNodeIdentityReference |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
sasKey | Cette propriété s’exclue mutuellement avec accountKey et l’identité ; exactement un doit être spécifié. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
AzureFileShareConfiguration
Nom | Description | Valeur |
---|---|---|
accountKey | Clé du compte stockage Azure. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
accountName | Nom du compte stockage Azure. | chaîne (obligatoire) |
azureFileUrl | Il s’agit de la forme « https://{account}.file.core.windows.net/ ». | chaîne (obligatoire) |
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
BatchPoolIdentity
Nom | Description | Valeur |
---|---|---|
type | Type d’identité utilisé pour le pool Batch. | 'None' 'UserAssigned' (obligatoire) |
userAssignedIdentities | Liste des identités utilisateur associées au pool Batch. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
Nom | Description | Valeur |
---|
CertificateReference
Nom | Description | Valeur |
---|---|---|
id | ID complet du certificat à installer sur le pool. Cela doit se trouver dans le même compte batch que le pool. | chaîne (obligatoire) |
storeLocation | La valeur par défaut est currentUser. Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. | 'CurrentUser' 'LocalMachine' |
storeName | Cette propriété s’applique uniquement aux pools configurés avec des nœuds Windows (c’est-à-dire créés avec cloudServiceConfiguration ou virtualMachineConfiguration à l’aide d’une référence d’image Windows). Les noms de magasin courants sont : My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, mais tout nom de magasin personnalisé peut également être utilisé. La valeur par défaut est My. | corde |
visibilité | Quels comptes d’utilisateur sur le nœud de calcul doivent avoir accès aux données privées du certificat. | Tableau de chaînes contenant l’un des éléments suivants : 'RemoteUser' 'StartTask' 'Task' |
CifsMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
mot de passe | Mot de passe à utiliser pour l’authentification auprès du système de fichiers CIFS. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
nom d’utilisateur | Utilisateur à utiliser pour l’authentification auprès du système de fichiers CIFS. | chaîne (obligatoire) |
CloudServiceConfiguration
Nom | Description | Valeur |
---|---|---|
osFamily | Les valeurs possibles sont : 2 - Famille de système d’exploitation 2, équivalente à Windows Server 2008 R2 SP1. 3 - Famille de systèmes d’exploitation 3, équivalent à Windows Server 2012. 4 - Famille de système d’exploitation 4, équivalente à Windows Server 2012 R2. 5 - Famille de systèmes d’exploitation 5, équivalent à Windows Server 2016. 6 - Famille de systèmes d’exploitation 6, équivalent à Windows Server 2019. Pour plus d’informations, consultez Versions du système d’exploitation invité Azure (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). | chaîne (obligatoire) |
osVersion | La valeur par défaut est * qui spécifie la dernière version du système d’exploitation pour la famille de systèmes d’exploitation spécifiée. | corde |
ComputeNodeIdentityReference
Nom | Description | Valeur |
---|---|---|
resourceId | ID de ressource ARM de l’identité affectée par l’utilisateur. | corde |
ContainerConfiguration
Nom | Description | Valeur |
---|---|---|
containerImageNames | Il s’agit de la référence d’image complète, comme indiqué dans « docker pull ». Une image est source du registre Docker par défaut, sauf si l’image est entièrement qualifiée avec un autre registre. | string[] |
containerRegistries | Si des images doivent être téléchargées à partir d’un registre privé qui nécessite des informations d’identification, ces informations d’identification doivent être fournies ici. | ContainerRegistry[] |
type | Technologie de conteneur à utiliser. | 'CriCompatible' 'DockerCompatible' (obligatoire) |
ContainerRegistry
Nom | Description | Valeur |
---|---|---|
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
mot de passe | Mot de passe pour vous connecter au serveur de Registre. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
registryServer | S’il est omis, la valeur par défaut est « docker.io ». | corde |
nom d’utilisateur | Nom d’utilisateur à connecter au serveur de Registre. | corde |
DataDisk
Nom | Description | Valeur |
---|---|---|
Cache | Les valeurs sont les suivantes : none : le mode de mise en cache du disque n’est pas activé. readOnly : le mode de mise en cache du disque est en lecture seule. readWrite : le mode de mise en cache du disque est en lecture et en écriture. La valeur par défaut de la mise en cache n’est pas. Pour plus d’informations sur les options de mise en cache, consultez : https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de données. | int (obligatoire) |
lun | Le lun est utilisé pour identifier de manière unique chaque disque de données. Si vous attachez plusieurs disques, chacun doit avoir un lun distinct. La valeur doit être comprise entre 0 et 63, inclus. | int (obligatoire) |
storageAccountType | S’il est omis, la valeur par défaut est « Standard_LRS ». Les valeurs sont les suivantes : Standard_LRS : le disque de données doit utiliser un stockage standard localement redondant. Premium_LRS : le disque de données doit utiliser un stockage premium localement redondant. |
'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
DeploymentConfiguration
Nom | Description | Valeur |
---|---|---|
cloudServiceConfiguration | Cette propriété et virtualMachineConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. Cette propriété ne peut pas être spécifiée si le compte Batch a été créé avec sa propriété poolAllocationMode définie sur « UserSubscription ». | cloudServiceConfiguration |
virtualMachineConfiguration | Cette propriété et cloudServiceConfiguration s’excluent mutuellement et l’une des propriétés doit être spécifiée. | VirtualMachineConfiguration |
DiffDiskSettings
Nom | Description | Valeur |
---|---|---|
placement | Cette propriété peut être utilisée par l’utilisateur dans la demande pour choisir l’emplacement dans lequel le système d’exploitation doit se trouver. Par exemple, cachez l’espace disque pour l’approvisionnement de disque de système d’exploitation éphémère. Pour plus d’informations sur les exigences de taille de disque de système d’exploitation éphémère, reportez-vous aux exigences de taille de disque du système d’exploitation éphémère pour les machines virtuelles Windows sur /azure/virtual-machines/windows/ephemeral-os-disks#size-requirements et les machines virtuelles Linux sur /azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. | 'CacheDisk' |
DiskEncryptionConfiguration
Nom | Description | Valeur |
---|---|---|
Cibles | Sur le pool Linux, seul « TemporaryDisk » est pris en charge ; sur le pool Windows, « OsDisk » et « TemporaryDisk » doivent être spécifiés. | Tableau de chaînes contenant l’un des éléments suivants : 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
Nom | Description | Valeur |
---|---|---|
nom | Nom de la variable d’environnement. | chaîne (obligatoire) |
valeur | Valeur de la variable d’environnement. | corde |
FixedScaleSettings
Nom | Description | Valeur |
---|---|---|
nodeDeallocationOption | Si elle est omise, la valeur par défaut est Requeue. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | La valeur par défaut est de 15 minutes. Les valeurs de délai d’expiration utilisent le format ISO 8601. Par exemple, utilisez PT10M pendant 10 minutes. La valeur minimale est de 5 minutes. Si vous spécifiez une valeur inférieure à 5 minutes, le service Batch rejette la demande avec une erreur ; si vous appelez directement l’API REST, le code d’état HTTP est 400 (requête incorrecte). | corde |
targetDedicatedNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
targetLowPriorityNodes | Au moins un des targetDedicatedNodes, targetLowPriorityNodes doit être défini. | Int |
ImageReference
Nom | Description | Valeur |
---|---|---|
id | Cette propriété s’exclue mutuellement avec d’autres propriétés. L’image de la galerie de calcul Azure doit avoir des réplicas dans la même région que le compte Azure Batch. Pour plus d’informations sur les paramètres de pare-feu de l’agent de nœud Batch pour communiquer avec le service Batch, consultez /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. | corde |
offrir | Par exemple, UbuntuServer ou WindowsServer. | corde |
éditeur | Par exemple, Canonical ou MicrosoftWindowsServer. | corde |
Sku | Par exemple, 18.04-LTS ou 2022-datacenter. | corde |
Version | Vous pouvez spécifier la valeur « latest » pour sélectionner la dernière version d’une image. S’il est omis, la valeur par défaut est « latest ». | corde |
InboundNatPool
Nom | Description | Valeur |
---|---|---|
backendPort | Cela doit être unique dans un pool Batch. Les valeurs acceptables sont comprises entre 1 et 65535, à l’exception de 22, 3389, 29876 et 29877, car elles sont réservées. Si des valeurs réservées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeEnd | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 5 000 et 55 000, qui sont réservés par le service Batch. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
frontendPortRangeStart | Les valeurs acceptables sont comprises entre 1 et 65534, à l’exception des ports compris entre 50000 et 55000, qui sont réservés. Toutes les plages d’un pool doivent être distinctes et ne peuvent pas se chevaucher. Si des valeurs réservées ou superposées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
nom | Le nom doit être unique dans un pool Batch, peut contenir des lettres, des chiffres, des traits de soulignement, des points et des traits d’union. Les noms doivent commencer par une lettre ou un nombre, doivent se terminer par une lettre, un nombre ou un trait de soulignement, et ne peuvent pas dépasser 77 caractères. Si des valeurs non valides sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
networkSecurityGroupRules | Le nombre maximal de règles qui peuvent être spécifiées sur tous les points de terminaison d’un pool Batch est de 25. Si aucune règle de groupe de sécurité réseau n’est spécifiée, une règle par défaut est créée pour autoriser l’accès entrant au backendPort spécifié. Si le nombre maximal de règles de groupe de sécurité réseau est dépassé, la requête échoue avec le code d’état HTTP 400. | NetworkSecurityGroupRule[] |
protocole | Protocole du point de terminaison. | 'TCP' 'UDP' (obligatoire) |
LinuxUserConfiguration
Nom | Description | Valeur |
---|---|---|
Gid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. Si le système d’exploitation sous-jacent n’est pas spécifié, le gid est sélectionné. | Int |
sshPrivateKey | La clé privée ne doit pas être protégée par mot de passe. La clé privée est utilisée pour configurer automatiquement l’authentification basée sur une clé asymétrique pour SSH entre les nœuds d’un pool Linux lorsque la propriété enableInterNodeCommunication du pool est true (elle est ignorée si enableInterNodeCommunication est false). Pour ce faire, placez la paire de clés dans le répertoire .ssh de l’utilisateur. S’il n’est pas spécifié, ssh sans mot de passe n’est pas configuré entre les nœuds (aucune modification du répertoire .ssh de l’utilisateur est effectuée). | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
Uid | Les propriétés uid et gid doivent être spécifiées ensemble ou pas du tout. S’il n’est pas spécifié, le système d’exploitation sous-jacent sélectionne l’interface utilisateur. | Int |
ManagedDisk
Nom | Description | Valeur |
---|---|---|
storageAccountType | Type de compte de stockage à utiliser pour créer des disques de données ou un disque de système d’exploitation. | 'Premium_LRS' 'StandardSSD_LRS' 'Standard_LRS' |
MetadataItem
Nom | Description | Valeur |
---|---|---|
nom | Nom de l’élément de métadonnées. | chaîne (obligatoire) |
valeur | Valeur de l’élément de métadonnées. | chaîne (obligatoire) |
Microsoft.Batch/batchAccounts/pools
Nom | Description | Valeur |
---|---|---|
identité | Type d’identité utilisé pour le pool Batch. | BatchPoolIdentity |
nom | Nom de la ressource | corde Contraintes: Longueur minimale = 1 Longueur maximale = 1 Modèle = ^[a-zA-Z0-9_-]+$ (obligatoire) |
parent_id | ID de la ressource qui est le parent de cette ressource. | ID de ressource de type : batchAccounts |
Propriétés | Propriétés associées au pool. | PoolProperties |
type | Type de ressource | « Microsoft.Batch/batchAccounts/pools@2023-11-01 » |
MountConfiguration
Nom | Description | Valeur |
---|---|---|
azureBlobFileSystemConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | AzureFileShareConfiguration |
cifsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | CifsMountConfiguration |
nfsMountConfiguration | Cette propriété s’exclue mutuellement avec toutes les autres propriétés. | NFSMountConfiguration |
NetworkConfiguration
Nom | Description | Valeur |
---|---|---|
dynamicVnetAssignmentScope | Étendue de l’attribution de réseau virtuel dynamique. | 'job' 'none' |
enableAcceleratedNetworking | La mise en réseau accélérée permet une virtualisation d’E/S racine unique (SR-IOV) vers une machine virtuelle, ce qui peut entraîner une amélioration des performances réseau. Pour plus d’informations, consultez : /azure/virtual-network/accelerated-networking-overview. | Bool |
endpointConfiguration | La configuration du point de terminaison de pool est prise en charge uniquement sur les pools avec la propriété virtualMachineConfiguration. | PoolEndpointConfiguration |
publicIPAddressConfiguration | Cette propriété est uniquement prise en charge sur les pools avec la propriété virtualMachineConfiguration. | publicIPAddressConfiguration |
subnetId | Le réseau virtuel doit se trouver dans la même région et dans le même abonnement que le compte Azure Batch. Le sous-réseau spécifié doit avoir suffisamment d’adresses IP libres pour prendre en charge le nombre de nœuds dans le pool. Si le sous-réseau n’a pas suffisamment d’adresses IP gratuites, le pool alloue partiellement des nœuds de calcul et une erreur de redimensionnement se produit. Le principal de service « MicrosoftAzureBatch » doit avoir le rôle « Contributeur de machine virtuelle classique » Role-Based Contrôle d’accès (RBAC) pour le réseau virtuel spécifié. Le sous-réseau spécifié doit autoriser la communication du service Azure Batch à planifier des tâches sur les nœuds de calcul. Cela peut être vérifié en vérifiant si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés. Si la communication aux nœuds de calcul dans le sous-réseau spécifié est refusée par un groupe de sécurité réseau, le service Batch définit l’état des nœuds de calcul sur inutilisable. Si le réseau virtuel spécifié a des groupes de sécurité réseau (NSG) associés, quelques ports système réservés doivent être activés pour la communication entrante. Pour les pools créés avec une configuration de machine virtuelle, activez les ports 29876 et 29877, ainsi que le port 22 pour Linux et le port 3389 pour Windows. Pour les pools créés avec une configuration de service cloud, activez les ports 10100, 20100 et 30100. Activez également les connexions sortantes au stockage Azure sur le port 443. Pour les pools cloudServiceConfiguration, seuls les réseaux virtuels « classiques » sont pris en charge. Pour plus d’informations, consultez : /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | corde |
NetworkSecurityGroupRule
Nom | Description | Valeur |
---|---|---|
accès | Action qui doit être effectuée pour une adresse IP, une plage de sous-réseaux ou une balise spécifiée. | 'Autoriser' 'Deny' (obligatoire) |
priorité | Les priorités au sein d’un pool doivent être uniques et sont évaluées par ordre de priorité. Plus le nombre est faible, plus la priorité est élevée. Par exemple, les règles peuvent être spécifiées avec des numéros de commande de 150, 250 et 350. La règle avec le numéro d’ordre de 150 est prioritaire sur la règle dont l’ordre est de 250. Les priorités autorisées sont de 150 à 4096. Si des valeurs réservées ou dupliquées sont fournies, la requête échoue avec le code d’état HTTP 400. | int (obligatoire) |
sourceAddressPrefix | Les valeurs valides sont une seule adresse IP (c’est-à-dire 10.10.10.10), un sous-réseau IP (par exemple, 192.168.1.0/24), une balise par défaut ou * (pour toutes les adresses). Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. | chaîne (obligatoire) |
sourcePortRanges | Les valeurs valides sont « * » (pour tous les ports 0 - 65535) ou des tableaux de ports ou plages de ports (c’est-à-dire 100-200). Les ports doivent se trouver dans la plage de 0 à 65535 et les plages de ports ou ports ne peuvent pas se chevaucher. Si d’autres valeurs sont fournies, la requête échoue avec le code d’état HTTP 400. La valeur par défaut est *. | string[] |
NFSMountConfiguration
Nom | Description | Valeur |
---|---|---|
mountOptions | Il s’agit des options « net use » dans les options Windows et « mount » dans Linux. | corde |
relativeMountPath | Tous les systèmes de fichiers sont montés par rapport au répertoire de montage Batch, accessible via la variable d’environnement AZ_BATCH_NODE_MOUNTS_DIR. | chaîne (obligatoire) |
source | URI du système de fichiers à monter. | chaîne (obligatoire) |
NodePlacementConfiguration
Nom | Description | Valeur |
---|---|---|
politique | Stratégie d’allocation utilisée par le service Batch pour approvisionner les nœuds. S’il n’est pas spécifié, Batch utilise la stratégie régionale. | 'Régional' 'Zonal' |
OSDisk
Nom | Description | Valeur |
---|---|---|
Cache | Type de mise en cache à activer pour le disque. | 'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | Taille initiale du disque en Go lors de la création d’un disque de système d’exploitation. | Int |
ephemeralOSDiskSettings | Spécifie les paramètres de disque éphémères pour le disque du système d’exploitation utilisé par la machine virtuelle. | DiffDiskSettings |
managedDisk | ManagedDisk | |
writeAcceleratorEnabled | Spécifie si writeAccelerator doit être activé ou désactivé sur le disque. | Bool |
PoolEndpointConfiguration
Nom | Description | Valeur |
---|---|---|
inboundNatPools | Le nombre maximal de pools NAT entrants par pool Batch est de 5. Si le nombre maximal de pools NAT entrants est dépassé, la requête échoue avec le code d’état HTTP 400. Cela ne peut pas être spécifié si IPAddressProvisioningType est NoPublicIPAddresses. | inboundNatPool[] (obligatoire) |
PoolProperties
Nom | Description | Valeur |
---|---|---|
applicationLicenses | La liste des licences d’application doit être un sous-ensemble de licences d’application de service Batch disponibles. Si une licence n’est pas prise en charge, la création du pool échoue. | string[] |
applicationPackages | Les modifications apportées aux références de package d’application affectent tous les nouveaux nœuds de calcul qui rejoignent le pool, mais n’affectent pas les nœuds de calcul qui se trouvent déjà dans le pool tant qu’ils ne sont pas redémarrés ou réimages. Il existe au maximum 10 références de package d’application sur un pool donné. | applicationPackageReference[] |
Certificats | Pour les nœuds de calcul Windows, le service Batch installe les certificats dans le magasin de certificats et l’emplacement spécifiés. Pour les nœuds de calcul Linux, les certificats sont stockés dans un répertoire à l’intérieur du répertoire de travail de la tâche et une variable d’environnement AZ_BATCH_CERTIFICATES_DIR est fournie à la tâche pour interroger cet emplacement. Pour les certificats avec visibilité de « remoteUser », un répertoire « certificats » est créé dans le répertoire de base de l’utilisateur (par exemple, /home/{user-name}/certs) et les certificats sont placés dans ce répertoire. Avertissement : cette propriété est déconseillée et sera supprimée après février 2024. Utilisez plutôt l''extension Azure KeyVault. |
CertificateReference[] |
deploymentConfiguration | L’utilisation de CloudServiceConfiguration spécifie que les nœuds doivent être créés à l’aide d’Azure Cloud Services (PaaS), tandis que VirtualMachineConfiguration utilise des machines virtuelles Azure (IaaS). | DeploymentConfiguration |
displayName | Le nom complet n’a pas besoin d’être unique et peut contenir des caractères Unicode pouvant atteindre une longueur maximale de 1024. | corde |
interNodeCommunication | Cela impose des restrictions sur les nœuds qui peuvent être affectés au pool. L’activation de cette valeur peut réduire le nombre de nœuds demandé à allouer dans le pool. Si elle n’est pas spécifiée, cette valeur est définie par défaut sur « Disabled ». | 'Désactivé' 'Activé' |
métadonnées | Le service Batch n’affecte aucune signification aux métadonnées ; il s’agit uniquement de l’utilisation du code utilisateur. | MetadataItem[] |
mountConfiguration | Cela prend en charge Azure Files, NFS, CIFS/SMB et Blobfuse. | MountConfiguration[] |
networkConfiguration | Configuration réseau d’un pool. | networkConfiguration |
resourceTags | Balises définies par l’utilisateur à associer au pool Azure Batch. Quand elles sont spécifiées, ces balises sont propagées aux ressources Azure de stockage associées au pool. Cette propriété ne peut être spécifiée que lorsque le compte Batch a été créé avec la propriété poolAllocationMode définie sur « UserSubscription ». | PoolPropertiesResourceTags |
scaleSettings | Définit la taille souhaitée du pool. Il peut s’agir de « fixedScale » où les targetDedicatedNodes demandés sont spécifiés, ou « autoScale » qui définit une formule qui est régulièrement réévaluée. Si cette propriété n’est pas spécifiée, le pool aura une échelle fixe avec 0 targetDedicatedNodes. | scaleSettings |
startTask | Dans une opération PATCH (mise à jour), cette propriété peut être définie sur un objet vide pour supprimer la tâche de démarrage du pool. | startTask |
targetNodeCommunicationMode | Si elle est omise, la valeur par défaut est Default. | 'Classique' 'Default' 'Simplifié' |
taskSchedulingPolicy | S’il n’est pas spécifié, la valeur par défaut est répartie. | TaskSchedulingPolicy |
taskSlotsPerNode | La valeur par défaut est 1. La valeur maximale est la plus petite de 4 fois le nombre de cœurs de la vmSize du pool ou 256. | Int |
userAccounts | Liste des comptes d’utilisateur à créer sur chaque nœud du pool. | UserAccount[] |
vmSize | Pour plus d’informations sur les tailles disponibles de machines virtuelles pour les pools de services cloud (pools créés avec cloudServiceConfiguration), consultez Tailles pour les services cloud (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch prend en charge toutes les tailles de machine virtuelle cloud Services, à l’exception d’ExtraSmall. Pour plus d’informations sur les tailles de machines virtuelles disponibles pour les pools utilisant des images de la Place de marché des machines virtuelles (pools créés avec virtualMachineConfiguration) consultez Tailles pour les machines virtuelles (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) ou tailles pour les machines virtuelles (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch prend en charge toutes les tailles de machine virtuelle Azure, à l’exception des STANDARD_A0 et celles avec stockage Premium (STANDARD_GS, STANDARD_DS et série STANDARD_DSV2). | corde |
PoolPropertiesResourceTags
Nom | Description | Valeur |
---|
PublicIPAddressConfiguration
Nom | Description | Valeur |
---|---|---|
ipAddressIds | Le nombre d’adresses IP spécifiées ici limite la taille maximale du pool - 100 nœuds dédiés ou 100 nœuds Spot/basse priorité peuvent être alloués pour chaque adresse IP publique. Par exemple, un pool nécessitant 250 machines virtuelles dédiées aurait besoin d’au moins 3 adresses IP publiques spécifiées. Chaque élément de cette collection est de la forme : /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}. | string[] |
disposition | La valeur par défaut est BatchManaged | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
Nom | Description | Valeur |
---|---|---|
autoStorageContainerName | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. | corde |
blobPrefix | La propriété est valide uniquement lorsque autoStorageContainerName ou storageContainerUrl est utilisé. Ce préfixe peut être un nom de fichier partiel ou un sous-répertoire. Si aucun préfixe n’est spécifié, tous les fichiers du conteneur sont téléchargés. | corde |
fileMode | Cette propriété s’applique uniquement aux fichiers téléchargés sur des nœuds de calcul Linux. Il sera ignoré s’il est spécifié pour un resourceFile qui sera téléchargé sur un nœud Windows. Si cette propriété n’est pas spécifiée pour un nœud Linux, la valeur par défaut 0770 est appliquée au fichier. | corde |
filePath | Si la propriété httpUrl est spécifiée, filePath est requis et décrit le chemin vers lequel le fichier sera téléchargé, y compris le nom de fichier. Sinon, si la propriété autoStorageContainerName ou storageContainerUrl est spécifiée, filePath est facultatif et est le répertoire dans lequel télécharger les fichiers. Dans le cas où filePath est utilisé comme répertoire, toute structure de répertoires déjà associée aux données d’entrée sera conservée dans son intégralité et ajoutée au répertoire filePath spécifié. Le chemin d’accès relatif spécifié ne peut pas décomposer le répertoire de travail de la tâche (par exemple à l’aide de '..'). | corde |
httpUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Si l’URL pointe vers stockage Blob Azure, elle doit être lisible à partir de nœuds de calcul. Il existe trois façons d’obtenir cette URL pour un objet blob dans le stockage Azure : incluez une signature d’accès partagé (SAP) accordant des autorisations de lecture sur l’objet blob, utilisez une identité managée avec une autorisation de lecture ou définissez la liste de contrôle d’accès pour l’objet blob ou son conteneur afin d’autoriser l’accès public. | corde |
identityReference | Référence à une identité affectée par l’utilisateur associée au pool Batch qu’un nœud de calcul utilisera. | ComputeNodeIdentityReference |
storageContainerUrl | Les propriétés autoStorageContainerName, storageContainerUrl et httpUrl s’excluent mutuellement et l’une d’elles doit être spécifiée. Cette URL doit être lisible et listable à partir de nœuds de calcul. Il existe trois façons d’obtenir une telle URL pour un conteneur dans le stockage Azure : inclure une signature d’accès partagé (SAP) accordant des autorisations de lecture et de liste sur le conteneur, utiliser une identité managée avec des autorisations de lecture et de liste, ou définir la liste de contrôle d’accès pour le conteneur afin d’autoriser l’accès public. | corde |
ScaleSettings
Nom | Description | Valeur |
---|---|---|
mise à l’échelle automatique | Cette propriété et fixedScale s’excluent mutuellement et l’une des propriétés doit être spécifiée. | AutoScaleSettings |
fixedScale | Cette propriété et cette mise à l’échelle automatique sont mutuellement exclusives et l’une des propriétés doit être spécifiée. | fixedScaleSettings |
SecurityProfile
Nom | Description | Valeur |
---|---|---|
encryptionAtHost | Cette propriété peut être utilisée par l’utilisateur dans la demande pour activer ou désactiver le chiffrement de l’hôte pour la machine virtuelle ou le groupe de machines virtuelles identiques. Cela active le chiffrement pour tous les disques, y compris le disque Resource/Temp sur l’hôte lui-même. | Bool |
securityType | Spécifie le SecurityType de la machine virtuelle. Il doit être défini sur n’importe quelle valeur spécifiée pour activer UefiSettings. | 'trustedLaunch' |
uefiSettings | Spécifie les paramètres de sécurité tels que le démarrage sécurisé et vTPM utilisés lors de la création de la machine virtuelle. | UefiSettings |
ServiceArtifactReference
Nom | Description | Valeur |
---|---|---|
id | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | chaîne (obligatoire) |
StartTask
Nom | Description | Valeur |
---|---|---|
commandLine | La ligne de commande ne s’exécute pas sous un interpréteur de commandes et ne peut donc pas tirer parti des fonctionnalités de l’interpréteur de commandes telles que l’extension de variable d’environnement. Si vous souhaitez tirer parti de ces fonctionnalités, vous devez appeler l’interpréteur de commandes dans la ligne de commande, par exemple en utilisant « cmd /c MyCommand » dans Windows ou « /bin/sh -c MyCommand » dans Linux. Obligatoire si d’autres propriétés de startTask sont spécifiées. | corde |
containerSettings | Lorsque cela est spécifié, tous les répertoires sont récursifs sous la AZ_BATCH_NODE_ROOT_DIR (la racine des répertoires Azure Batch sur le nœud) sont mappés dans le conteneur, toutes les variables d’environnement de tâche sont mappées dans le conteneur et la ligne de commande de tâche est exécutée dans le conteneur. | TaskContainerSettings |
environmentSettings | Liste des paramètres de variable d’environnement pour la tâche de démarrage. | EnvironmentSetting[] |
maxTaskRetryCount | Le service Batch retente une tâche si son code de sortie n’est pas différent de zéro. Notez que cette valeur contrôle spécifiquement le nombre de nouvelles tentatives. Le service Batch essaie la tâche une fois, puis peut réessayer jusqu’à cette limite. Par exemple, si le nombre maximal de nouvelles tentatives est égal à 3, Batch tente la tâche jusqu’à 4 fois (une tentative initiale et 3 nouvelles tentatives). Si le nombre maximal de nouvelles tentatives est égal à 0, le service Batch ne réessaye pas la tâche. Si le nombre maximal de nouvelles tentatives est -1, le service Batch retente la tâche sans limite. La valeur par défaut est 0 | Int |
resourceFiles | Liste des fichiers que le service Batch télécharge sur le nœud de calcul avant d’exécuter la ligne de commande. | ResourceFile[] |
userIdentity | Si elle est omise, la tâche s’exécute en tant qu’utilisateur non administratif unique à la tâche. | userIdentity |
waitForSuccess | Si la valeur est true et que la tâche de démarrage échoue sur un nœud de calcul, le service Batch retente la tâche de démarrage jusqu’à son nombre maximal de nouvelles tentatives (maxTaskRetryCount). Si la tâche n’est toujours pas terminée après toutes les nouvelles tentatives, le service Batch marque le nœud de calcul inutilisable et ne planifie pas les tâches. Cette condition peut être détectée via l’état du nœud et la planification des détails d’erreur. Si la valeur est false, le service Batch n’attend pas la fin de la tâche de démarrage. Dans ce cas, d’autres tâches peuvent commencer à s’exécuter sur le nœud de calcul pendant que la tâche de démarrage est toujours en cours d’exécution ; et même si la tâche de démarrage échoue, les nouvelles tâches continueront d’être planifiées sur le nœud. La valeur par défaut est true. | Bool |
TaskContainerSettings
TaskSchedulingPolicy
Nom | Description | Valeur |
---|---|---|
nodeFillType | Comment les tâches doivent être distribuées entre les nœuds de calcul. | 'Pack' 'Spread' (obligatoire) |
UefiSettings
Nom | Description | Valeur |
---|---|---|
secureBootEnabled | Spécifie si le démarrage sécurisé doit être activé sur la machine virtuelle. | Bool |
vTpmEnabled | Spécifie si vTPM doit être activé sur la machine virtuelle. | Bool |
UserAccount
Nom | Description | Valeur |
---|---|---|
elevationLevel | nonAdmin : l’utilisateur automatique est un utilisateur standard sans accès élevé. administrateur : l’utilisateur automatique est un utilisateur disposant d’un accès élevé et fonctionne avec des autorisations d’administrateur complètes. La valeur par défaut n’est pasAdmin. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Cette propriété est ignorée si elle est spécifiée sur un pool Windows. S’il n’est pas spécifié, l’utilisateur est créé avec les options par défaut. | LinuxUserConfiguration |
nom | Nom du compte d’utilisateur. Les noms peuvent contenir n’importe quel caractère Unicode jusqu’à une longueur maximale de 20. | chaîne (obligatoire) |
mot de passe | Mot de passe du compte d’utilisateur. | corde Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. (obligatoire) |
windowsUserConfiguration | Cette propriété ne peut être spécifiée que si l’utilisateur se trouve sur un pool Windows. S’il n’est pas spécifié et sur un pool Windows, l’utilisateur est créé avec les options par défaut. | windowsUserConfiguration |
UserAssignedIdentities
Nom | Description | Valeur |
---|
UserIdentity
VirtualMachineConfiguration
Nom | Description | Valeur |
---|---|---|
containerConfiguration | Si elle est spécifiée, le programme d’installation est effectué sur chaque nœud du pool pour permettre l’exécution des tâches dans des conteneurs. Toutes les tâches régulières et les tâches du gestionnaire de travaux s’exécutent sur ce pool doivent spécifier la propriété containerSettings, et toutes les autres tâches peuvent la spécifier. | ContainerConfiguration |
dataDisks | Cette propriété doit être spécifiée si les nœuds de calcul du pool doivent avoir des disques de données vides attachés. | DataDisk[] |
diskEncryptionConfiguration | Si spécifié, le chiffrement est effectué sur chaque nœud du pool pendant l’approvisionnement de nœuds. | DiskEncryptionConfiguration |
Extensions | Si elle est spécifiée, les extensions mentionnées dans cette configuration sont installées sur chaque nœud. | VMExtension [] |
imageReference | Référence à une image de la Place de marché des machines virtuelles Azure ou à la ressource Image Azure d’une machine virtuelle personnalisée. Pour obtenir la liste de toutes les images Vérifiées par Azure Batch, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | ImageReference (obligatoire) |
licenseType | Cela s’applique uniquement aux images qui contiennent le système d’exploitation Windows et ne doivent être utilisées que lorsque vous conservez des licences locales valides pour les nœuds qui seront déployés. En cas d’omission, aucune remise de licence locale n’est appliquée. Les valeurs sont les suivantes : Windows_Server : la licence locale est destinée à Windows Server. Windows_Client : la licence locale est destinée au client Windows. |
corde |
nodeAgentSkuId | L’agent de nœud Batch est un programme qui s’exécute sur chaque nœud du pool et fournit l’interface de commande et de contrôle entre le nœud et le service Batch. Il existe différentes implémentations de l’agent de nœud, appelées références SKU, pour différents systèmes d’exploitation. Vous devez spécifier une référence SKU de l’agent de nœud qui correspond à la référence d’image sélectionnée. Pour obtenir la liste des références SKU de l’agent de nœud prises en charge, ainsi que leur liste de références d’images vérifiées, consultez l’opération « Répertorier les références SKU de l’agent de nœud prises en charge ». | chaîne (obligatoire) |
nodePlacementConfiguration | Cette configuration spécifie des règles sur la façon dont les nœuds du pool seront alloués physiquement. | NodePlacementConfiguration |
osDisk | Contient la configuration des paramètres OSDisk éphémères. | osDisk |
securityProfile | Spécifie les paramètres de profil de sécurité de la machine virtuelle ou du groupe de machines virtuelles identiques. | SecurityProfile |
serviceArtifactReference | ID de référence de l’artefact de service sous la forme de /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} | ServiceArtifactReference |
windowsConfiguration | Cette propriété ne doit pas être spécifiée si l’imageReference spécifie une image de système d’exploitation Linux. | windowsConfiguration |
VMExtension
Nom | Description | Valeur |
---|---|---|
autoUpgradeMinorVersion | Indique si l’extension doit utiliser une version mineure plus récente si elle est disponible au moment du déploiement. Une fois déployée, toutefois, l’extension ne met pas à niveau les versions mineures, sauf si elle est redéployée, même avec cette propriété définie sur true. | Bool |
enableAutomaticUpgrade | Indique si l’extension doit être automatiquement mise à niveau par la plateforme s’il existe une version plus récente de l’extension disponible. | Bool |
nom | Nom de l’extension de machine virtuelle. | chaîne (obligatoire) |
protectedSettings | L’extension peut contenir protectedSettings ou protectedSettingsFromKeyVault ou aucun paramètre protégé du tout. | quelconque |
provisionAfterExtensions | Collection de noms d’extensions après lesquels cette extension doit être provisionnée. | string[] |
éditeur | Nom du serveur de publication du gestionnaire d’extensions. | chaîne (obligatoire) |
Paramètres | Paramètres publics au format JSON pour l’extension. | quelconque |
type | Type des extensions. | chaîne (obligatoire) |
typeHandlerVersion | Version du gestionnaire de scripts. | corde |
WindowsConfiguration
Nom | Description | Valeur |
---|---|---|
enableAutomaticUpdates | Si elle est omise, la valeur par défaut est true. | Bool |
WindowsUserConfiguration
Nom | Description | Valeur |
---|---|---|
loginMode | Spécifie le mode de connexion pour l’utilisateur. La valeur par défaut pour les pools VirtualMachineConfiguration est le mode interactif et pour les pools CloudServiceConfiguration est le mode batch. | 'Batch' 'Interactive' |