

# Usar o agente do EC2Launch v2 para realizar tarefas durante a execução da instância EC2 Windows
<a name="ec2launch-v2"></a>

Todas as instâncias compatíveis do Amazon EC2 iniciadas em AMIs da AWS com o Windows Server 2022 e o Windows Server 2025 incluem o agente de inicialização do EC2Launch v2 (`EC2Launch.exe`) por padrão. Também fornecemos AMIs do Windows Server 2016 e 2019 com o EC2Launch v2 instalado como o agente padrão de execução. Essas AMIs são fornecidas além das AMIs do Windows Server 2016 e 2019 que incluem o EC2Launch v1. É possível procurar por AMIs do Windows que incluam o EC2Launch v2 por padrão inserindo o seguinte prefixo em sua pesquisa na página **AMIs** no console do Amazon EC2: `EC2LaunchV2-Windows_Server-*`.

Para comparar os recursos da versão do agente de inicialização, consulte [Comparação entre os agentes de inicialização do Amazon EC2](configure-launch-agents.md#ec2launch-agent-compare).

O EC2Launch v2 executa tarefas durante o startup da instância e é executado se uma instância for interrompida e iniciada posteriormente, ou reiniciada. O EC2Launch v2 também pode executar tarefas sob demanda. Algumas dessas tarefas são automaticamente habilitadas, enquanto outras precisam ser habilitadas manualmente. O serviço EC2Launch v2 é compatível com todos os recursos EC2Config e EC2Launch. 

Esse serviço usa um arquivo de configuração para controlar sua operação. É possível atualizar o arquivo de configuração usando uma ferramenta gráfica ou editando-o diretamente como único arquivo .yml (`agent-config.yml`). Para obter mais informações sobre localizações de arquivos, consulte [Estrutura de diretório do EC2Launch v2](#ec2launch-v2-directory).

O EC2Launch v2 publica logs de eventos do Windows para ajudá-lo a solucionar erros e definir gatilhos. Para obter mais informações, consulte [Logs de eventos do Windows](ec2launchv2-troubleshooting.md#ec2launchv2-windows-event-logs).

**Versões compatíveis do SO**  
O agente do EC2Launch v2 é compatível com as seguintes versões do sistema operacional (SO) do Windows Server abaixo:
+ Windows Server 2025
+ Windows Server 2022
+ Windows Server 2019 (canal de manutenção de longo prazo e canal semestral)
+ Windows Server 2016

**Tarefas que são executadas por padrão**  
Por padrão, o agente EC2Launch v2 executa as tarefas apresentadas a seguir uma única vez durante a primeira inicialização da instância. As tarefas são organizadas de acordo com a ordem em que são executadas durante a fase de inicialização.

Fase de `Boot`
+ extendRootPartition

Fase de `PreReady`
+ activateWindows
+ setDnsSuffix
+ setAdminAccount
+ setWallpaper

Fase de `PostReady`
+ startSsm

## Conceitos do EC2Launch v2
<a name="ec2launch-v2-concepts"></a>

É útil entender os conceitos a seguir ao considerar o EC2Launch v2.

**agent-config**  
`agent-config`O é um arquivo localizado na pasta de configuração do EC2Launch v2. Ele inclui a configuração para os estágios de inicialização, rede, PreReady e PostReady. Este arquivo é usado para especificar a configuração de uma instância para tarefas que devem ser executadas quando a AMI é inicializada pela primeira vez ou em ocasiões posteriores.  
Por padrão, a instalação do EC2Launch v2 instala um arquivo `agent-config` que inclui configurações recomendadas usadas nas AMIs padrão do Amazon Windows. É possível atualizar o arquivo de configuração de modo a alterar a experiência de inicialização padrão para sua AMI especificada pelo EC2Launch v2. Para obter mais informações sobre localizações de arquivos, consulte [Estrutura de diretório do EC2Launch v2](#ec2launch-v2-directory).

**Frequência**  
A frequência da tarefa determina quando as tarefas devem ser executadas, dependendo do contexto de inicialização. A maioria das tarefas tem apenas uma frequência permitida. É possível especificar uma frequência para as tarefas `executeScript`.  
Você verá as seguintes frequências no [Configuração de tarefas do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-task-configuration).  
+ Uma vez — a tarefa é executada uma vez, mediante a inicialização da AMI pela primeira vez (Sysprep concluído).
+ Sempre: a tarefa é executada toda vez que o agente de inicialização é executado. O agente de inicialização é executado quando:
  + uma instância inicia ou reinicia
  + o serviço EC2Launch é executado
  + `EC2Launch.exe run`O é invocado

**Estágio**  
Um estágio é um agrupamento lógico de tarefas que o agente EC2Launch v2 executa. Algumas tarefas podem ser executadas apenas em um estágio específico. Outras podem ser executadas em vários estágios. Ao usar `agent-config.yml`, você deve especificar uma lista de estágios e uma lista das tarefas de cada estágio.  
O serviço executa as etapas nesta ordem:    
Etapa 1: Boot  
  
Etapa 2: Network  
  
Etapa 3: PreReady  
  
O Windows está pronto  
Após a conclusão do estágio PreReady, o serviço envia a mensagem `Windows is ready` para o console do Amazon EC2.  
Etapa 4: PostReady  
Os dados do usuário são executados durante o estágio *PostReady*. Algumas versões de script são executadas antes do estágio *PostReady* do arquivo `agent-config.yml` e outras depois, da seguinte forma:    
Antes do `agent-config.yml`  
+ Dados de usuário em YAML versão 1.1
+ Dados de usuário em XML  
Depois de `agent-config.yml`  
+ Dados do usuário em YAML versão 1.0 (versão antiga para compatibilidade com versões anteriores)
Para obter exemplos dos estágios e das tarefas, consulte [Exemplo: `agent-config.yml`](ec2launch-v2-settings.md#ec2launch-v2-example-agent-config).  
Ao usar dados do usuário, você deve especificar uma lista de tarefas para o agente de inicialização executar. O estágio está implícito. Para obter exemplos de tarefas, consulte [Exemplo: dados do usuário](ec2launch-v2-settings.md#ec2launch-v2-example-user-data).  
O EC2Launch v2 executa a lista de tarefas na ordem especificada em `agent-config.yml` e nos dados do usuário. Os estágios são executados sequencialmente. O próximo estágio começa após a conclusão do estágio anterior. As tarefas também são executadas sequencialmente.

**Tarefa**  
É possível invocar uma tarefa para realizar uma ação em uma instância. É possível configurar tarefas no arquivo `agent-config.yml` ou por meio de dados do usuário. Para obter uma lista das tarefas disponíveis no EC2Launch v2, consulte [Tarefas do EC2Launch v2](#ec2launch-v2-tasks). Para obter o esquema e os detalhes de configuração da tarefa, consulte [Configuração de tarefas do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-task-configuration).

**Dados do usuário**  
Os dados do usuário são dados que podem ser configurados ao iniciar uma instância. É possível atualizar os dados do usuário para alterar de maneira dinâmica como as AMIs personalizadas ou AMIs de início rápido são configuradas. O EC2Launch v2 suporta 60 kB de comprimento de entrada de dados do usuário. Os dados do usuário incluem apenas o estágio do UserData e, portanto, são executados após o arquivo `agent-config`. É possível inserir dados do usuário ao executar uma instância usando o assistente de execução de instância ou pode modificar os dados do usuário no console do EC2. Para obter mais informações sobre como trabalhar com dados do usuário, consult [Como o Amazon EC2 lida com os dados dos usuários para instâncias do Windows](user-data.md#ec2-windows-user-data).

## Visão geral da tarefa do EC2Launch v2
<a name="ec2launch-v2-tasks"></a>

O EC2Launch v2 pode executar as seguintes tarefas em cada inicialização:
+ Configurar papel de parede novo e opcionalmente personalizado que renderiza informações sobre a instância.
+ Definir os atributos para a conta de administrador criada na máquina local.
+ Adicionar sufixos DNS à lista de sufixos de pesquisa. Somente sufixos que ainda não existem são adicionados à lista.
+ Definir letras de unidade para quaisquer volumes adicionais e estendê-las para usar o espaço disponível.
+ Gravar arquivos da configuração no disco.
+ Executar scripts especificados no arquivo de configuração do EC2Launch v2 ou de `user-data`. Os scripts de `user-data` podem ser em texto simples ou compactados e fornecidos no formato base64.
+ Executar um programa com os argumentos fornecidos.
+ Definir o nome do computador.
+ Enviar informações de instância para o console do Amazon EC2.
+ Enviar a impressão digital do certificado RDP ao console do Amazon EC2.
+ Estenda dinamicamente a partição do sistema operacional para incluir qualquer espaço não particionado.
+ Executar dados do usuário. Para obter mais informações sobre como especificar os dados do usuário, consulte [Configuração de tarefas do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-task-configuration).
+ Defina rotas estáticas não persistentes para alcançar o serviço de metadados e os servidores AWS KMS.
+ Definir partições que não sejam de inicialização como `mbr` ou `gpt`.
+ Iniciar o serviço Systems Manager após o Sysprep.
+ Otimizar as configurações do ENA.
+ Ativar o OpenSSH para versões posteriores do Windows.
+ Ativar os frames jumbo.
+ Defina o Sysprep para execução com o EC2Launch v2.
+ Publicar logs de eventos do Windows.

## Estrutura de diretório do EC2Launch v2
<a name="ec2launch-v2-directory"></a>

O EC2Launch v2 deve ser instalado nos seguintes diretórios:
+ Binários de serviço: `%ProgramFiles%\Amazon\EC2Launch`
+ Dados de serviço (configurações, arquivos de log e arquivos de estado): `%ProgramData%\Amazon\EC2Launch`

**nota**  
Por padrão, o Windows oculta os arquivos e as pastas sob `C:\ProgramData`. Para visualizar os diretórios e arquivos do EC2Launch v2, digite o caminho no Windows Explorer ou altere as propriedades da pasta para os arquivos e as pastas ocultos.

O diretório `%ProgramFiles%\Amazon\EC2Launch` contém binários e bibliotecas compatíveis. Ele inclui os seguintes subdiretórios:
+ `settings`
  + `EC2LaunchSettingsUI.exe`: interface de usuário para modificar o arquivo `agent-config.yml`
  + `YamlDotNet.dll`: DLL para oferecer suporte a algumas operações na interface do usuário
+ `tools`
  + `ebsnvme-id.exe`: ferramenta para examinar os metadados dos volumes do EBS na instância
  + `AWSAcpiSpcrReader.exe`: ferramenta para determinar a porta COM correta a ser usada
  + `EC2LaunchEventMessage.dll`: DLL para oferecer suporte ao registro de eventos do Windows para o EC2Launch
+ `service`
  + `EC2LaunchService.exe`: serviço do Windows executável que é iniciado quando o agente de inicialização é executado como um serviço
+ `EC2AgentTelemetry.dll`: DLL para dar suporte à telemetria do agente EC2
+ `EC2Launch.exe`: executável principal do EC2Launch
+ `EC2LaunchAgentAttribution.txt`: atribuição para código usado dentro do EC2 Launch

O diretório `%ProgramData%\Amazon\EC2Launch` contém os seguintes subdiretórios. Todos os dados produzidos pelo serviço, incluindo logs, configuração e estado, são armazenados neste diretório.
+ `config`: configuração

  O arquivo de configuração do serviço é armazenado neste diretório como `agent-config.yml`. Esse arquivo pode ser atualizado de modo a modificar, adicionar ou remover tarefas padrão executadas pelo serviço. A permissão para criar arquivos neste diretório é restrita à conta de administrador para evitar o escalonamento de privilégios.
+ `log`: logs de instância

  Os logs de serviço (`agent.log`), performance (`bench.log`) e telemetria (`telemetry.log`) são armazenados neste diretório. Quando `agent.log` atinge 1 MB de tamanho, ele é rotacionado automaticamente e um arquivo de backup é criado com um formato de carimbo de data/hora (por exemplo, `agent-2026-03-02T18-56-39.188.log`). Somente um arquivo de log de backup é mantido por vez.
+ `state`: dados de estado do serviço

  O estado usado pelo serviço para determinar quais tarefas devem ser executadas é armazenado aqui. Há um arquivo `.run-once` que indica se o serviço já foi executado após Sysprep (portanto, as tarefas com frequência de uma vez serão ignoradas na próxima execução). Esse subdiretório inclui `state.json` e `previous-state.json` para rastrear o status de cada tarefa.
+ `sysprep`: Sysprep

  Esse diretório contém arquivos usados para determinar quais operações executar pelo Sysprep ao criar uma AMI do Windows personalizada que pode ser reutilizada.
+ `wallpaper`: papel de parede

  As imagens de papel de parede são armazenadas nesse diretório.

## Telemetria
<a name="ec2launch-v2-telemetry"></a>

Telemetria é informação adicional que ajuda a AWS a entender melhor suas necessidades, diagnosticar problemas e fornecer recursos para melhorar sua experiência com os Serviços da AWS.

EC2Launch versão v2 `2.1.592` e, posteriormente, coletar telemetria, como métricas de uso e erros. Esses dados são coletados da instância do Amazon EC2 na qual o EC2Launch v2 é executado. Isso inclui todas as AMIs do Windows de propriedade da AWS.

Os seguintes tipos de telemetria são coletados pelo EC2Launch v2:
+ **Informações de uso**: comandos do agente, método de instalação e frequência de execução programada.
+ **Erros e informações de diagnóstico**: códigos de erro da instalação do agente, códigos de erro de execução e pilhas de chamada como erro.

Exemplos de dados coletados da versão 2.0.592 até a 2.1.1:

```
2025/07/18 22:38:52Z: EC2LaunchTelemetry: IsTelemetryEnabled=true
2025/07/18 22:38:52Z: EC2LaunchTelemetry: AgentOsArch=windows_amd64
2025/07/18 22:38:52Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true
2025/07/18 22:38:52Z: EC2LaunchTelemetry: AgentCommandErrorCode=0
2025/07/18 22:38:52Z: EC2LaunchTelemetry: AdminPasswordTypeCode=0
2025/07/18 22:38:52Z: EC2LaunchTelemetry: IpConflictDetectionCode=0
2025/07/18 22:38:52Z: EC2LaunchTelemetry: AgentErrorLocation=addroutes.go:49
```

A partir da versão 2.2.63, os dados de telemetria do EC2 Agent são formatados como um objeto JSON:

```
{"type":"EC2AgentTelemetry","agentId":"WindowsLaunchAgentV2" ... }
```

A telemetria está habilitada por padrão. É possível desativar a coleta de telemetria a qualquer momento.

**Desativar telemetria em uma instância**  
Para desativar a telemetria para uma única instância, é possível definir uma variável de ambiente do sistema ou usar o MSI para modificar a instalação.

Para desabilitar a telemetria definindo uma variável de ambiente do sistema, execute o seguinte comando como administrador:

```
setx /M EC2LAUNCH_TELEMETRY 0
```

Para desabilitar a telemetria usando o MSI, execute o comando a seguir depois de [baixar o MSI](ec2launch-v2-install.md), 

```
msiexec /i ".\AmazonEC2Launch.msi" Remove="Telemetry" /q
```

**Topics**
+ [Conceitos do EC2Launch v2](#ec2launch-v2-concepts)
+ [Visão geral da tarefa do EC2Launch v2](#ec2launch-v2-tasks)
+ [Estrutura de diretório do EC2Launch v2](#ec2launch-v2-directory)
+ [Telemetria](#ec2launch-v2-telemetry)
+ [Instalar a versão mais recente do EC2Launch v2](ec2launch-v2-install.md)
+ [Definição das configurações do EC2Launch v2 para instâncias do Windows](ec2launch-v2-settings.md)
+ [Definições de tarefas para tarefas de inicialização do EC2Launch v2](ec2launch-v2-task-definitions.md)
+ [Solucionar problemas com o agente do EC2Launch v2](ec2launchv2-troubleshooting.md)
+ [Históricos de versões do EC2Launch v2](ec2launchv2-versions.md)

# Instalar a versão mais recente do EC2Launch v2
<a name="ec2launch-v2-install"></a>

É possível usar um dos seguintes métodos para instalar o agente EC2Launch v2 em sua instância do EC2:
+ Fazer download do agente do Amazon S3 e instalá-lo com o Windows PowerShell. Para URLs de downloads, consulte [Downloads do EC2Launch v2 no Amazon S3](#lv2-download-s3).
+ Instalar com o SSM Distributor.
+ Instalar de um componente do EC2 Image Builder ao criar uma imagem personalizada.
+ Iniciar sua instância de uma AMI que tenha o EC2Launch v2 pré-instalado.

**Atenção**  
O AmazonEC2Launch.msi desinstala versões anteriores dos serviços de execução do EC2, como EC2Launch (v1) ou EC2Config.

Para as etapas de instalação, selecione a guia que corresponde ao seu método preferido.

------
#### [ PowerShell ]

Para instalar a versão mais recente do agente do EC2Launch v2 com o Windows PowerShell, siga estas etapas.

1. Crie um diretório local.

   ```
   New-Item -Path "$env:USERPROFILE\Desktop\EC2Launchv2" -ItemType Directory
   ```

1. Defina o URL do seu local de download. Execute o comando a seguir com o URL do Amazon S3 que será usado. Para URLs de downloads, consulte [Downloads do EC2Launch v2 no Amazon S3](#lv2-download-s3).

   ```
   $Url = "Amazon S3 URL/AmazonEC2Launch.msi"
   ```

1. Use o comando a seguir para fazer download do agente e executar a instalação 

   ```
   $DownloadFile = "$env:USERPROFILE\Desktop\EC2Launchv2\" + $(Split-Path -Path $Url -Leaf)
   Invoke-WebRequest -Uri $Url -OutFile $DownloadFile
   msiexec /i "$DownloadFile"
   ```
**nota**  
Se você receber um erro ao baixar o arquivo e estiver usando o Windows Server 2016 ou anterior, talvez seja necessário habilitar o TLS 1.2 para seu terminal PowerShell. É possível habilitar o TLS 1.2 para a sessão atual do PowerShell com o comando a seguir e tentar novamente:  

   ```
   [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
   ```

1. O comando **msiexec** instala o EC2Launch v2 no seguinte local nas instâncias do Windows Server: `%ProgramFiles%\Amazon\EC2Launch`. Para verificar se a instalação foi executada, você pode verificar o sistema de arquivos local na sua instância.

------
#### [ AWS Systems Manager Distributor ]

Para configurar atualizações automáticas para o EC2Launch v2 com a Configuração rápida do AWS Systems Manager, consulte [Instalar e atualizar automaticamente com o Distributor Quick Setup](#lv2-distributor-quick-setup). 

Você também pode realizar uma instalação única do pacote `AWSEC2Launch-Agent` a partir do Distribuidor do AWS Systems Manager. Para obter instruções sobre como instalar um pacote com o Systems Manager Distributor, consulte [Instalar ou atualizar pacotes](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor-working-with-packages-deploy.html) no *Guia do usuário do AWS Systems Manager SSM*.

------
#### [ EC2 Image Builder component ]

É possível instalar o componente `ec2launch-v2-windows` ao criar uma imagem personalizada com o EC2 Image Builder. Para instruções sobre como criar uma imagem personalizada com o EC2 Image Builder, consulte [Create an image pipeline using the EC2 Image Builder console wizard](https://docs.aws.amazon.com/imagebuilder/latest/userguide/start-build-image-pipeline.html) no *Guia do usuário do EC2 Image Builder*.

------
#### [ AMI ]

O EC2Launch v2 é pré-instalado por padrão nas seguintes AMIs do Windows Server 2022 e sistemas operacionais superiores:
+ Windows\$1Server-*version*-English-Full-Base
+ Windows\$1Server-*version*-English-Core-Base
+ Windows\$1Server-*version*-English-Core-EKS\$1Optimized
+ AMIs da *versão* do Windows Server com todos os outros idiomas
+ AMIs da *versão* do Windows Server com SQL instalado

O EC2Launch v2 também vem pré-instalado nas AMIs do Windows Server a seguir. Essas AMIs podem ser encontradas no console do Amazon EC2. Também é possível usar o seguinte prefixo de pesquisa: `EC2LaunchV2-` na AWS CLI.
+ EC2LaunchV2-Windows\$1Server-2019-English-Core-Base
+ EC2LaunchV2-Windows\$1Server-2019-English-Full-Base
+ EC2LaunchV2-Windows\$1Server-2016-English-Core-Base
+ EC2LaunchV2-Windows\$1Server-2016-English-Full-Base

------

## Instalar e atualizar o EC2Launch v2 automaticamente com o AWS Systems Manager Distributor Quick Setup
<a name="lv2-distributor-quick-setup"></a>

Com o AWS Systems Manager Distributor Quick Setup, você pode configurar atualizações automáticas para o EC2Launch v2. O processo a seguir configura uma Associação do Systems Manager na sua instância que atualiza automaticamente o agente EC2Launch v2 em uma frequência que você especifica. A associação criada pelo Distributor Quick Setup pode incluir instâncias dentro de uma região e Conta da AWS ou instâncias dentro de uma Organização da AWS. Para obter mais informações sobre como configurar uma organização, consulte [Tutorial: Criar e configurar uma organização](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_tutorials_basic.html), no *Guia do usuário do AWS Organizations*.

Antes de começar, certifique-se de que as suas instâncias atendam a todos os pré-requisitos.

### Pré-requisitos
<a name="lv2-distributor-quickset-prereq"></a>

Para configurar atualizações automáticas com o Distributor Quick Setup, suas instâncias devem atender aos seguintes pré-requisitos.
+ Você tem pelo menos uma instância em execução que oferece suporte ao EC2Launch v2. Consulte os sistemas operacionais compatíveis com o [EC2Launch v2](ec2launch-v2.md).
+ Você executou as tarefas de configuração do Systems Manager nas suas instâncias. Para obter mais informações, consulte [Configurar o Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-ec2.html), no *Guia do usuário do AWS Systems Manager*.
+ O EC2Launch v2 deve ser o único agente de inicialização instalado na sua instância. Se você tiver mais de um agente de inicialização instalado, sua configuração do Distributor Quick Setup falhará. Antes de configurar o EC2Launch v2 com o Distributor Quick Setup, desinstale os agentes de inicialização EC2Config ou EC2Launch v1, se existirem.

### Configurar o Distributor Quick Setup para o EC2Launch v2
<a name="lv2-distributor-quickset-config"></a>

Para criar uma configuração para o EC2Launch v2 com o Distributor Quick Setup, use as seguintes configurações ao concluir as etapas de [Implantação do pacote do Distributor](https://docs.aws.amazon.com/systems-manager/latest/userguide/quick-setup-distributor.html):
+ **Pacotes de software:** agente Amazon EC2Launch v2.
+ **Frequência de atualização:** selecione uma frequência na lista.
+ **Destinos:** escolha entre as opções de implantação disponíveis.

Para verificar o status da sua configuração, navegue até a guia **Configurações** do Systems Manager Quick Setup no Console de gerenciamento da AWS.

1. Abra o console AWS Systems Manager em [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. No painel de navegação, escolha **Configuração rápida**.

1. Na guia **Configurações**, selecione a linha associada à configuração que você criou. A guia **Configurações** lista suas configurações e inclui um resumo dos principais detalhes, como **Região**, **Status da implantação** e **Status da associação**.
**nota**  
O nome da associação para cada configuração do EC2Launch v2 Distributor começa com o seguinte prefixo: `AWS-QuickSetup-Distributor-EC2Launch-Agent-`.

1. Para visualizar detalhes, selecione a configuração e escolha **Visualizar detalhes**.

Para obter mais informações e etapas para a solução de problemas, consulte [Solução de problemas com resultados do Quick Setup](https://docs.aws.amazon.com/systems-manager/latest/userguide/quick-setup-results-troubleshooting.html), no *Guia do usuário do AWS Systems Manager*.

## Downloads do EC2Launch v2 no Amazon S3
<a name="lv2-download-s3"></a>

Para instalar a versão mais recente do EC2Launch v2, baixe o instalador do local a seguir:
+ [https://s3.amazonaws.com/amazon-ec2launch-v2/windows/amd64/latest/AmazonEC2Launch.msi](https://s3.amazonaws.com/amazon-ec2launch-v2/windows/amd64/latest/AmazonEC2Launch.msi)

## Configurar opções de instalação
<a name="lv2-configure-install"></a>

Ao instalar ou atualizar o EC2Launch v2, será possível configurar as opções de instalação com a caixa de diálogo de instalação do EC2Launch v2 ou com o comando **msiexec** em um shell de linha de comando.

Na primeira vez que o instalador do EC2Launch v2 é executado em uma instância, ele inicializa as configurações do agente de execução em sua instância da seguinte forma:
+ Ele cria o caminho local e grava nele o arquivo do agente de execução. Algumas vezes, isso é chamado de *instalação limpa*.
+ Ele cria a variável de ambiente `EC2LAUNCH_TELEMETRY`, se ela ainda não existir, e a define com base na sua configuração.

Para obter detalhes de configuração, selecione a guia que corresponde ao método de configuração que você usará.

------
#### [ Amazon EC2Launch Setup dialog ]

Ao instalar ou atualizar o EC2Launch v2, será possível configurar as opções de instalação a seguir na caixa de diálogo de instalação do EC2Launch v2.Opções de **Instalação básica**

**Enviar telemetria**  
Quando você inclui esse recurso na caixa de diálogo de configuração, o instalador define a variável de ambiente `EC2LAUNCH_TELEMETRY` para o valor `1`. Se você desabilitar a opção **Enviar telemetria**, o instalador definirá a variável de ambiente com um valor de `0`.  
Quando o agente EC2Launch v2 é executado, ele lê a variável de ambiente `EC2LAUNCH_TELEMETRY` para determinar se os dados de telemetria devem ser carregados. Se o valor for igual a `1`, ele carregará os dados. Caso contrário, os dados não serão carregados.

**Configuração padrão**  
A configuração padrão do EC2Launch v2 é sobrescrever o agente de inicialização local, caso ele já exista. Na primeira vez que você executa uma instalação em uma instância, a configuração padrão realiza uma instalação limpa. Se a configuração padrão for desabilitada na instalação inicial, a instalação falhará.  
Se você executar a instalação novamente na instância, poderá desabilitar a configuração padrão para realizar uma atualização que não substitua o arquivo `%ProgramData%/Amazon/EC2Launch/config/agent-config.yml`.

**Exemplo: atualizar o EC2Launch v2 com telemetria**  
O exemplo a seguir mostra a caixa de diálogo de configuração do EC2Launch v2 configurada para atualizar a instalação atual e habilitar a telemetria. Essa configuração realiza uma instalação sem substituir o arquivo de configuração do agente e define a variável de ambiente `EC2LAUNCH_TELEMETRY` para o valor `1`.

![\[Configuração de atualização do EC2Launch v2.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/ec2launchv2-clean-default-config.png)


------
#### [ Command line ]

Ao instalar ou atualizar o EC2Launch v2, será possível configurar as seguintes opções de instalação com o comando **msiexec** em um shell de linha de comando.Valores do parâmetro `ADDLOCAL`

**Básico** (obrigatório)  
Instale o agente de execução. Se esse valor não estiver presente no parâmetro `ADDLOCAL`, a instalação terminará.

**Limpa**  
Quando o valor `Clean` é incluído no parâmetro `ADDLOCAL`, o instalador grava o arquivo de configuração do agente no seguinte local: `%ProgramData%/Amazon/EC2Launch/config/agent-config.yml`. Se o arquivo de configuração do agente já existir, ele sobrescreverá o arquivo.  
Quando o valor `Clean` é deixado de fora do parâmetro `ADDLOCAL`, o instalador executa uma atualização que não substitui o arquivo de configuração do agente.

**Telemetria**  
Quando o valor `Telemetry` é incluído no parâmetro `ADDLOCAL`, o instalador define a variável de ambiente `EC2LAUNCH_TELEMETRY` para o valor `1`.  
Quando o valor `Telemetry` é deixado de fora do parâmetro `ADDLOCAL`, o instalador define a variável de ambiente para o valor `0`.  
Quando o agente EC2Launch v2 é executado, ele lê a variável de ambiente `EC2LAUNCH_TELEMETRY` para determinar se os dados de telemetria devem ser carregados. Se o valor for igual a `1`, ele carregará os dados. Caso contrário, os dados não serão carregados.

**Exemplo: instalar o EC2Launch v2 com telemetria**

```
& msiexec /i "C:\Users\Administrator\Desktop\EC2Launchv2\AmazonEC2Launch.msi" ADDLOCAL="Basic,Clean,Telemetry" /q
```

------

## Verificar a versão do EC2Launch v2
<a name="lv2-verify-version"></a>

Use o procedimento a seguir para verificar a versão do EC2Launch v2 que está instalada nas suas instâncias.



------
#### [ PowerShell ]

Verifique a versão instalada do EC2Launch v2 com o Windows PowerShell.

1. Execute uma instância pela AMI e conecte-se a ela.

1. Execute o comando a seguir no Windows PowerShell a seguir para verificar a versão instalada do EC2Launch v2.

   ```
   & "C:\Program Files\Amazon\EC2Launch\EC2Launch.exe" version
   ```

------
#### [ Windows Control Panel ]

Verifique a versão instalada do EC2Launch v2 no Painel de Controle do Windows conforme descrito a seguir.

1. Execute uma instância pela AMI e conecte-se a ela.

1. Abra o Painel de Controle do Windows e selecione **Programas e Recursos**.

1. Procure `Amazon EC2Launch` na lista de programas instalados. O número da versão aparece na coluna **Versão**.

------

Para visualizar as atualizações mais recentes das AMIs do AWS Windows, consulte o [histórico de versões da AMI do Windows](https://docs.aws.amazon.com/ec2/latest/windows-ami-reference/ec2-windows-ami-version-history.html) na *Referência da AMI do AWS Windows*.

Para obter a versão mais recente do EC2Launch v2, consulte [Histórico de versões do EC2Launch v2](ec2launchv2-versions.md#ec2launchv2-version-history).

É possível receber notificações quando novas versões do serviço EC2Launch v2 forem liberadas. Para obter mais informações, consulte [Assinar as notificações do agente de execução do EC2 Windows](launch-agents-subscribe-notifications.md).

# Definição das configurações do EC2Launch v2 para instâncias do Windows
<a name="ec2launch-v2-settings"></a>

Esta seção contém informações sobre como definir configurações para o EC2Launch v2.

**Topics**
+ [Alterar configurações usando a caixa de diálogo de configurações do EC2Launch v2](#ec2launch-v2-ui)
+ [Configurar o EC2Launch v2 com a CLI](#ec2launch-v2-cli)
+ [Configuração de tarefas do EC2Launch v2](#ec2launch-v2-task-configuration)
+ [Códigos de saída e reinicializações do EC2Launch v2](#ec2launch-v2-exit-codes-reboots)
+ [EC2Launch v2 e Sysprep](#ec2launch-v2-sysprep)

## Alterar configurações usando a caixa de diálogo de configurações do EC2Launch v2
<a name="ec2launch-v2-ui"></a>

O procedimento a seguir descreve como usar a caixa de diálogo de configurações do EC2Launch v2 para habilitar ou desabilitar configurações.
**nota**  
Se você configurar de forma imprópria tarefas personalizadas no arquivo agent-config.yml e tentar abrir a caixa de diálogo de configurações Amazon EC2Launch, receberá um erro. Por obter um exemplo de esquema, consulte [Exemplo: `agent-config.yml`](#ec2launch-v2-example-agent-config).

1. Execute e conecte-se à sua instância do Windows.

1. No menu Iniciar, escolha **Todos os programas** e navegue até as **Configurações do EC2Launch**. Antes de escolher **Desligar com Sysprep** ou **Desligar sem Sysprep**, salve as alterações que deseja aplicar ao executar o desligamento.  
![\[Aplicação de configurações do EC2 Launch.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/ec2launchv2-settings.png)

1. Na guia **Geral** da caixa de diálogo **Configurações do EC2Launch**, é possível habilitar ou desabilitar as configurações a seguir.

   1. **Definir o nome do computador**

      Se essa configuração estiver habilitada (por padrão, ela fica desabilitada), o nome do host atual será comparado com o nome de host desejado em cada inicialização. Se os nomes de host não corresponderem, o nome do host será redefinido e o sistema, opcionalmente, reinicializa para ficar com o novo nome de host. Se um nome de host personalizado não for especificado, ele será gerado usando o endereço IPv4 privado formatado hexadecimal, por exemplo, `ip-AC1F4E6`. Para impedir a modificação de um nome de host existente, não habilite essa configuração.

   1. **Estender o volume de inicialização**

      Essa configuração amplia dinamicamente o `Disk 0`/`Volume 0` para incluir qualquer espaço não particionado. Isto pode ser útil quando a instância é inicializada usando um volume raiz com tamanho personalizado.

   1. **Definir a conta do administrador**

      Quando habilitado, é possível definir os atributos de nome de usuário e senha para a conta de administrador criada em sua máquina local. Se esse recurso não estiver habilitado, uma conta de administrador não será criada no sistema após o Sysprep. Forneça uma senha em `adminPassword` somente se `adminPasswordtype` for `Specify`.

      Os tipos de senha são definidos da seguinte maneira:

      1. `Random`

         O EC2Launch gera uma senha e criptografa-a usando a chave de usuário. O sistema desativa essa configuração depois da execução da instância, portanto, essa senha persistirá se a instância for reinicializada ou parada e iniciada.

      1. `Specify`

         O EC2Launch usa a senha especificada em `adminPassword`. Se a senha não atender aos requisitos de sistema, o EC2Launch gera uma senha aleatória. A senha é armazenada em `agent-config.yml` como texto não criptografado e será excluída depois que Sysprep definir a senha do administrador. O EC2Launch criptografa a senha usando a chave de usuário.

      1. `Do not set`

         O EC2Launch usa a senha especificada no arquivo unattend.xml. Se você não especificar uma senha em unattend.xml, a conta de administrador será desativada.

   1. **Iniciar o serviço SSM**

      Quando selecionado, o serviço Systems Manager é habilitado para começar após o Sysprep. O EC2Launch v2 executa todas as tarefas descritas [anteriormente](ec2launch-v2.md#ec2launch-v2-tasks) e o SSM Agent processa recursos do Systems Manager, como Run Command e State Manager.

      É possível usar Run Command para atualizar suas instâncias existentes e usar a versão mais recente do serviço do EC2Launch v2 e do SSM Agent. Para obter mais informações, consulte [Atualizar o SSM Agent usando o Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command-tutorial-update-software.html) no *Guia do usuário do AWS Systems Manager*.

   1. **Otimizar ENA**

      Quando selecionadas, as configurações do ENA são definidas para garantir que as configurações Receive Side Scaling (Receber dimensionamento lateral) e Receive Queue Depth (Receber profundidade da fila) sejam otimizadas para a AWS. Para obter mais informações, consulte [Configurar a afinidade de CPU do Receive Side Scaling](enhanced-networking-os.md#windows-rss-cpu-affinity).

   1. **Habilitar SSH**

      Essa configuração habilita o OpenSSH para versões posteriores do Windows a fim de permitir a administração remota do sistema.

   1. **Ativar os frames jumbo**

      Selecione para ativar frames jumbo. Os frames jumbo podem ter efeitos não intencionais sobre suas comunicações de rede, portanto, certifique-se de entender como eles afetarão seu sistema antes de ativá-los. Para obter mais informações sobre os frames jumbo, consulte [Frames jumbo (9001 MTU)](network_mtu.md#jumbo_frame_instances).

   1. **Preparar para imagens**

      Selecione se deseja que sua instância do EC2 seja desligada com ou sem Sysprep. Quando quiser executar o Sysprep com o EC2Launch v2, escolha **Shutdown with Sysprep (Desligar com Sysprep)**.

1. Na guia **Sufixo DNS**, é possível selecionar se deseja adicionar uma lista de sufixos DNS para resolução DNS de servidores em execução no EC2, sem fornecer o nome de domínio totalmente qualificado. Os sufixos DNS podem conter as variáveis `$REGION` e `$AZ`. Somente sufixos que ainda não existem serão adicionados à lista.   
![\[Aplicação de configurações do EC2 Launch.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/ec2launchv2-dns.png)

1. Na guia **Papel de parede**, você pode configurar o papel de parede da instância com uma imagem de fundo e especificar os detalhes da instância a serem exibidos no papel de parede. O Amazon EC2 gera os detalhes toda vez que você faz login.

   É possível configurar o papel de parede com os seguintes controles.
   + **Exibir detalhes da instância no papel de parede**: essa caixa de seleção ativa ou desativa a exibição de detalhes da instância no papel de parede.
   + **Caminho da imagem (.jpg)**: especifique o caminho até a imagem a ser usada como plano de fundo do papel de parede.
   + **Selecionar atributos a serem exibidos no papel de parede**: marque as caixas de seleção dos detalhes da instância que você deseja que apareçam no papel de parede. Desmarque as caixas de seleção dos detalhes da instância selecionados anteriormente que você deseja remover do papel de parede.
   + **Exibir tags de instância no papel de parede**: selecione uma das seguintes configurações para exibir tags de instância no papel de parede:
     + **Nenhuma**: não exiba nenhuma tag de instância no papel de parede.
     + **Mostrar todas**: exiba todas as tags de instância no papel de parede.
     + **Mostrar filtradas**: exibe as tags de instância especificadas no papel de parede. Quando você selecionar essa configuração, será possível adicionar tags de instância que você deseje exibir no seu papel de parede na caixa **Filtro de tag de instância**.
**nota**  
Você deve habilitar as tags nos metadados para mostrá-las no papel de parede. Para obter mais informações sobre tags e metadados da instância, consulte [Visualizar tags para as instâncias do EC2 usando os metadados de instância](work-with-tags-in-IMDS.md).  
![\[Guia Papel de parede nas configurações de inicialização do EC2.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/ec2launchv2-wallpaper-02.png)

1. Na guia **Volumes**, selecione se deseja inicializar os volumes anexados à instância. A ativação define letras de unidade para quaisquer volumes adicionais e estende-as para usar o espaço disponível. Se você selecionar **Todos**, todos os volumes de armazenamento serão inicializados. Se você selecionar **Dispositivos**, somente os dispositivos especificados na lista serão inicializados. É preciso inserir cada dispositivo a ser inicializado. Use os dispositivos listados no console do EC2, por exemplo, `xvdb` ou `/dev/nvme0n1`. A lista suspensa exibe os volumes de armazenamento anexados à instância. Para inserir um dispositivo que não está anexado à instância, insira-o no campo de texto.

   **Nome**, **Letra** e **Partição** são campos opcionais. Se nenhum valor for especificado para **Partição**, os volumes de armazenamento com mais de 2 TB serão inicializados com o tipo de partição `gpt` e os com menos de 2 TB serão inicializados com o tipo de partição `mbr`. Se os dispositivos estiverem configurados e um dispositivo não NTFS contiver uma tabela de partição ou os primeiros 4 KB do disco contiverem dados, o disco será ignorado e a ação será registrada.   
![\[Aplicação de configurações do EC2 Launch.\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/images/ec2launchv2-volumes.png)

## Configurar o EC2Launch v2 com a CLI
<a name="ec2launch-v2-cli"></a>

É possível usar a Interface de Linhas de Comando (CLI) para definir suas configurações do EC2Launch e gerenciar o serviço. A seção a seguir contém descrições e informações de uso dos comandos da CLI que podem ser usados para gerenciamento do EC2Launch v2.

**Topics**
+ [collect-logs](#ec2launch-v2-collect-logs)
+ [get-agent-config](#ec2launch-v2-get-agent-config)
+ [list-volumes](#ec2launch-v2-list-volumes)
+ [reset](#ec2launch-v2-reset)
+ [executar](#ec2launch-v2-run)
+ [status](#ec2launch-v2-settings-status)
+ [sysprep](#ec2launch-v2-settings-sysprep)
+ [validar](#ec2launch-v2-validate)
+ [version](#ec2launch-v2-version)
+ [wallpaper](#ec2launch-v2-wallpaper)

### collect-logs
<a name="ec2launch-v2-collect-logs"></a>

Coleta arquivos de log para o EC2Launch, compacta os arquivos e os coloca em um diretório especificado.

**Exemplo**

```
ec2launch collect-logs -o C:\Mylogs.zip
```

**Usage**

`ec2launch collect-logs [flags]`

**Sinalizadores**

`-h`, `--help`

ajuda para `collect-logs`

`-o`, `--output string`

caminho para arquivos de log de saída compactados

### get-agent-config
<a name="ec2launch-v2-get-agent-config"></a>

Imprime `agent-config.yml` no formato especificado (JSON ou YAML). Se nenhum formato for especificado, `agent-config.yml` será impresso no formato especificado anteriormente. 

**Exemplo**

```
ec2launch get-agent-config -f json
```

**Usage**

`ec2launch get-agent-config [flags]`

**Sinalizadores**

`-h`, `--help`

ajuda para `get-agent-config`

`-f`, `--format string`

formato de saída do arquivo `agent-config`: `json`, `yaml`

### list-volumes
<a name="ec2launch-v2-list-volumes"></a>

Lista todos os volumes de armazenamento anexados à instância, incluindo volumes temporários e do EBS.

**Exemplo**

```
ec2launch list-volumes
```

**Usage**

`ec2launch list-volumes`

**Sinalizadores**

`-h`, `--help`

ajuda para `list-volumes`

### reset
<a name="ec2launch-v2-reset"></a>

O objetivo principal dessa tarefa é redefinir o agente para a próxima vez que ele for executado. Para fazer isso, o comando **reset** exclui todos os dados de estado do agente do EC2Launch v2 do `EC2Launch` diretório local (consulte [Estrutura de diretório do EC2Launch v2](ec2launch-v2.md#ec2launch-v2-directory)). Opcionalmente, a redefinição exclui os logs do serviço e do Sysprep.

O comportamento do script depende do modo em que o agente executa os scripts: em linha ou desanexados.

Em linha (padrão)  
O agente EC2Launch v2 executa os scripts um de cada vez (`detach: false`) Essa é a configuração padrão.  
Quando seu script em linha emite um  comando **reset** ou **sysprep**, ele é executado imediatamente e redefine o agente. A tarefa atual é concluída e, em seguida, o agente é desligado sem executar mais nenhuma tarefa.  
Por exemplo, se a tarefa que emite o comando tivesse sido seguida por uma tarefa `startSsm` (incluída por padrão após a execução dos dados do usuário), a tarefa não executaria e o serviço Systems Manager nunca seria iniciado.

Desanexados  
O agente do EC2Launch v2 executa scripts simultaneamente com outras tarefas (`detach: true`).  
Quando seu script desanexado emite um comando **reset** ou **sysprep**, esses comandos aguardam a conclusão do agente antes de serem executados. As tarefas após executeScript ainda serão executadas.

**Exemplo**

```
ec2launch reset -c
```

**Usage**

`ec2launch reset [flags]`

**Sinalizadores**

`-c`, `--clean`

limpa os logs da instância antes de `reset`

`-h`, `--help`

ajuda para `reset`

### executar
<a name="ec2launch-v2-run"></a>

Executa o EC2Launch v2.

**Exemplo**

```
ec2launch run
```

**Usage**

`ec2launch run [flags]`

**Sinalizadores**

`-h`, `--help`

ajuda para `run`

### status
<a name="ec2launch-v2-settings-status"></a>

Obtém o status do agente EC2Launch v2. Opcionalmente, bloqueia o processo até que o agente seja concluído. O código de saída do processo determina o estado do agente:
+ `0`: o agente foi executado de forma bem-sucedida.
+ `1`: o agente foi executado e apresentou falha.
+ `2`: o agente ainda está em execução.
+ `3`: o agente está em um estado desconhecido. O estado do agente é não está em execução ou foi interrompido.
+ `4`: ocorreu um erro ao tentar recuperar o estado do agente.
+ `5`: o agente não está em execução e o status da última execução conhecida é desconhecido. Isso pode significar uma das seguintes opções:
  + tanto o `state.json` quanto o `previous-state.json` foram excluídos.
  + o `previous-state.json` está corrompido.

  Este é o estado do agente após executar o comando [`reset`](#ec2launch-v2-reset).

**Exemplo:**

```
ec2launch status -b
```

**Usage**

`ec2launch status [flags]`

**Sinalizadores**

`-b`,`--block`

bloqueia o processo até que o agente conclua a execução

`-h`,`--help`

ajuda para `status`

### sysprep
<a name="ec2launch-v2-settings-sysprep"></a>

O objetivo principal dessa tarefa é redefinir o agente para a próxima vez que ele for executado. Para fazer isso, o comando **sysprep** redefine o estado do agente, atualiza o arquivo `unattend.xml`, desabilita o RDP e executa o Sysprep.

O comportamento do script depende do modo em que o agente executa os scripts: em linha ou desanexados.

Em linha (padrão)  
O agente EC2Launch v2 executa os scripts um de cada vez (`detach: false`) Essa é a configuração padrão.  
Quando seu script em linha emite um  comando **reset** ou **sysprep**, ele é executado imediatamente e redefine o agente. A tarefa atual é concluída e, em seguida, o agente é desligado sem executar mais nenhuma tarefa.  
Por exemplo, se a tarefa que emite o comando tivesse sido seguida por uma tarefa `startSsm` (incluída por padrão após a execução dos dados do usuário), a tarefa não executaria e o serviço Systems Manager nunca seria iniciado.

Desanexados  
O agente do EC2Launch v2 executa scripts simultaneamente com outras tarefas (`detach: true`).  
Quando seu script desanexado emite um comando **reset** ou **sysprep**, esses comandos aguardam a conclusão do agente antes de serem executados. As tarefas após executeScript ainda serão executadas.

**Exemplo:**

```
ec2launch sysprep
```

**Usage**

`ec2launch sysprep [flags]`

**Sinalizadores**

`-c`,`--clean`

limpa os logs da instância antes de `sysprep`

`-h`,`--help`

ajuda para Sysprep

`-s`,`--shutdown`

desliga a instância após `sysprep`

### validar
<a name="ec2launch-v2-validate"></a>

Valida o arquivo `agent-config` `C:\ProgramData\Amazon\EC2Launch\config\agent-config.yml`.

**Exemplo**

```
ec2launch validate
```

**Usage**

`ec2launch validate [flags]`

**Sinalizadores**

-h` `, `--help`

ajuda para `validate`

### version
<a name="ec2launch-v2-version"></a>

Obtém a versão executável.

**Exemplo**

```
ec2launch version
```

**Usage**

`ec2launch version [flags]`

**Sinalizadores**

`-h`, `--help`

ajuda para `version`

### wallpaper
<a name="ec2launch-v2-wallpaper"></a>

Define o novo papel de parede para o caminho de papel de parede fornecido (arquivo .jpg) e exibe os detalhes da instância selecionada.

#### Sintaxe
<a name="lv2-wallpaper-syntax"></a>

```
ec2launch wallpaper ^
--path="C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg" ^
--all-tags ^
--attributes=hostName,instanceId,privateIpAddress,publicIpAddress,ipv6Address,instanceSize,availabilityZone,architecture
```

#### Entradas
<a name="lv2-wallpaper-inputs"></a>Parâmetros

**--allowed-tags [*tag-name-1*, *tag-name-n*]**  
(Opcional) Matriz JSON codificada em Base64 de nomes de tags de instância para exibição no papel de parede. É possível usar essa tag ou `--all-tags`, mas não ambas.

**--attributes *attribute-string-1*, *attribute-string-n***  
(Opcional) uma lista separada por vírgulas de strings de atributo `wallpaper` para aplicar configurações ao papel de parede.

**[--path \$1 -p] *path-string***  
(Obrigatório) Especifica o caminho do arquivo da imagem do plano de fundo do `wallpaper`.Sinalizadores

**--all-tags**  
(Opcional) Exibe todas as tags de instância no papel de parede. É possível usar essa tag ou `--allowed-tags`, mas não ambas.

**[--help \$1 -h]**  
Exibe a ajuda referente ao comando **wallpaper**.

## Configuração de tarefas do EC2Launch v2
<a name="ec2launch-v2-task-configuration"></a>

Esta seção inclui o esquema, tarefas, detalhes e exemplos de configuração para `agent-config.yml` e dados do usuário.

**Topics**
+ [Esquema: `agent-config.yml`](#ec2launch-v2-schema-agent-config)
+ [Configurar scripts de dados do usuário do EC2Launch v2 que são executados durante a execução ou reinicialização](#ec2launch-v2-schema-user-data)

### Esquema: `agent-config.yml`
<a name="ec2launch-v2-schema-agent-config"></a>

Veja a estrutura do arquivo `agent-config.yml` abaixo. Não é possível repetir uma tarefa na mesma etapa. Para obter as propriedades da tarefa, consulte as descrições da tarefa a seguir.

#### Estrutura do documento: agent-config.yml
<a name="ec2launch-v2-schema-agent-config-doc-structure"></a>

**JSON**

```
{
	"version": "1.1",
	"config": [
		{
			"stage": "string",
			"tasks": [
				{
					"task": "string",
					"inputs": {
						...
					}
				},
				...
			]
		},
		...
	]
}
```

**YAML**

```
version: 1.1
config:
- stage: string
  tasks:
  - task: string
	inputs:
	  ...
  ...
...
```

#### Exemplo: `agent-config.yml`
<a name="ec2launch-v2-example-agent-config"></a>

O exemplo a seguir mostra as configurações do arquivo de configuração `agent-config.yml`.

```
version: 1.1
config:
- stage: boot
  tasks:
  - task: extendRootPartition
- stage: preReady
  tasks:
  - task: activateWindows
    inputs:
      activation:
        type: amazon
  - task: setDnsSuffix
    inputs:
      suffixes:
      - $REGION.ec2-utilities.amazonaws.com
  - task: setAdminAccount
    inputs:
      password:
        type: random
  - task: setWallpaper
    inputs:
      path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg
      attributes:
      - hostName
      - instanceId
      - privateIpAddress
      - publicIpAddress
      - instanceSize
      - availabilityZone
      - architecture
- stage: postReady
  tasks:
  - task: startSsm
```

### Configurar scripts de dados do usuário do EC2Launch v2 que são executados durante a execução ou reinicialização
<a name="ec2launch-v2-schema-user-data"></a>

Os exemplos de JSON e YAML a seguir mostram a estrutura do documento para dados do usuário. O Amazon EC2 analisa cada tarefa nomeada na matriz `tasks` que você especifica no documento. Cada tarefa tem seu próprio conjunto de propriedades e requisitos. Para obter detalhes, consulte [Definições de tarefas para tarefas de inicialização do EC2Launch v2](ec2launch-v2-task-definitions.md).

**nota**  
Uma tarefa só deve aparecer uma vez na matriz de tarefas de dados do usuário.

#### Estrutura do documento: dados do usuário
<a name="ec2launch-v2-schema-user-data-doc-structure"></a>

**JSON**

```
{
	"version": "1.1",
	"tasks": [
		{
			"task": "string",
			"inputs": {
				...
			},
		},
		...
	]
}
```

**YAML**

```
version: 1.1
tasks:
- task: string
  inputs:
    ...
...
```

#### Exemplo: dados do usuário
<a name="ec2launch-v2-example-user-data"></a>

Para obter mais informações sobre as funções de usuário, consulte [Como o Amazon EC2 lida com os dados dos usuários para instâncias do Windows](user-data.md#ec2-windows-user-data).

O exemplo de documento YAML a seguir mostra um script do PowerShell que o EC2Launch v2 executa como dados do usuário para criar um arquivo.

```
version: 1.1
tasks:
- task: executeScript
  inputs:
  - frequency: always
    type: powershell
    runAs: localSystem
    content: |-
      New-Item -Path 'C:\PowerShellTest.txt' -ItemType File
```

É possível usar um formato XML para os dados do usuário que seja compatível com as versões anteriores do agente de inicialização. O EC2Launch v2 executa o script como uma tarefa `executeScript` no estágio `UserData`. Para atender ao comportamento do EC2Launch v1 e do EC2Config, o script de dados do usuário é executado por padrão como um processo anexado/em linha.

É possível adicionar tags opcionais para personalizar a execução do seu script. Por exemplo, para executar o script de dados do usuário quando a instância é reinicializada, além de uma vez quando a instância é iniciada, é possível usar a seguinte tag:

`<persist>true</persist>`

**Exemplo:**

```
<powershell>
  $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm")
  New-Item $file -ItemType file
</powershell>
<persist>true</persist>
```

É possível especificar um ou mais argumentos do PowerShell com tag `<powershellArguments>`. Se nenhum argumento for passado, o EC2Launch v2 adicionará o seguinte argumento por padrão: `-ExecutionPolicy Unrestricted`.

**Exemplo:**

```
<powershell>
  $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm")
  New-Item $file -ItemType file
</powershell>
<powershellArguments>-ExecutionPolicy Unrestricted -NoProfile -NonInteractive</powershellArguments>
```

Para executar um script de dados de usuário XML como um processo separado, adicione a seguinte tag aos dados do usuário.

`<detach>true</detach>`

**Exemplo:**

```
<powershell>
  $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm")
  New-Item $file -ItemType file
</powershell>
<detach>true</detach>
```

**nota**  
A tag de desanexação não é compatível com agentes de inicialização anteriores.

#### Log de alterações: dados do usuário
<a name="ec2launch-v2-versions-user-data"></a>

A tabela a seguir lista as alterações nos dados do usuário e as faz referência cruzada à versão do agente EC2Launch v2 aplicável.


| Versão de dados do usuário | Detalhes | Introduzida em | 
| --- | --- | --- | 
| 1.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launch-v2-settings.html) | EC2Launch v2 versão 2.0.1245 | 
| 1,0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launch-v2-settings.html) | EC2Launch v2 versão 2.0.0 | 

\$1 Quando usado com o arquivo `agent-config.yml` padrão.

## Códigos de saída e reinicializações do EC2Launch v2
<a name="ec2launch-v2-exit-codes-reboots"></a>

É possível usar EC2Launch v2 para definir como os códigos de saída são manipulados por seus scripts. Por padrão, o código de saída do último comando executado em um script é relatado como o código de saída de todo o script. Por exemplo, se um script incluir três comandos e o primeiro comando falhar, mas os seguintes forem bem-sucedidos, o status de execução será relatado como `success` porque o comando final foi bem-sucedido.

Se quiser que um script reinicialize uma instância, você deverá especificar `exit 3010` em seu script, mesmo quando a reinicialização for a última etapa do script. O `exit 3010` instrui o EC2Launch v2 a reiniciar a instância e chamar o script novamente até que ele retorne um código de saída que não seja `3010` ou até que a contagem máxima de reinicializações seja atingida. O EC2Launch v2 permite um máximo de 5 reinicializações por tarefa. Se você tentar reiniciar uma instância a partir de um script usando um mecanismo diferente, como `Restart-Computer`, o status de execução do script será inconsistente. Por exemplo, ele pode ficar preso em um loop de reinicialização ou não executar a reinicialização.

Se você estiver usando um formato de dados de usuário XML compatível com agentes mais antigos, os dados do usuário poderão ser executados mais vezes do que o pretendido. Para obter mais informações, consulte [O serviço executa dados do usuário mais de uma vez](ec2launchv2-troubleshooting.md#ec2launchv2-troubleshooting-user-data-more-than-once) na seção Solução de problemas.

## EC2Launch v2 e Sysprep
<a name="ec2launch-v2-sysprep"></a>

O serviço EC2Launch v2 executa o Sysprep, uma ferramenta da Microsoft que permite a criação de uma AMI personalizada do Windows que pode ser reutilizada. Quando o EC2Launch v2 acessa o Sysprep, ela usa os arquivos em `%ProgramData%\Amazon\EC2Launch` para determinar quais operações devem ser executadas. É possível editar esses arquivos indiretamente usando a caixa de diálogo **Configurações do EC2Launch** ou diretamente usando um editor de YAML ou um editor de texto. Contudo, há algumas configurações avançadas que não estão disponíveis na caixa de diálogo **Configurações do EC2Launch**, portanto, é necessário editar as entradas diretamente.

Se você criar AMIs com base em uma instância depois de atualizar suas configurações, as configurações novas serão aplicadas a qualquer instância executada pela nova AMI. Para obter informações sobre como criar uma AMI, consulte [Criação de uma AMI baseada no Amazon EBS](creating-an-ami-ebs.md).

# Definições de tarefas para tarefas de inicialização do EC2Launch v2
<a name="ec2launch-v2-task-definitions"></a>

Cada tarefa que o EC2Launch v2 inicia durante a inicialização ou startup tem seu próprio conjunto de propriedades e requisitos. Os detalhes da tarefa incluem configurações da frequência com que uma tarefa é executada: uma vez ou sempre, em qual estágio do processo de inicialização do agente ela é executada, a sintaxe e exemplos de documentos YAML. Para obter mais informações, revise os detalhes da tarefa mostrados nesta referência.

**Topics**
+ [activateWindows](#ec2launch-v2-activatewindows)
+ [enableJumboFrames](#ec2launch-v2-enablejumboframes)
+ [enableOpenSsh](#ec2launch-v2-enableopenssh)
+ [executeProgram](#ec2launch-v2-executeprogram)
+ [executeScript](#ec2launch-v2-executescript)
+ [extendRootPartition](#ec2launch-v2-extendrootpartition)
+ [initializeVolume](#ec2launch-v2-initializevolume)
+ [optimizeEna](#ec2launch-v2-optimizeena)
+ [setAdminAccount](#ec2launch-v2-setadminaccount)
+ [setDnsSuffix](#ec2launch-v2-setdnssuffix)
+ [setHostName](#ec2launch-v2-sethostname)
+ [setWallpaper](#ec2launch-v2-setwallpaper)
+ [startSsm](#ec2launch-v2-startssm)
+ [sysprep](#ec2launch-v2-task-sysprep)
+ [writeFile](#ec2-launch-v2-writefile)

## activateWindows
<a name="ec2launch-v2-activatewindows"></a>

Ativa o Windows em relação a um conjunto de servidores de AWS KMS. A ativação será ignorada se a instância for detectada como traga a sua própria licença (BYOL).

*Frequência* — uma vez

*AllowedStages* — `[PreReady]`

*Entradas* — 

`activation`: (mapa)

`type`: (string) tipo de ativação a usar, defina como `amazon`

*Exemplo*

```
task: activateWindows
  inputs:
    activation:
    type: amazon
```

## enableJumboFrames
<a name="ec2launch-v2-enablejumboframes"></a>

Habilita frames jumbo, que aumentam a MTU (unidade de transmissão máxima) do adaptador de rede. Para obter mais informações, consulte [Frames jumbo (9001 MTU)](network_mtu.md#jumbo_frame_instances).

*Frequência* — sempre

*AllowedStages* — `[PostReady, UserData]`

*Entradas* — nenhuma

*Exemplo*

```
task: enableJumboFrames
```

## enableOpenSsh
<a name="ec2launch-v2-enableopenssh"></a>

Habilita o Windows OpenSSH e adiciona a chave pública da instância à pasta de chaves autorizadas.

*Frequência* — uma vez

*AllowedStages* — `[PreReady, UserData]`

*Entradas* — nenhuma

*Exemplo*

O exemplo a seguir mostra como habilitar o OpenSSH em uma instância e adicionar a chave pública da instância à pasta de chaves autorizadas. Essa configuração funciona somente em instâncias que executam o Windows Server 2019 e versões posteriores.

```
task: enableOpenSsh
```

## executeProgram
<a name="ec2launch-v2-executeprogram"></a>

Executa um programa com argumentos opcionais e uma frequência especificada.

**Estágios:** você pode executar a tarefa `executeProgram` durante os estágios `PreReady`, `PostReady` e `UserData`.

**Frequência:** configurável. Consulte *Entradas*.

**Entradas**  
Esta seção contém um ou mais programas para a tarefa **executeProgram** executar (entradas). Cada etapa pode incluir as seguintes definições configuráveis:    
**frequência (string)**  
(Obrigatório) Especifique exatamente um dos seguintes valores:  
+ `once`
+ `always`  
**caminho (string)**  
(Obrigatório) O caminho do arquivo para que o executável seja executado.  
**argumentos (lista de strings)**  
(Opcional) Uma lista de argumentos separados por vírgula para fornecer ao programa como entrada.  
**runAs (string)**  
(Obrigatório) Deve ser definido como `localSystem`

**Output**  
Todas as tarefas gravam entradas do arquivo de log no arquivo `agent.log`. A saída adicional da tarefa `executeProgram` é armazenada separadamente em uma pasta com nome dinâmico, da seguinte forma:  
`%LocalAppData%\Temp\EC2Launch#########\outputfilename.tmp`  
O caminho exato para os arquivos de saída está incluído no arquivo `agent.log`, por exemplo:  

```
Program file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\ExecuteProgramInputs.tmp
Output file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Output.tmp
Error file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Err.tmp
```
**Arquivos de saída para a tarefa `executeProgram`**    
`ExecuteProgramInputs.tmp`  
Contém o caminho para o executável e todos os parâmetros de entrada que a tarefa `executeProgram` transmite para ele quando é executada.  
`Output.tmp`  
Contém a saída de runtime do programa que a tarefa `executeProgram` executa.  
`Err.tmp`  
Contém as mensagens de erro de runtime do programa que a tarefa `executeProgram` executa.

**Exemplos**  
Os exemplos a seguir mostram como executar um arquivo executável de um diretório local em uma instância com a tarefa `executeProgram`.  
**Exemplo 1: configurar executável com um argumento**  
Este exemplo mostra uma tarefa `executeProgram` que executa um executável de configuração no modo silencioso.

```
task: executeProgram
  inputs:
    - frequency: always
      path: C:\Users\Administrator\Desktop\setup.exe
      arguments: ['-quiet']
```
**Exemplo 2: VLC executável com dois argumentos**  
Este exemplo mostra uma tarefa `executeProgram` que executa um arquivo VLC executável com dois argumentos transmitidos como parâmetros de entrada.

```
task: executeProgram
  inputs:
    - frequency: always
      path: C:\vlc-3.0.11-win64.exe 
      arguments: ['/L=1033','/S']
      runAs: localSystem
```

## executeScript
<a name="ec2launch-v2-executescript"></a>

Executa um script com argumentos opcionais e uma frequência especificada. O comportamento do script depende do modo em que o agente executa os scripts: em linha ou desanexados.

Em linha (padrão)  
O agente EC2Launch v2 executa os scripts um de cada vez (`detach: false`) Essa é a configuração padrão.  
Quando seu script em linha emite um  comando **reset** ou **sysprep**, ele é executado imediatamente e redefine o agente. A tarefa atual é concluída e, em seguida, o agente é desligado sem executar mais nenhuma tarefa.  
Por exemplo, se a tarefa que emite o comando tivesse sido seguida por uma tarefa `startSsm` (incluída por padrão após a execução dos dados do usuário), a tarefa não executaria e o serviço Systems Manager nunca seria iniciado.

Desanexados  
O agente do EC2Launch v2 executa scripts simultaneamente com outras tarefas (`detach: true`).  
Quando seu script desanexado emite um comando **reset** ou **sysprep**, esses comandos aguardam a conclusão do agente antes de serem executados. As tarefas após executeScript ainda serão executadas.

**Estágios:** você pode executar a tarefa `executeScript` durante os estágios `PreReady`, `PostReady` e `UserData`.

**Frequência:** configurável. Consulte *Entradas*.

**Entradas**  
Esta seção contém um ou mais scripts para a tarefa **executeScript** executar (entradas). Cada etapa pode incluir as seguintes definições configuráveis:    
**frequência (string)**  
(Obrigatório) Especifique exatamente um dos seguintes valores:  
+ `once`
+ `always`  
**tipo (string)**  
(Obrigatório) Especifique exatamente um dos seguintes valores:  
+ `batch`
+ `powershell`  
**argumentos (lista de strings)**  
(Opcional) Uma lista de argumentos de string a serem transmitidos ao shell (não ao script do PowerShell). Esse parâmetro não é compatível com `type: batch`. Se nenhum argumento for passado, o EC2Launch v2 adicionará o seguinte argumento por padrão: `-ExecutionPolicy Unrestricted`.  
**conteúdo (string)**  
(Obrigatório) Conteúdo de script  
**runAs (string)**  
(Obrigatório) Especifique exatamente um dos seguintes valores:  
+ `admin`
+ `localSystem`  
**desanexar (booleano)**  
(Opcional) O agente do EC2Launch v2 assume como padrão a execução de um script por vez (`detach: false`). Para executar o script simultaneamente com outras tarefas, defina o valor como `true` (`detach: true`).  
Os códigos de saída de script (incluindo `3010`) não têm efeito quando `detach` é definido como `true`.

**Output**  
Todas as tarefas gravam entradas do arquivo de log no arquivo `agent.log`. A saída adicional do script que a tarefa `executeScript` executa é armazenada separadamente em uma pasta com nome dinâmico, da seguinte forma:  
`%LocalAppData%\Temp\EC2Launch#########\outputfilename.ext`  
O caminho exato para os arquivos de saída está incluído no arquivo `agent.log`, por exemplo:  

```
Program file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\UserScript.ps1
Output file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Output.tmp
Error file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Err.tmp
```
**Arquivos de saída para a tarefa `executeScript`**    
`UserScript.ext`  
Contém o script que a tarefa `executeScript` executou. A extensão do arquivo depende do tipo de script especificado no parâmetro `type` da tarefa `executeScript`, da seguinte forma:  
+ Se o tipo for `batch`, então a extensão do arquivo será `.bat`.
+ Se o tipo for `powershell`, então a extensão do arquivo será `.ps1`.  
`Output.tmp`  
Contém a saída de runtime do script que a tarefa `executeScript` executa.  
`Err.tmp`  
Contém as mensagens de erro de runtime do script que a tarefa `executeScript` executa.

**Exemplos**  
Os exemplos a seguir mostram como executar um script em linha com a tarefa `executeScript`.  
**Exemplo 1: arquivo de texto de saída Hello world**  
Este exemplo mostra uma tarefa `executeScript` que executa um script do PowerShell para criar um arquivo de texto "Hello world" na unidade `C:`.

```
task: executeScript
  inputs:
    - frequency: always
      type: powershell
      runAs: admin
      content: |-
        New-Item -Path 'C:\PowerShellTest.txt' -ItemType File
        Set-Content 'C:\PowerShellTest.txt' "Hello world"
```
**Exemplo 2: execução de dois scripts**  
Este exemplo mostra que a tarefa `executeScript` pode executar mais de um script, e o tipo de script não precisa necessariamente corresponder.
O primeiro script (`type: powershell`) grava um resumo dos processos atualmente em execução na instância em um arquivo de texto localizado na unidade `C:`.  
O segundo script (`batch`) grava as informações do sistema no arquivo `Output.tmp`.  

```
task: executeScript
  inputs:
    - frequency: always
      type: powershell
      runAs: localSystem
      content: |
        Get-Process | Out-File -FilePath C:\Process.txt
    - frequency: always
      type: batch
      runAs: localSystem
      content: |
        systeminfo
```
**Exemplo 3: configuração do sistema idempotente com reinicializações**  
Este exemplo mostra uma tarefa `executeScript` que executa um script idempotente para realizar a seguinte configuração do sistema com uma reinicialização entre cada etapa:
+ Renomear o computador.
+ Juntar o computador ao domínio.
+ Habilitar Telnet.
O script garante que cada operação seja executada apenas uma vez. Isso evita um loop de reinicialização e torna o script idempotente.  

```
task: executeScript
  inputs:
    - frequency: always
      type: powershell
      runAs: localSystem
      content: |-
        $name = $env:ComputerName
        if ($name -ne $desiredName) {
          Rename-Computer -NewName $desiredName
          exit 3010
        }
        $domain = Get-ADDomain
        if ($domain -ne $desiredDomain) 
        {
          Add-Computer -DomainName $desiredDomain
          exit 3010
        }
        $telnet = Get-WindowsFeature -Name Telnet-Client
        if (-not $telnet.Installed)
        {
          Install-WindowsFeature -Name "Telnet-Client"
          exit 3010 
        }
```

## extendRootPartition
<a name="ec2launch-v2-extendrootpartition"></a>

Estende o volume raiz para usar todo o espaço disponível no disco.

*Frequência* — uma vez

*AllowedStages* — `[Boot]`

*Entradas* — nenhuma

*Exemplo* 

```
task: extendRootPartition
```

## initializeVolume
<a name="ec2launch-v2-initializevolume"></a>

Inicializa volumes vazios que estão anexados à instância para que eles sejam ativados e particionados. O agente de inicialização ignorará a inicialização se detectar que o volume não está vazio. Um volume será considerado vazio se os primeiros 4 KiB estiverem vazios ou se o volume não tiver um [layout de unidade reconhecível pelo Windows](https://learn.microsoft.com/en-us/windows/win32/api/winioctl/ns-winioctl-drive_layout_information_ex).

O parâmetro de entrada `letter` sempre é aplicado quando essa tarefa é executada, quer a unidade tenha sido inicializada ou não.

A tarefa `initializeVolume` realiza as ações a seguir.
+ Defina os atributos de disco `offline` e `readonly` como falsos.
+ Crie uma partição. Se nenhum tipo de partição for especificado no parâmetro de entrada `partition`, os seguintes padrões serão aplicados:
  + Se o tamanho do disco for menor do que 2 TB, defina o tipo de partição com `mbr`.
  + Se o tamanho do disco for 2 TB ou mais, defina o tipo de partição com `gpt`.
+ Formate o volume como NTFS.
+ Defina o rótulo do volume como se segue:
  + Use o valor `name` do parâmetro de entrada, se especificado.
  + Se o volume for efêmero e nenhum nome estiver especificado, defina o rótulo do volume como `Temporary Storage Z`.
+ Se o volume for efêmero (SSD ou HDD, não Amazon EBS), crie um arquivo `Important.txt` na raiz do volume com o seguinte conteúdo:

  ```
  This is an 'Instance Store' disk and is provided at no additional charge.
  
  *This disk offers increased performance since it is local to the host
  *The number of Instance Store disks available to an instance vary by instance type
  *DATA ON THIS DRIVE WILL BE LOST IN CASES OF IMPAIRMENT OR STOPPING THE INSTANCE. PLEASE ENSURE THAT ANY IMPORTANT DATA IS BACKED UP FREQUENTLY
  
  For more information, please refer to: Armazenamento em bloco temporário do armazenamento de instância para instâncias do EC2.
  ```
+ Defina a letra da unidade como o valor especificado no parâmetro de entrada `letter`.

**Estágios:** você pode executar a tarefa `initializeVolume` durante os estágios `PostReady` e `UserData`.

**Frequência:** sempre.

**Entradas**  
Você pode configurar os parâmetros de runtime seguinte forma:    
**dispositivos (lista de mapas)**  
(Condicional) Configuração de cada dispositivo iniciado pelo agente de inicialização. É obrigatório quando o parâmetro de entrada `initialize` está definido como `devices`.  
+ **dispositivo (string, obrigatório)**: identifica o dispositivo durante a criação da instância. Por exemplo, `xvdb`, `xvdf` ou `\dev\nvme0n1`.
+ **letra (string, opcional)**: um caractere. A letra de unidade a ser atribuída.
+ **nome (string, opcional)**: o nome do volume a ser atribuído.
+ **partição (string, opcional)**: especifique um dos seguintes valores para o tipo de partição a ser criada ou deixe o agente de inicialização usar o padrão de acordo com o tamanho do volume:
  + mbr
  + gpt  
**inicializar (string)**  
(Obrigatório) Especifique exatamente um dos seguintes valores:  
+ `all`
+ `devices`

**Exemplos**  
Os exemplos a seguir mostram exemplos de configurações de entrada para a tarefa `initializeVolume`.  
**Exemplo 1: inicializar dois volumes em uma instância**  
Este exemplo mostra uma tarefa `initializeVolume` que inicializa dois volumes secundários em uma instância. O dispositivo denominado `DataVolume2` no exemplo é efêmero.

```
task: initializeVolume
inputs:
  initialize: devices
  devices:
  - device: xvdb
    name: DataVolume1
    letter: D
    partition: mbr
  - device: /dev/nvme0n1
    name: DataVolume2
    letter: E
    partition: gpt
```

**Exemplo 2: inicializar volumes do EBS anexados a uma instância**  
Este exemplo mostra uma tarefa `initializeVolume` que inicializa todos os volumes vazios do EBS que estão conectados à instância.

```
task: initializeVolume
inputs:
  initialize: all
```

## optimizeEna
<a name="ec2launch-v2-optimizeena"></a>

Otimiza as configurações do ENA com base no tipo de instância atual; pode reinicializar a instância.

*Frequência* — sempre

*AllowedStages* — `[PostReady, UserData]`

*Entradas* — nenhuma

*Exemplo* 

```
task: optimizeEna
```

## setAdminAccount
<a name="ec2launch-v2-setadminaccount"></a>

Define atributos para a conta de administrador padrão criada na máquina local.

*Frequência* — uma vez

*AllowedStages* — `[PreReady]`

*Entradas* — 

`name`: (string) nome da conta de administrador

`password`: (mapa)

`type`: (string) estratégia para definir a senha como `static`, `random` ou `doNothing`

`data`: (string) armazena dados se o campo `type` for estático

*Exemplo*

```
task: setAdminAccount
inputs:
  name: Administrator
  password:
  type: random
```

## setDnsSuffix
<a name="ec2launch-v2-setdnssuffix"></a>

Adiciona sufixos DNS à lista de sufixos de pesquisa. Somente sufixos que ainda não existem são adicionados à lista. Para obter mais informações sobre como os agentes de inicialização definem os sufixos DNS, consulte [Configurar o sufixo DNS para agentes de execução do EC2 Windows](launch-agents-set-dns.md).

*Frequência* — sempre

*AllowedStages* — `[PreReady]`

*Entradas* — 

`suffixes`: (lista de strings) lista de um ou mais sufixos DNS válidos; variáveis de substituição válidas são `$REGION` e `$AZ`

*Exemplo*

```
task: setDnsSuffix
inputs:
  suffixes:
  - $REGION.ec2-utilities.amazonaws.com
```

## setHostName
<a name="ec2launch-v2-sethostname"></a>

Define o nome do host do computador como uma string personalizada ou, se o `hostName` não for especificado, o endereço IPv4 privado.

*Frequência* — sempre

*AllowedStages* — `[PostReady, UserData]`

*Entradas* — 

`hostName`: (string) nome do host opcional, que deve ser formatado conforme o seguinte.
+ Ele deve ter 15 caracteres ou menos
+ Ele deve conter apenas caracteres alfanuméricos (a-z, A-Z, 0-9) e hífen (-).
+ Ele não deve consistir inteiramente em caracteres numéricos.

`reboot`: (booliano) indica se uma reinicialização é permitida quando o nome de host é alterado

*Exemplo*

```
task: setHostName
inputs:
  reboot: true
```

## setWallpaper
<a name="ec2launch-v2-setwallpaper"></a>

Cria o arquivo de atalho `setwallpaper.lnk` na pasta de startup de cada usuário existente, exceto para `Default User`. Esse arquivo de atalho é executado quando o usuário faz login pela primeira vez após a inicialização da instância. Ele configura a instância com um papel de parede personalizado que exibe os atributos da instância.

O caminho de arquivo de atalho é:

```
$env:SystemDrive/Users/<user>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/setwallpaper.lnk
```

**nota**  
Quando você remover a tarefa `setWallpaper`, não exclua esse arquivo de atalho. Para obter mais informações, consulte [`setWallpaper`A tarefa não está ativada, mas o papel de parede é redefinido na reinicialização](ec2launchv2-troubleshooting.md#ec2launchv2-troubleshooting-wallpaper-resets).

**Estágios**: é possível configurar o papel de parede durante os estágios `PreReady` e `UserData`.

**Frequência:** `always`

**Configuração do papel de parede**  
Você pode usar as definições a seguir para configurar o papel de parede.

**Entradas**  
Parâmetros de entrada que você fornece e atributos que você pode definir para configurar o papel de parede:    
**caminho (string)**  
(Obrigatório) O caminho do nome do arquivo da imagem local no formato .jpg a ser usada como imagem do papel de parede.  
**atributos (lista de strings)**  
(Opcional) Você pode adicionar um ou mais dos seguintes atributos ao papel de parede:  
+ `architecture`
+ `availabilityZone`
+ `hostName`
+ `instanceId`
+ `instanceSize`
+ `privateIpAddress`
+ `publicIpAddress`
+ `ipv6Address`  
**instanceTags**  
(Opcional) Você pode usar exatamente uma das seguintes opções para essa configuração.  
+ **AllTags** (string): adicione todas as tags de instância ao papel de parede.

  ```
  instanceTags: AllTags
  ```
+ **InstanceTags** (lista de strings): especifique uma lista de nomes de tags de instância para adicionar ao papel de parede. Por exemplo:

  ```
  instanceTags:
    - Tag 1
    - Tag 2
  ```

**Exemplo**  
O exemplo a seguir mostra as entradas da configuração do papel de parede que definem o caminho do arquivo da imagem de fundo do papel de parede, junto com as tags de instância denominadas `Tag 1` e `Tag 2`, e os atributos que incluem o nome do host, o ID da instância e os endereços IP públicos e privados da instância.

```
task: setWallpaper
inputs:
  path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg
  attributes:
  - hostName
  - instanceId
  - privateIpAddress
  - publicIpAddress
  instanceTags:
  - Tag 1
  - Tag 2
```

**nota**  
Você deve habilitar as tags nos metadados para mostrá-las no papel de parede. Para obter mais informações sobre tags e metadados da instância, consulte [Visualizar tags para as instâncias do EC2 usando os metadados de instância](work-with-tags-in-IMDS.md).

## startSsm
<a name="ec2launch-v2-startssm"></a>

Iniciar o serviço Systems Manager (SSM) após o Sysprep.

*Frequência* — sempre

*AllowedStages* — `[PostReady, UserData]`

*Entradas* — nenhuma

*Exemplo*

```
task: startSsm
```

## sysprep
<a name="ec2launch-v2-task-sysprep"></a>

Redefine o estado do serviço, atualiza `unattend.xml`, desativa o RDP e executa Sysprep. Esta tarefa só é executada depois que todas as outras tarefas forem concluídas

*Frequência* — uma vez

*AllowedStages* — `[UserData]`

*Entradas* — 

`clean`: (booliano) limpa os logs de instância antes de executar o Sysprep

`shutdown`: (booliano) desliga a instância depois de executar o Sysprep

*Exemplo*

```
task: sysprep
inputs:
clean: true
shutdown: true
```

## writeFile
<a name="ec2-launch-v2-writefile"></a>

Grava um arquivo em um destino.

*Frequência* — visualizar *Entradas*

*AllowedStages* — `[PostReady, UserData]`

*Entradas* — 

`frequency`: (string) `once` ou `always`

`destination`: (string) caminho no qual gravar o conteúdo

`content`: (string) texto a gravar no destino

*Exemplo*

```
task: writeFile
inputs:
  - frequency: once
  destination: C:\Users\Administrator\Desktop\booted.txt
  content: Windows Has Booted
```

# Solucionar problemas com o agente do EC2Launch v2
<a name="ec2launchv2-troubleshooting"></a>

Esta seção mostra cenários comuns de solução de problemas para o EC2Launch v2, informações sobre como visualizar logs de eventos do Windows e saída e mensagens do log do console.

**Topics**
+ [Cenários comuns](#ec2launchv2-troubleshooting-scenarios)
+ [Logs de eventos do Windows](#ec2launchv2-windows-event-logs)
+ [Saída do log do console do EC2Launch v2](#ec2launchv2-console-output)

## Cenários comuns de solução de problemas
<a name="ec2launchv2-troubleshooting-scenarios"></a>

Esta seção mostra cenários comuns de solução de problemas e etapas para resolução.

**Topics**
+ [Falha no serviço ao definir o papel de parede](#ec2launchv2-troubleshooting-wallpaper)
+ [Falha no serviço ao executar dados do usuário](#ec2launchv2-troubleshooting-user-data)
+ [O serviço executa uma tarefa apenas uma vez](#ec2launchv2-troubleshooting-task-once)
+ [Falha no serviço ao executar uma tarefa](#ec2launchv2-troubleshooting-task-failed)
+ [O serviço executa dados do usuário mais de uma vez](#ec2launchv2-troubleshooting-user-data-more-than-once)
+ [As tarefas agendadas do EC2Launch v1 não conseguem ser executadas após a migração para o EC2Launch v2](#ec2launchv2-troubleshooting-scheduled-tasks-migration)
+ [O serviço inicializa um volume do EBS que não está vazio](#ec2launchv2-troubleshooting-ebs-initialize)
+ [`setWallpaper`A tarefa não está ativada, mas o papel de parede é redefinido na reinicialização](#ec2launchv2-troubleshooting-wallpaper-resets)
+ [Serviço preso no status em execução](#ec2launchv2-troubleshooting-service-stuck-running)
+ [Um `agent-config.yml` inválido impede a abertura da caixa de diálogo de configurações do EC2Launch v2](#ec2launchv2-troubleshooting-invalid-agent-config)
+ [`task:executeScript should be unique and only invoked once`](#ec2launchv2-troubleshooting-executescript)

### Falha no serviço ao definir o papel de parede
<a name="ec2launchv2-troubleshooting-wallpaper"></a>

**Resolução**

1. Verifique se `%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\setwallpaper.lnk` existe.

1. Verifique `%ProgramData%\Amazon\EC2Launch\log\agent.log` para saber se ocorreram erros.

### Falha no serviço ao executar dados do usuário
<a name="ec2launchv2-troubleshooting-user-data"></a>

**Causa possível**: a falha no serviço pode ter ocorrido antes da execução dos dados do usuário.

**Resolução**

1. Verifique `%ProgramData%\Amazon\EC2Launch\state\previous-state.json`.

1. Veja se `boot`, `network`, `preReady` e `postReadyLocalData` foram todos marcados como sucesso.

1. Se um dos estágios falhar, verifique se há erros específicos `%ProgramData%\Amazon\EC2Launch\log\agent.log`.

### O serviço executa uma tarefa apenas uma vez
<a name="ec2launchv2-troubleshooting-task-once"></a>

**Resolução**

1. Verifique a frequência da tarefa.

1. Se o serviço já tiver sido executado após Sysprep e a frequência da tarefa estiver definida como `once`, a tarefa não será executada novamente.

1. Defina a frequência da tarefa como `always` se você quiser que ela execute a tarefa sempre que o EC2Launch v2 for executado.

### Falha no serviço ao executar uma tarefa
<a name="ec2launchv2-troubleshooting-task-failed"></a>

**Resolução**

1. Verifique as entradas mais recentes em `%ProgramData%\Amazon\EC2Launch\log\agent.log`.

1. Se não ocorrerem erros, tente executar o serviço manualmente a partir de `"%ProgramFiles%\Amazon\EC2Launch\EC2Launch.exe" run` para ver se as tarefas foram bem-sucedidas.

### O serviço executa dados do usuário mais de uma vez
<a name="ec2launchv2-troubleshooting-user-data-more-than-once"></a>

**Resolução**  
Os dados do usuário são tratados de forma diferente entre o EC2Launch v1 e o EC2Launch v2. O EC2Launch v1 executa dados do usuário como uma tarefa programada na instância quando `persist` for definido como `true`. Se `persist` estiver definido como `false`, a tarefa não será programada mesmo quando ela sair com uma reinicialização ou for interrompida durante a execução. 

EC2Launch v2 executa dados do usuário como uma tarefa de agente e rastreia seu estado de execução. Se os dados do usuário emitirem uma reinicialização do computador ou se os dados do usuário tiverem sido interrompidos durante a execução, o estado de execução persistirá `pending` e os dados do usuário serão executados novamente na próxima inicialização da instância. Se você quiser impedir que o script de dados do usuário seja executado mais de uma vez, torne o script idempotente. 

O exemplo a seguir de script idempotente define o nome do computador e se junta a um domínio.

```
<powershell>
  $name = $env:computername
  if ($name -ne $desiredName) {
	Rename-Computer -NewName $desiredName
  }
  $domain = Get-ADDomain
  if ($domain -ne $desiredDomain) 
  {
	Add-Computer -DomainName $desiredDomain
  }
  $telnet = Get-WindowsFeature -Name Telnet-Client
  if (-not $telnet.Installed)
  {
	Install-WindowsFeature -Name "Telnet-Client"
  }
</powershell>
<persist>false</persist>
```

### As tarefas agendadas do EC2Launch v1 não conseguem ser executadas após a migração para o EC2Launch v2
<a name="ec2launchv2-troubleshooting-scheduled-tasks-migration"></a>

**Resolução**  
A ferramenta de migração não detecta qualquer tarefa agendada vinculada aos scripts do EC2Launch v1; portanto, ela não configura automaticamente essas tarefas no EC2Launch v2. Para configurar essas tarefas, edite o arquivo [`agent-config.yml`](ec2launch-v2-settings.md#ec2launch-v2-task-configuration) ou use a [caixa de diálogo de configurações do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-ui). Por exemplo, se uma instância tiver uma tarefa agendada que executa `InitializeDisks.ps1`, depois de executar a ferramenta de migração, você deverá especificar os volumes que deseja inicializar na caixa de diálogo de configurações do EC2Launch v2. Consulte a Etapa 6 do procedimento para [Alterar configurações usando a caixa de diálogo de configurações do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-ui). 

### O serviço inicializa um volume do EBS que não está vazio
<a name="ec2launchv2-troubleshooting-ebs-initialize"></a>

**Resolução**  
Antes de inicializar um volume, o EC2Launch v2 tenta detectar se ele está vazio. Se um volume não estiver vazio, ele ignorará a inicialização. Quaisquer volumes detectados como não vazios não são inicializados. Um volume é considerado vazio se seus primeiros 4 KiB estiverem vazios ou se o volume não tiver um [layout de unidade reconhecível pelo Windows](https://learn.microsoft.com/en-us/windows/win32/api/winioctl/ns-winioctl-drive_layout_information_ex). Um volume que foi inicializado e formatado em um sistema Linux não tem um layout de unidade reconhecível pelo Windows, por exemplo MBR ou GPT. Portanto, ele será considerado vazio e será inicializado. Se você quiser preservar esses dados, não confie na detecção de unidade vazia do EC2Launch v2. Em vez disso, especifique os volumes que você gostaria de inicializar na [caixa de diálogo de configurações do EC2Launch v2](ec2launch-v2-settings.md#ec2launch-v2-ui) (consulte a etapa 6) ou no [`agent-config.yml`](ec2launch-v2-task-definitions.md#ec2launch-v2-initializevolume).

### `setWallpaper`A tarefa não está ativada, mas o papel de parede é redefinido na reinicialização
<a name="ec2launchv2-troubleshooting-wallpaper-resets"></a>

A tarefa `setWallpaper` cria o arquivo de atalho `setwallpaper.lnk` na pasta de startup de cada usuário existente. Esse arquivo de atalho é executado quando o usuário faz login pela primeira vez após a inicialização da instância. Ele configura a instância com um papel de parede personalizado que exibe os atributos da instância. Remover a tarefa `setWallpaper` não exclui esse arquivo de atalho. Exclua esse arquivo manualmente ou excluí-lo usando um script.

O caminho do atalho é:

`$env:SystemDrive/Users/<user>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/setwallpaper.lnk`

**Resolução**  
Exclua esse arquivo manualmente ou exclua-o usando um script.

**Exemplo de script PowerShell para excluir arquivo de atalho**

```
foreach ($userDir in (Get-ChildItem "C:\Users" -Force -Directory).FullName)
{
	$startupPath = Join-Path $userDir -ChildPath "AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
	if (Test-Path $startupPath)
	{
		$wallpaperSetupPath = Join-Path $startupPath -ChildPath "setwallpaper.lnk"
		if (Test-Path $wallpaperSetupPath)
		{
			Remove-Item $wallpaperSetupPath -Force -Confirm:$false
		}
	}
}
```

### Serviço preso no status em execução
<a name="ec2launchv2-troubleshooting-service-stuck-running"></a>

**Descrição**

O EC2Launch v2 é bloqueado com mensagens de log (`agent.log`) semelhantes às seguintes:

```
2022-02-24 08:08:58 Info: *****************************************************************************************
2022-02-24 08:08:58 Info: EC2Launch Service starting
2022-02-24 08:08:58 Info: Windows event custom log exists: Amazon EC2Launch
2022-02-24 08:08:58 Info: ACPI SPCR table not supported. Bailing Out
2022-02-24 08:08:58 Info: Serial port is in use. Waiting for Serial Port...
2022-02-24 08:09:00 Info: ACPI SPCR table not supported. Use default console port.
2022-02-24 08:09:02 Info: ACPI SPCR table not supported. Use default console port.
2022-02-24 08:09:04 Info: ACPI SPCR table not supported. Use default console port.
2022-02-24 08:09:06 Info: ACPI SPCR table not supported. Use default console port.
```

**Possível causa**  
O SAC está habilitado e usando a porta serial. Para mais informações, consulte [Use SAC to troubleshoot your Windows instance](troubleshoot-using-serial-console.md#troubleshooting-sac) (Usar o SAC para solucionar problemas de instâncias do Windows).

**Resolução**  
Tente as seguintes etapas para resolver esse problema:
+ Desative o serviço que está usando a porta serial.
+ Se quiser que o serviço continue usando a porta serial, crie scripts personalizados para executar tarefas do agente de execução e invoque-os como tarefas agendadas. 

### Um `agent-config.yml` inválido impede a abertura da caixa de diálogo de configurações do EC2Launch v2
<a name="ec2launchv2-troubleshooting-invalid-agent-config"></a>

**Descrição**  
As configurações do EC2Launch v2 tentam analisar o arquivo `agent-config.yml` antes de abrir a caixa de diálogo. Se o arquivo de configuração YAML não seguir o esquema compatível, a caixa de diálogo exibirá o seguinte erro:

`Unable to parse configuration file agent-config.yml. Review configuration file. Exiting application.`

**Resolução**

1. Verifique se o arquivo de configuração segue o [esquema compatível](ec2launch-v2-settings.md#ec2launch-v2-schema-agent-config).

1. Para começar do zero, copie o arquivo de configuração padrão no `agent-config.yml`. Você pode usar o [exemplo `agent-config.yml`](ec2launch-v2-settings.md#ec2launch-v2-example-agent-config) fornecido na seção Configuração da tarefa.

1. Também é possível recomeçar excluindo o `agent-config.yml`. As configurações do EC2Launch v2 geram um arquivo de configuração vazio.

### `task:executeScript should be unique and only invoked once`
<a name="ec2launchv2-troubleshooting-executescript"></a>

**Descrição**  
Não é possível repetir uma tarefa na mesma etapa.

**Resolução**  
Algumas tarefas devem ser inseridas como uma matriz, como [**executeScript**](ec2launch-v2-task-definitions.md#ec2launch-v2-executescript) e [**executeProgram**](ec2launch-v2-task-definitions.md#ec2launch-v2-executeprogram). Para obter um exemplo de como escrever o script como uma matriz, consulte [**executeScript**](ec2launch-v2-task-definitions.md#ec2launch-v2-executescript).

## Logs de eventos do Windows
<a name="ec2launchv2-windows-event-logs"></a>

O EC2Launch v2 publica logs de eventos do Windows para eventos importantes, como a inicialização do serviço, o Windows pronto, e o sucesso e a falha da tarefa. Identificadores de eventos identificam exclusivamente um evento específico. Cada evento contém informações de estágio, tarefa e nível e uma descrição. É possível definir gatilhos para eventos específicos usando o identificador de eventos.

Os IDs de evento fornecem informações sobre um evento e identificam alguns eventos de forma exclusiva. O dígito menos significativo de um ID de evento indica a gravidade de um evento. 


| Evento | Dígito menos significativo | 
| --- | --- | 
|  Success  | . . .0 | 
| Informational | . . .1 | 
| Warning | . . .2 | 
| Error | . . .3 | 

Os eventos relacionados ao serviço, gerados quando o serviço é iniciado ou interrompido, incluem um identificador de evento de um dígito.


| Evento | Identificador de um dígito | 
| --- | --- | 
|  Success  | 0 | 
| Informational | 1 | 
| Warning | 2 | 
| Error | 3 | 

As mensagens de evento para eventos do `EC2LaunchService.exe` começam com `Service:`. As mensagens de evento para eventos do `EC2Launch.exe` não começam com `Service:`.

Os IDs de evento de quatro dígitos incluem informações sobre o estado, a tarefa e a gravidade de um evento.

**Topics**
+ [Formato de ID do evento](#ec2launchv2-windows-event-logs-format)
+ [Exemplos de ID de evento](#ec2launchv2-windows-event-logs-id-examples)
+ [Esquema de log de eventos do Windows](#ec2launch-v2-windows-event-logs-schema)

### Formato de ID do evento
<a name="ec2launchv2-windows-event-logs-format"></a>

A tabela a seguir mostra o formato de um identificador de eventos do EC2Launch v2.


| 3 | 2 1 | 0 | 
| --- | --- | --- | 
|  S  |  T  |  L  | 

As letras e números na tabela representam o tipo de evento e as definições a seguir.


| Tipo de evento | Definição | 
| --- | --- | 
|  S (Estágio)  |  0 - Mensagem de nível de serviço 1 - Inicialização 2 - Rede 3 - PreReady 5 - O Windows está pronto 6 - PostReady 7 - Dados do usuário  | 
|  T (Tarefa)  |  As tarefas representadas pelos dois valores correspondentes são diferentes para cada estágio. Para visualizar a lista completa de eventos, consulte [Esquema de log de eventos do Windows](#ec2launch-v2-windows-event-logs-schema).  | 
| L (Nível do evento) |  0 - Êxito 1 - Informativo 2 - Aviso 3 - Erro  | 

### Exemplos de ID de evento
<a name="ec2launchv2-windows-event-logs-id-examples"></a>

Veja a seguir alguns exemplos de IDs de evento.
+ `5000` - o Windows está pronto para ser usado
+ `3010` - êxito ao ativar a tarefa do Windows no estágio PreReady
+ `6013` - A tarefa Definir papel de parede no estágio PostReady Local Data encontrou um erro

### Esquema de log de eventos do Windows
<a name="ec2launch-v2-windows-event-logs-schema"></a>


| MessageId/ID do evento | Mensagem do evento | 
| --- | --- | 
|  . . .0  | Success | 
|  . . .1  | Informational | 
|  . . .2  | Warning | 
|  . . .3  | Error | 
|  x  | EC2Launch service-level logs | 
|  0  | EC2Launch service exited successfully | 
|  1  |  EC2Launch service informational logs | 
|  2  |  EC2Launch service warning logs | 
| 3 | EC2Launch service error logs | 
|  10  | Replace state.json with previous-state.json | 
| 100 | Serial Port | 
| 200 | Sysprep | 
| 300 | PrimaryNic | 
| 400 | Metadata | 
|  x000  | Stage (1 digit), Task (2 digits), Status (1 digit) | 
|  1000  | Boot | 
|  1010  | Boot - extend\$1root\$1partition | 
| 2000 | Network | 
|  2010  | Network - add\$1routes | 
|  3000  | PreReady | 
|  3010  | PreReady - activate\$1windows | 
|  3020  | PreReady - install\$1egpu\$1manager | 
|  3030  | PreReady - set\$1monitor\$1on | 
|  3040  | PreReady - set\$1hibernation | 
|  3050  | PreReady - set\$1admin\$1account | 
|  3060  | PreReady - set\$1dns\$1suffix | 
|  3070  | PreReady - set\$1wallpaper | 
|  3080  | PreReady - set\$1update\$1schedule | 
|  3090  | PreReady - output\$1log | 
|  3100  | PreReady - enable\$1open\$1ssh | 
|  5000  | Windows is Ready to use | 
|  6000  | PostReadyLocalData | 
| 7000 | PostReadyUserData | 
|  6010/7010  | PostReadyLocal/UserData - set\$1wallpaper | 
|  6020/7020  | PostReadyLocal/UserData - set\$1update\$1schedule | 
|  6030/7030  | PostReadyLocal/UserData - set\$1hostname | 
|  6040/7040  | PostReadyLocal/UserData - execute\$1program | 
|  6050/7050  | PostReadyLocal/UserData - execute\$1script | 
|  6060/7060  | PostReadyLocal/UserData - manage\$1package | 
|  6070/7070  | PostReadyLocal/UserData - initialize\$1volume | 
|  6080/7080  | PostReadyLocal/UserData - write\$1file | 
|  6090/7090  | PostReadyLocal/UserData - start\$1ssm | 
|  7100  | PostReadyUserData - enable\$1open\$1ssh | 
|  6110/7110  | PostReadyLocal/UserData - enable\$1jumbo\$1frames | 

## Saída do log do console do EC2Launch v2
<a name="ec2launchv2-console-output"></a>

Esta seção contém uma saída de log do console de exemplo para EC2Launch v2 e lista todas as mensagens de erro de log do console do EC2Launch v2 para ajudar você a solucionar problemas. Para obter mais informações sobre a saída do console da instância e como acessá-la, consulte [Saída do console da instância](troubleshoot-unreachable-instance.md#instance-console-console-output).

**Topics**
+ [Saída do log do console do EC2Launch v2](#ec2launchv2-console-log-output)
+ [Mensagens de log do console do EC2Launch v2](#ec2launchv2-console-log-messages)

### Saída do log do console do EC2Launch v2
<a name="ec2launchv2-console-log-output"></a>

Veja a seguir um exemplo de saída de log do console para EC2Launch v2. Alguns valores nesse exemplo são substituídos por texto representativo entre chaves.

```
2025/07/22 21:26:53Z: Windows sysprep configuration complete.
2025/07/22 21:26:53Z: Message: Waiting for access to metadata...
2025/07/22 21:26:53Z: Message: Meta-data is now available.
2025/07/22 21:26:53Z: AMI Origin Version: 2024.12.13
2025/07/22 21:26:53Z: AMI Origin Name: Windows_Server-2022-English-Full-Base
2025/07/22 21:26:53Z: OS: Microsoft Windows NT 10.0.20348
2025/07/22 21:26:53Z: OsVersion: 10.0
2025/07/22 21:26:53Z: OsProductName: Windows Server 2022 Datacenter
2025/07/22 21:26:53Z: OsBuildLabEx: 20348.1.amd64fre.fe_release.210507-1500
2025/07/22 21:26:53Z: OsCurrentBuild: 20348
2025/07/22 21:26:53Z: OsReleaseId: 2009
2025/07/22 21:26:53Z: Language: en-US
2025/07/22 21:26:53Z: TimeZone: UTC
2025/07/22 21:26:53Z: Offset: UTC +0000
2025/07/22 21:26:53Z: Launch: EC2 Launch v2.2.63
2025/07/22 21:26:53Z: AMI-ID: ami-1234567890abcdef1
2025/07/22 21:26:53Z: Instance-ID: i-1234567890abcdef0
2025/07/22 21:26:54Z: Instance Type: t3.xlarge
2025/07/22 21:26:54Z: Driver: AWS NVMe Driver v1.6.0.35
2025/07/22 21:26:54Z: SubComponent: 1.6.0.35; EnableSCSIPersistentReservations: 0
2025/07/22 21:26:54Z: Driver: AWS PV Driver Package v8.5.0
2025/07/22 21:26:55Z: Driver: Amazon Elastic Network Adapter v2.8.0.0
2025/07/22 21:26:55Z: HOSTNAME: EC2AMAZ-9FJG5CC
2025/07/22 21:26:55Z: RDPCERTIFICATE-SUBJECTNAME: {certificate subject name}
2025/07/22 21:26:55Z: RDPCERTIFICATE-THUMBPRINT: {thumbprint hash}
2025/07/22 21:26:56Z: SSM: Amazon SSM Agent v3.3.2746.0
2025/07/22 21:26:57Z: User data format: no_user_data
2025/07/22 21:26:57Z: EC2LaunchTelemetry: IsTelemetryEnabled=true
2025/07/22 21:26:57Z: EC2LaunchTelemetry: AgentOsArch=windows_amd64
2025/07/22 21:26:57Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true
2025/07/22 21:26:57Z: EC2LaunchTelemetry: AgentCommandErrorCode=1
2025/07/22 21:26:57Z: EC2LaunchTelemetry: AdminPasswordTypeCode=0
2025/07/22 21:26:57Z: EC2LaunchTelemetry: AgentErrorLocation=execute_windows.go:410
2025/07/22 21:26:57Z: EC2LaunchTelemetry: IpConflictDetectionCode=0
2025/07/22 21:26:57Z: Message: Windows is Ready to use
{"type":"EC2AgentTelemetry","agentId":"WindowsLaunchAgentV2", ...}
{"type":"EC2AgentTelemetry","agentId":"WindowsLaunchAgentV2", ...}
```

### Mensagens de log do console do EC2Launch v2
<a name="ec2launchv2-console-log-messages"></a>

Veja a seguir uma lista de todas as mensagens de log do console do EC2Launch v2.

```
Error EC2Launch service is stopping. {error message}
```

Detalhes do erro do serviço interrompido:
+ `Error setting up EC2Launch agent folders`
+ `See instance logs for detail`
+ `Error stopping service`
+ `Error initializing service`

```
Windows sysprep configuration complete
```

```
Invalid administrator username: {invalid username}
```

```
Invalid administrator password
Username: {username}
Password: <Password>{encrypted password}</Password>
```

A mensagem a seguir é um bloco de informações contendo detalhes da AMI:

```
AMI Origin Version: {amiVersion}
AMI Origin Name: {amiName}
Microsoft Windows NT {currentVersion}.{currentBuildNumber}
OsVersion: {currentVersion}
OsProductName: {productName}
OsBuildLabEx: {buildLabEx}
OsCurrentBuild: {currentBuild}
OsReleaseId: {releaseId}
Language: {language}
TimeZone: {timeZone}
Offset: UTC {offset}
Launch agent: EC2Launch {BuildVersion}
AMI-ID: {amiId}
Instance-ID: {instanceId}
Instance Type: {instanceType}
HOSTNAME: {computer name}
RDPCERTIFICATE-SUBJECTNAME: {certificate subject name}
RDPCERTIFICATE-THUMBPRINT: {thumbprint hash}
SqlServerBilling: {sql billing}
SqlServerInstall: {sql patch leve, edition type}
Driver: AWS NVMe Driver {version}
Driver: Inbox NVMe Driver {version}
Driver: AWS PV Driver Package {version}
SSM: Amazon SSM Agent {version}
AWS VSS Version: {version}
```

```
Windows sysprep configuration complete.
Windows is being configured. 'SysprepState is {state}'
Windows is still being configured. 'SysprepState is {state}'
Windows is Ready to use
Waiting for access to metadata...
Meta-data is now available.
Metadata is not available for this instance.
Timed out waiting for access to metadata.
User data format: {format}
```

As mensagens de telemetria do EC2Launch v2 incluem os valores das propriedades de telemetria de inicialização. A partir da versão 2.2.63, os dados de telemetria do EC2 Agent são formatados como um objeto JSON.

```
EC2LaunchTelemetry: {telemetry property}
```

```
{"type":"EC2AgentTelemetry","agentId":"WindowsLaunchAgentV2" ... }
```

# Históricos de versões do EC2Launch v2
<a name="ec2launchv2-versions"></a>

**Topics**
+ [Histórico de versões do EC2Launch v2](#ec2launchv2-version-history)

## Histórico de versões do EC2Launch v2
<a name="ec2launchv2-version-history"></a>

Para garantir que você tenha o agente de lançamento mais recente instalado, consulte [Instalar a versão mais recente do EC2Launch v2](ec2launch-v2-install.md). Receba notificações quando novas versões do atendente do EC2Launch v2 são disponibilizadas. Para obter mais informações, consulte [Assinar as notificações do agente de execução do EC2 Windows](launch-agents-subscribe-notifications.md).

A tabela a seguir descreve as versões disponíveis do EC2Launch v2.


| Versão | Detalhes | Data de lançamento | 
| --- | --- | --- | 
| 2.4.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 5 de março de 2026 | 
| 2.3.237 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 25 de fevereiro de 2026 | 
| 2.3.108 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 29 de dezembro de 2025 | 
| 2.3.56 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 4 de novembro de 2025 | 
| 2.3.5 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 15 de setembro de 2025 | 
| 2.2.63 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 29 de julho de 2025 | 
| 2.1.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 14 de maio de 2025 | 
| 2.0.2107 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 27 de março de 2025 | 
| 2.0.2081 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 4 de fevereiro de 2025 | 
| 2.0.2046 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 3 de outubro de 2024 | 
| 2.0.1981 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 6 de agosto de 2024 | 
| 2.0.1948 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 1º de julho de 2024 | 
| 2.0.1924 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 10 de junho de 2024 | 
| 2.0.1914 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 5 de junho de 2024 | 
| 2.0.1881 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 8 de maio de 2024 | 
| 2.0.1815 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 6 de março de 2024 | 
| 2.0.1739 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 17 de janeiro de 2024 | 
| 2.0.1702 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 4 de janeiro de 2024 | 
| 2.0.1643 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 4 de outubro de 2023 | 
| 2.0.1580 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 5 de setembro de 2023 | 
| 2.0.1521 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 3 de julho de 2023 | 
| 2.0.1303 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 3 de maio de 2023 | 
| 2.0.1245 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 8 de março de 2023 | 
| 2.0.1173 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 6 de fevereiro de 2023 | 
| 2.0.1121 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 4 de janeiro de 2023 | 
| 2.0.1082 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 7 de dezembro de 2022 | 
| 2.0.1011 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 11 de novembro de 2022 | 
| 2.0.1009 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 8 de novembro de 2022 | 
| 2.0.982 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 31 de outubro de 2022 | 
| 2.0.863 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 6 de julho de 2022 | 
| 2.0.698 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 30 de janeiro de 2022 | 
| 2.0.674 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 15 de novembro de 2021 | 
| 2.0.651 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 7 de outubro de 2021 | 
| 2.0.592 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 31 de agosto de 2021 | 
| 2.0.548 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 4 de agosto de 2021 | 
| 2.0.470 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 20 de julho de 2021 | 
| 2.0.285 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 8 de março de 2021 | 
| 2.0.207 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 2 de fevereiro de 2021 | 
| 2.0.160 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html) | 4 de dezembro de 2020 | 
| 2.0.153 | Adiciona a funcionalidade Sysprep em UserData. | 3 de novembro de 2020 | 
| 2.0.146 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 6 de outubro de 2020 | 
| 2.0.124 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 10 de setembro de 2020 | 
| 2.0.104 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AWSEC2/latest/UserGuide/ec2launchv2-versions.html)  | 12 de agosto de 2020 | 
| 2.0.0 | Versão inicial. | 30 de junho de 2020 | 