Share via


AzureVmssDeployment@0 - Tâche de déploiement v0 de groupe de machines virtuelles identiques Azure

Cette tâche déploie une image de groupe de machines virtuelles identiques.

Syntax

# Azure VM scale set deployment v0
# Deploy a virtual machine scale set image.
- task: AzureVmssDeployment@0
  inputs:
  # Azure Details
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    action: 'Update image' # 'Update image' | 'Configure application startup'. Required. Action. Default: Update image.
    vmssName: # string. Required. Virtual Machine scale set name. 
    vmssOsType: # 'Windows' | 'Linux'. Required. OS type. 
  # Image Details
    #imageUrl: # string. Required when action = Update image || action = UpdateImage. Image URL. 
  # Configure start-up
    #customScriptsDirectory: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Custom script directory. 
    #customScript: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Command. 
    #customScriptArguments: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Arguments. 
    #customScriptsStorageAccount: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Azure storage account where custom scripts will be uploaded. 
  # Advanced
    #skipArchivingCustomScripts: false # boolean. Skip Archiving custom scripts. Default: false.
# Azure VM scale set Deployment v0
# Deploy Virtual Machine scale set image.
- task: AzureVmssDeployment@0
  inputs:
  # Azure Details
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    action: 'Update image' # 'Update image' | 'Configure application startup'. Required. Action. Default: Update image.
    vmssName: # string. Required. Virtual Machine scale set name. 
    vmssOsType: # 'Windows' | 'Linux'. Required. OS type. 
  # Image Details
    #imageUrl: # string. Required when action = Update image || action = UpdateImage. Image URL. 
  # Configure start-up
    #customScriptsDirectory: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Custom script directory. 
    #customScript: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Command. 
    #customScriptArguments: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Arguments. 
    #customScriptsStorageAccount: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Azure storage account where custom scripts will be uploaded. 
  # Advanced
    #skipArchivingCustomScripts: false # boolean. Skip Archiving custom scripts. Default: false.

Entrées

azureSubscription - Abonnement Azure
Alias d’entrée : ConnectedServiceName. string. Obligatoire.

Spécifie l’abonnement Azure Resource Manager pour le groupe identique.


action - Action
string. Obligatoire. Valeurs autorisées : Update image (Mettre à jour le groupe de machines virtuelles identiques à l’aide d’une image), Configure application startup (Exécuter l’extension de machine virtuelle de script personnalisé sur le groupe identique de machines virtuelles). Valeur par défaut : Update image.

Mises à jour un groupe de machines virtuelles identiques par la méthode choisie, à l’aide d’une image de disque dur virtuel et/ou en exécutant des scripts de déploiement/installation à l’aide de l’extension de machine virtuelle de script personnalisé.

L’approche d’image VHD est meilleure pour la mise à l’échelle rapidement et la restauration. Lorsqu’un groupe de machines virtuelles identiques est créé à l’aide d’une image personnalisée, il peut être mis à jour par une image de disque dur virtuel. La mise à jour échoue si le groupe de machines virtuelles identiques a été créé à l’aide d’une image de plateforme/galerie disponible dans Azure.

L’approche d’extension de machine virtuelle de script personnalisé est utile pour la configuration post-déploiement, l’installation de logiciels ou toute autre tâche de configuration/gestion. L’approche d’extension de machine virtuelle de script personnalisé peut être utilisée pour un groupe de machines virtuelles identiques créé à l’aide d’une image personnalisée ou d’une image de plateforme/galerie.


vmssName - Nom du groupe de machines virtuelles identiques
string. Obligatoire.

Spécifie le nom du paramètre de mise à l’échelle de la machine virtuelle à mettre à jour. Utilisez une image de disque dur virtuel ou une extension de machine virtuelle de script personnalisé.


vmssOsType - Type de système d’exploitation
string. Obligatoire. Valeurs autorisées : Windows, Linux.

Spécifie le type de système d’exploitation du groupe de machines virtuelles identiques.


imageUrl - URL de l’image
string. Nécessaire lorsque action = Update image || action = UpdateImage.

Spécifie l’URL de l’image de disque dur virtuel. S’il s’agit d’une URL d’objet blob de stockage Azure, l’emplacement du compte de stockage est identique à l’emplacement du groupe identique.


