Compartir vía


AzureVmssDeployment@0: tarea de implementación de conjuntos de escalado de máquinas virtuales de Azure v0

Esta tarea implementa una imagen de conjunto de escalado de máquinas virtuales.

Sintaxis

# 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.

Entradas

azureSubscription - de suscripción de Azure
Alias de entrada: ConnectedServiceName. string. Obligatorio.

Especifica la suscripción de Azure Resource Manager para el conjunto de escalado.


action - acción
string. Obligatorio. Valores permitidos: Update image (actualizar el conjunto de escalado de máquinas virtuales mediante una imagen), Configure application startup (ejecutar la extensión de máquina virtual script personalizado en el conjunto de escalado de máquinas virtuales). Valor predeterminado: Update image.

Actualiza un conjunto de escalado de máquinas virtuales por el método elegido, mediante una imagen de VHD o mediante la ejecución de scripts de implementación e instalación mediante la extensión de máquina virtual script personalizado.

el enfoque de imagen de VHD es mejor para escalar rápidamente y realizar la reversión. Cuando se crea un conjunto de escalado de máquinas virtuales mediante una imagen personalizada, se puede actualizar mediante una imagen VHD. Se producirá un error en la actualización si el conjunto de escalado de máquinas virtuales se creó mediante una imagen de plataforma o galería disponible en Azure.

el enfoque de extensión de máquina virtual script personalizado resulta útil para la configuración posterior a la implementación, la instalación de software o cualquier otra tarea de configuración o administración. El enfoque de extensión de máquina virtual de script personalizado se puede usar para un conjunto de escalado de máquinas virtuales creado mediante una imagen personalizada o una imagen de plataforma o galería.


vmssName - nombre del conjunto de escalado de máquinas virtuales
string. Obligatorio.

Especifica el nombre de la configuración de escalado de máquinas virtuales que se va a actualizar. Use una imagen de VHD o una extensión de máquina virtual de script personalizado.


vmssOsType - tipo de sistema operativo
string. Obligatorio. Valores permitidos: Windows, Linux.

Especifica el tipo de sistema operativo del conjunto de escalado de máquinas virtuales.


imageUrl - dirección URL de imagen
string. Obligatorio cuando action = Update image || action = UpdateImage.

Especifica la dirección URL de la imagen de disco duro virtual. Si es una dirección URL de blob de Azure Storage, la ubicación de la cuenta de almacenamiento es la misma que la ubicación del conjunto de escalado.


customScriptsDirectory - directorio de scripts personalizados
string. Opcional. Use cuando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. Ruta de acceso al directorio que contiene los scripts personalizados que se ejecutan mediante la extensión de máquina virtual de script personalizado. El enfoque de extensión es útil para la configuración posterior a la implementación, la instalación de aplicaciones o software o cualquier otra tarea de configuración o administración de aplicaciones. Por ejemplo, el script puede establecer una variable de entorno de nivel de máquina que usa la aplicación, como las cadenas de conexión de base de datos.


customScript - comando
string. Opcional. Use cuando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. Script que se ejecuta mediante la extensión de máquina virtual script personalizado. Este script puede invocar otros scripts en el directorio y se invoca con los argumentos que se pasan a continuación.
Junto con estos argumentos, este script se puede usar para ejecutar comandos.

Por ejemplo:

  1. Update-DatabaseConnectionStrings.ps1 -clusterType dev -user $(dbUser) -password $(dbUserPwd) actualiza la cadena de conexión en web.config de la aplicación web.
  2. install-secrets.sh --key-vault-type prod -key serviceprincipalkey crea un archivo cifrado que contiene una clave de entidad de servicio.

argumentos de
string. Opcional. Use cuando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. El script personalizado se invocará con argumentos pasados. Las variables de compilación y versión se pueden usar, lo que facilita el uso de secretos.


customScriptsStorageAccount - cuenta de Azure Storage donde se cargarán scripts personalizados
string. Opcional. Use cuando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. La extensión de script personalizado descarga y ejecuta los scripts proporcionados en cada máquina virtual del conjunto de escalado de máquinas virtuales. Estos scripts se almacenarán en la cuenta de almacenamiento arm preexistente especificada aquí.


skipArchivingCustomScripts - Omitir el archivado de scripts personalizados
boolean. Valor predeterminado: false.

Opcional. De forma predeterminada, esta tarea crea un archivo comprimido del directorio que contiene los scripts personalizados. Esto mejora el rendimiento y la confiabilidad al cargar en Azure Storage. Si no se selecciona, el archivado no se realizará y todos los archivos se cargarán individualmente.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Observaciones

Use esta tarea para implementar una imagen de conjunto de escalado de máquinas virtuales.

La ejecución del script se notifica como correcta, pero las instancias de VMSS no se actualizan.

Los conjuntos de escalado tienen una directiva de actualización que determina cómo se llevan las máquinas virtuales up-to-date con el modelo de conjunto de escalado más reciente y, si la directiva de actualización está establecida en manual, debe actualizar manualmente cada máquina virtual. Para obtener más información, consulte How to bring VMs up-to-date with the latest scale set model. Puede cambiar la directiva de actualización o actualizar manualmente cada máquina virtual. Por ejemplo, para actualizar la directiva a Automatic, use el siguiente comando de la CLI de Az: az vmss update --set upgradePolicy.mode=Automatic -g <resource group name> -n <vmss name>

Error: "Permiso denegado: el script no es ejecutable"

Este problema se produce si intenta ejecutar un script personalizado, pero el script no es ejecutable.

Para resolver el problema, asegúrese primero de que la entrada customScript no tenga ./ ni nada más antes del nombre del script 'test.sh':

    customScript: 'test.sh'

A continuación, intente agregar una tarea de línea de comandos antes de la tarea del conjunto de escalado de máquinas virtuales:

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

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
demandas Ninguno
funcionalidades de Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquier
variables settable Cualquier
Versión del agente 2.209.0 o superior
Categoría de tarea Desplegar
Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
demandas Ninguno
funcionalidades de Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquier
variables settable Cualquier
Versión del agente 2.0.0 o superior
Categoría de tarea Desplegar