Share via


AzureVmssDeployment@0 – Tarefa v0 de implantação do conjunto de dimensionamento de VMs do Azure

Essa tarefa implanta uma imagem do 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 - Assinatura do Azure
Alias de entrada: ConnectedServiceName. string. Obrigatórios.

Especifica a assinatura de Resource Manager do Azure para o conjunto de dimensionamento.


action - Ação
string. Obrigatórios. Valores permitidos: Update image (Atualizar conjunto de dimensionamento de VMs usando uma imagem) Configure application startup (Executar extensão de VM de Script Personalizado no conjunto de dimensionamento de VMs). Valor padrão: Update image.

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

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

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


vmssName - Nome do conjunto de dimensionamento de máquinas virtuais
string. Obrigatórios.

Especifica o nome da configuração de escala da VM a ser atualizada. Use uma imagem VHD ou uma extensão de VM de script personalizado.


vmssOsType - Tipo de sistema operacional
string. Obrigatórios. Valores Permitidos: Windows e Linux.

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


imageUrl - URL da imagem
string. Obrigatório quando action = Update image || action = UpdateImage.

Especifica a URL da imagem VHD. Se for uma URL de blob de armazenamento do Azure, o local da conta de armazenamento será o mesmo que o local do conjunto de dimensionamento.


customScriptsDirectory - Diretório de script personalizado
string. Opcional. Use 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 usando a Extensão de VM de Script Personalizado. A abordagem da extensão é útil para configuração pós-implantação, instalação de aplicativo/software ou qualquer outra tarefa de configuração/gerenciamento de aplicativo. Por exemplo, o script pode definir uma variável de ambiente de nível de computador que o aplicativo usa, como cadeias de conexão de banco de dados.


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

Opcional. O script executado usando a Extensão de VM de Script Personalizado. Esse script pode invocar outros scripts no diretório e é invocado com os argumentos passados abaixo.
Em conjunto com esses argumentos, esse script pode ser usado para executar comandos.

Por exemplo:

  1. Update-DatabaseConnectionStrings.ps1 -clusterType dev -user $(dbUser) -password $(dbUserPwd)atualiza o cadeia de conexão no web.config do aplicativo Web.
  2. install-secrets.sh --key-vault-type prod -key serviceprincipalkey cria um arquivo criptografado que contém uma chave de entidade de serviço.

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

Opcional. O script personalizado será invocado com argumentos passados. Variáveis de build/versão podem ser usadas, o que facilita o uso de segredos.


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

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


skipArchivingCustomScripts - Ignorar scripts personalizados de arquivamento
boolean. Valor padrão: false.

Opcional. Por padrão, essa tarefa cria um arquivo compactado do diretório que contém os scripts personalizados. Isso melhora o desempenho e a confiabilidade ao carregar no armazenamento do Azure. Se não for selecionado, o arquivamento não será feito e todos os arquivos serão carregados individualmente.


Opções de controle da tarefa

Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Comentários

Use essa tarefa para implantar uma imagem do conjunto de dimensionamento de máquinas virtuais.

A execução do script é relatada como bem-sucedida, 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 como as VMs são atualizadas com o modelo de conjunto de dimensionamento mais recente e, se a política de atualização estiver definida como manual, você deverá atualizar manualmente cada VM. Para obter mais informações, consulte Como atualizar as VMs com o modelo de conjunto de dimensionamento mais recente. Você pode alterar a política de atualização ou atualizar manualmente cada VM. Por exemplo, para atualizar a política para Automatic, use 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”

Esse problema ocorrerá se você tentar executar um script personalizado, mas o script não for executável.

Para resolve o problema, primeiro verifique se a entrada customScript não tem ./ ou qualquer outra coisa antes do nome do script 'test.sh':

    customScript: 'test.sh'

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

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

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Executa em Agent, DeploymentGroup
Demandas Nenhum
Funcionalidades Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.0.0 ou superior
Categoria da tarefa Implantar