AzureVmssDeployment@0 - Tarefa v0 de implementação do conjunto de dimensionamento de VMs do Azure

Esta tarefa implementa uma imagem de conjunto de dimensionamento de Máquinas Virtuais.

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.

Entradas

azureSubscription - Subscrição do Azure
Alias de entrada: ConnectedServiceName. string. Obrigatório.

Especifica a subscrição do Azure Resource Manager para o conjunto de dimensionamento.


action - Ação
string. Obrigatório. Valores permitidos: Update image (Atualizar conjunto de dimensionamento de VMs com uma imagem) Configure application startup (Execute a extensão de VM de Script Personalizado no conjunto de dimensionamento de VMs). Valor predefinido: Update image.

Atualizações um conjunto de dimensionamento de VMs pelo método escolhido, utilizando uma imagem VHD e/ou executando scripts de implementação/instalação com a Extensão de VM de Script Personalizado.

A abordagem da imagem do VHD é melhor para dimensionar rapidamente e efetuar a reversão. Quando um conjunto de dimensionamento de VMs é criado com uma imagem personalizada, pode ser atualizado por uma imagem VHD. A atualização falhará se o conjunto de dimensionamento de VMs tiver sido criado com uma imagem de plataforma/galeria disponível no Azure.

A abordagem da Extensão de VM de Script Personalizado é útil para configuração pós-implementação, instalação de software ou qualquer outra tarefa de configuração/gestão. A abordagem da Extensão de VM de Script Personalizado pode ser utilizada para um conjunto de dimensionamento de VMs criado através de uma imagem personalizada ou de uma imagem de plataforma/galeria.


vmssName - Nome do conjunto de dimensionamento de Máquinas Virtuais
string. Obrigatório.

Especifica o nome da definição de dimensionamento de VMs a atualizar. Utilize uma imagem VHD ou uma Extensão de VM de Script Personalizado.


vmssOsType - Tipo de SO
string. Obrigatório. Valores permitidos: Windows, Linux.

Especifica o tipo de sistema operativo do conjunto de dimensionamento de VMs.


imageUrl - URL da Imagem
string. Necessário quando action = Update image || action = UpdateImage.

Especifica o URL da imagem do VHD. Se for um URL de blob de armazenamento do Azure, a localização da conta de armazenamento é a mesma que a localização do conjunto de dimensionamento.


customScriptsDirectory - Diretório de script personalizado
string. Opcional. Utilize quando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. O caminho para o diretório que contém os scripts personalizados que são executados com a Extensão de VM de Script Personalizado. A abordagem da extensão é útil para configuração pós-implementação, instalação de aplicações/software ou qualquer outra tarefa de configuração/gestão de aplicações. Por exemplo, o script pode definir uma variável de ambiente ao nível do computador que a aplicação utiliza, como cadeias de ligação de base de dados.


customScript - Comando
string. Opcional. Utilize quando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. O script que é executado com a Extensão de VM de Script Personalizado. Este script pode invocar outros scripts no diretório e é invocado com os argumentos transmitidos abaixo.
Em conjunto com esses argumentos, este script pode ser utilizado para executar comandos.

Por exemplo:

  1. Update-DatabaseConnectionStrings.ps1 -clusterType dev -user $(dbUser) -password $(dbUserPwd)atualiza o cadeia de ligação na web.config aplicação Web.
  2. install-secrets.sh --key-vault-type prod -key serviceprincipalkey cria um ficheiro encriptado que contém uma chave do principal de serviço.

customScriptArguments - Argumentos
string. Opcional. Utilize quando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. O script personalizado será invocado com argumentos transmitidos. Podem ser utilizadas variáveis de compilação/versão, o que facilita a utilização de segredos.


customScriptsStorageAccount - Conta de armazenamento do Azure onde os scripts personalizados serão carregados
string. Opcional. Utilize quando action = Configure application startup || action = Update image || action = UpdateImage.

Opcional. A Extensão de Script Personalizado transfere e executa os scripts fornecidos em cada máquina virtual no conjunto de dimensionamento de VMs. Estes scripts serão armazenados na conta de armazenamento do ARM pré-existente especificada aqui.


skipArchivingCustomScripts - Ignorar scripts personalizados de Arquivo
boolean. Valor predefinido: false.

Opcional. Por predefinição, esta tarefa cria um arquivo comprimido do diretório que contém os scripts personalizados. Isto melhora o desempenho e a fiabilidade ao carregar para o armazenamento do Azure. Se não estiver selecionado, o arquivo não será feito e todos os ficheiros serão carregados individualmente.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Utilize esta tarefa para implementar uma imagem de conjunto de dimensionamento de Máquinas Virtuais.

A execução do script é comunicada com êxito, no entanto, as instâncias do VMSS não são atualizadas

Os conjuntos de dimensionamento têm uma política de atualização que determina a forma como as VMs são atualizadas com o modelo de conjunto de dimensionamento mais recente e se a política de atualização está definida como manual, tem de atualizar manualmente cada VM. Para obter mais informações, veja Como atualizar as VMs com o modelo de conjunto de dimensionamento mais recente. Pode alterar a política de atualização ou atualizar manualmente cada VM. Por exemplo, para atualizar a política para Automatic, utilize o seguinte comando da CLI do Az: az vmss update --set upgradePolicy.mode=Automatic -g <resource group name> -n <vmss name>

Erro: "Permissão negada: O script não é executável"

Este problema ocorre se tentar executar um script personalizado, mas o script não for executável.

Para resolver o problema, primeiro certifique-se de que a customScript entrada não tem ./ ou qualquer outra coisa antes do nome 'test.sh'do script:

    customScript: 'test.sh'

Em seguida, tente adicionar uma tarefa de linha de comandos antes da tarefa do conjunto de dimensionamento de máquinas virtuais:

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

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente 2.0.0 ou superior
Categoria da tarefa Implementação