customScriptsDirectory - Répertoire de script personnalisé
string. facultatif. Utilisez quand action = Configure application startup || action = Update image || action = UpdateImage.

facultatif. Chemin d’accès au répertoire contenant le ou les scripts personnalisés exécutés à l’aide de l’extension de machine virtuelle de script personnalisé. L’approche de l’extension est utile pour la configuration post-déploiement, l’application/l’installation logicielle ou toute autre tâche de configuration/gestion d’application. Par exemple, le script peut définir une variable d’environnement au niveau de l’ordinateur que l’application utilise, comme les chaînes de connexion de base de données.


customScript - Commande
string. facultatif. Utilisez quand action = Configure application startup || action = Update image || action = UpdateImage.

facultatif. Script exécuté à l’aide de l’extension de machine virtuelle de script personnalisé. Ce script peut appeler d’autres scripts dans le répertoire et est appelé avec les arguments passés ci-dessous.
Conjointement avec ces arguments, ce script peut être utilisé pour exécuter des commandes.

Par exemple :

  1. Update-DatabaseConnectionStrings.ps1 -clusterType dev -user $(dbUser) -password $(dbUserPwd)met à jour le chaîne de connexion de web.config l’application web.
  2. install-secrets.sh --key-vault-type prod -key serviceprincipalkey crée un fichier chiffré contenant une clé de principal de service.

customScriptArguments - Arguments
string. facultatif. Utilisez quand action = Configure application startup || action = Update image || action = UpdateImage.

facultatif. Le script personnalisé est appelé avec les arguments passés. Les variables de génération/mise en production peuvent être utilisées, ce qui facilite l’utilisation des secrets.


customScriptsStorageAccount - Compte de stockage Azure dans lequel les scripts personnalisés seront chargés
string. facultatif. Utilisez quand action = Configure application startup || action = Update image || action = UpdateImage.

facultatif. L’extension de script personnalisé télécharge et exécute les scripts fournis sur chaque machine virtuelle du groupe de machines virtuelles identiques. Ces scripts seront stockés dans le compte de stockage ARM préexistant spécifié ici.


skipArchivingCustomScripts - Ignorer l’archivage des scripts personnalisés
boolean. Valeur par défaut : false.

facultatif. Par défaut, cette tâche crée une archive compressée du répertoire contenant les scripts personnalisés. Cela améliore les performances et la fiabilité lors du chargement dans le stockage Azure. Si ce n’est pas le cas, l’archivage n’est pas effectué et tous les fichiers sont chargés individuellement.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Utilisez cette tâche pour déployer une image de groupe de machines virtuelles identiques.

L’exécution du script est signalée comme réussie, mais les instances VMSS ne sont pas mises à jour

Les groupes identiques ont une stratégie de mise à niveau qui détermine comment les machines virtuelles sont mises à jour avec le dernier modèle de groupe identique. Si la stratégie de mise à niveau est définie manuellement, vous devez mettre à niveau manuellement chaque machine virtuelle. Pour plus d’informations, consultez Comment mettre à jour des machines virtuelles avec le dernier modèle de groupe identique. Vous pouvez modifier la stratégie de mise à jour ou mettre à niveau manuellement chaque machine virtuelle. Par exemple, pour mettre à niveau la stratégie vers Automatic, utilisez la commande CLI Az suivante : az vmss update --set upgradePolicy.mode=Automatic -g <resource group name> -n <vmss name>

Erreur : « Autorisation refusée : Le script n’est pas exécutable »

Ce problème se produit si vous essayez d’exécuter un script personnalisé, mais que le script n’est pas exécutable.

Pour résoudre le problème, commencez par vous assurer que l’entrée customScript n’a pas ./ ou autre chose avant le nom du script 'test.sh' :

    customScript: 'test.sh'

Ensuite, essayez d’ajouter une tâche de ligne de commande avant la tâche de groupe de machines virtuelles identiques :

    - task: CmdLine@2
      inputs:
        script: 'chmod 777 $(System.DefaultWorkingDirectory)/test.sh' 

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commande Quelconque
Variables paramétrables Quelconque
Version de l’agent 2.0.0 ou version ultérieure
Catégorie de la tâche Déployer