Risolvi i problemi con l'agente v2 EC2Launch - Amazon Elastic Compute Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risolvi i problemi con l'agente v2 EC2Launch

Questa sezione mostra gli scenari di risoluzione dei problemi più comuni per la EC2Launch versione 2, informazioni sulla visualizzazione dei registri degli eventi di Windows e sull'output e i messaggi dei log della console.

Scenari per la risoluzione dei problemi comuni

In questa sezione vengono illustrati gli scenari di risoluzione dei problemi comuni e le fasi per la risoluzione dei problemi.

Il servizio non riesce a impostare lo sfondo

Risoluzione
  1. Controlla che %AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\setwallpaper.lnk esista.

  2. Controlla %ProgramData%\Amazon\EC2Launch\log\agent.log per vedere se si sono verificati errori.

Il servizio non riesce a eseguire i dati utente

Possibile causa: il servizio potrebbe aver restituito l'esito negativo prima dell'esecuzione dei dati utente.

Risoluzione
  1. Controlla %ProgramData%\Amazon\EC2Launch\state\previous-state.json.

  2. Vedi se boot, network, preReady e postReadyLocalData sono stati tutti contrassegnati come completati.

  3. Se una delle fasi non è riuscita, controlla %ProgramData%\Amazon\EC2Launch\log\agent.log per vedere se si sono verificati errori specifici.

Il servizio esegue un'attività una sola volta

Risoluzione
  1. Controlla la frequenza dell'attività.

  2. Se il servizio è già stato eseguito dopo Sysprep e la frequenza dell'attività è impostata su once, l'attività non verrà eseguita nuovamente.

  3. Imposta la frequenza dell'attività su always se desideri che venga eseguita ogni volta che viene eseguita la EC2Launch versione 2.

Il servizio non riesce a eseguire un'attività

Risoluzione
  1. Controlla le ultime voci in %ProgramData%\Amazon\EC2Launch\log\agent.log.

  2. Se non si sono verificati errori, prova a eseguire manualmente il servizio da "%ProgramFiles%\Amazon\EC2Launch\EC2Launch.exe" run per verificare se le attività hanno esito positivo.

Il servizio esegue i dati utente più di una volta

Risoluzione

I dati utente vengono gestiti in modo diverso tra EC2Launch v1 e v2. EC2Launch EC2Launchv1 esegue i dati utente come attività pianificata sull'istanza in cui persist è impostata su. true Se persist è impostato su false, l'attività non viene pianificata anche quando esce con un riavvio o viene interrotta durante l'esecuzione.

EC2Launchv2 esegue i dati utente come attività dell'agente e ne tiene traccia dello stato di esecuzione. Se i dati utente emettono un riavvio del computer o sono stati interrotti durante l'esecuzione, lo stato di esecuzione persiste come pending e i dati utente verranno eseguiti nuovamente al successivo avvio dell'istanza. Se si desidera impedire l'esecuzione dello script dei dati utente più di una volta, rendere lo script idempotente.

Lo script idempotente di esempio seguente imposta il nome del computer e si unisce a un dominio.

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

Le attività pianificate dalla EC2Launch v1 non vengono eseguite dopo la migrazione alla v2 EC2Launch

Risoluzione

Lo strumento di migrazione non rileva alcuna attività pianificata collegata agli script EC2Launch v1, pertanto non configura automaticamente tali attività nella v2. EC2Launch Per configurare queste attività, modificate il agent-config.ymlfile o utilizzate la finestra di dialogo delle impostazioni EC2Launchv2. Ad esempio, se un'istanza ha un'attività pianificata in esecuzioneInitializeDisks.ps1, dopo aver eseguito lo strumento di migrazione, è necessario specificare i volumi che si desidera inizializzare nella finestra di dialogo delle impostazioni EC2Launch v2. Vedere il passaggio 6 della procedura per Modificate le impostazioni utilizzando la finestra di EC2Launch dialogo delle impostazioni v2.

Il servizio inizializza un EBS volume che non è vuoto

Risoluzione

Prima di inizializzare un volume, EC2Launch v2 tenta di rilevare se è vuoto. Se un volume non è vuoto, ignora l'inizializzazione. I volumi rilevati come non vuoti non vengono inizializzati. Un volume è considerato vuoto se i primi 4 KiB del volume sono vuoti o se non dispone di un layout di unità riconoscibile da Windows. Un volume inizializzato e formattato su un sistema Linux non ha un layout di unità riconoscibile da Windows, ad esempio o. MBR GPT Pertanto, sarà considerato vuoto e inizializzato. Se desideri conservare questi dati, non fare affidamento sul EC2Launch rilevamento delle unità vuote v2. Specificate invece i volumi che desiderate inizializzare nella finestra di dialogo delle impostazioni EC2Launch v2 (vedere il passaggio 6) o nel. agent-config.yml

Il processo setWallpaper non è abilitato ma lo sfondo viene ripristinato al riavvio

Il processo setWallpaper crea il file di scorciatoia setwallpaper.lnk nella cartella di startup di ciascun utente esistente, eccetto Default User. Questo file di scorciatoia viene eseguito quando l'utente accede per la prima volta dopo l'avvio dell'istanza. Imposta l'istanza con uno sfondo personalizzato che visualizzi gli attributi dell'istanza. La rimozione del processo setWallpaper non elimina questo file di scorciatoia. È necessario eliminare questo file manualmente o con uno script.

Il percorso del file di scorciatoia è:

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

Risoluzione

Eliminare questo file manualmente o con uno script.

PowerShell Script di esempio per eliminare un file di collegamento

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 } } }

Servizio bloccato nello stato di esecuzione

Descrizione

EC2Launchv2 è bloccato, con messaggi di log (agent.log) simili ai seguenti:

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.
Possibile causa

SACè abilitato e utilizza la porta seriale. Per ulteriori informazioni, consulta Utilizzare SAC per risolvere i problemi dell'istanza di Windows.

Risoluzione

Per risolvere il problema, prova a eseguire i seguenti passaggi:

  • Disabilita il servizio che utilizza la porta seriale.

  • Se desideri che il servizio continui a utilizzare la porta seriale, scrivi degli script personalizzati per eseguire le attività dell'agente di avvio e richiamarle come attività pianificate.

Non valido agent-config.yml impedisce l'apertura della finestra di dialogo delle impostazioni EC2Launch v2

Descrizione

EC2Launchv2 settings tenta di analizzare il agent-config.yml file prima che apra la finestra di dialogo. Se il file di YAML configurazione non segue lo schema supportato, la finestra di dialogo mostrerà il seguente errore:

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

Risoluzione
  1. Verifica che il file di configurazione segua lo schema supportato.

  2. Se vuoi iniziare da zero, copia il file di configurazione predefinito in agent-config.yml. Puoi utilizzare il plugin di agent-config.yml di esempio fornito nella sezione Task Configuration (Configurazione attività).

  3. Puoi anche ricominciare da capo eliminando agent-config.yml. EC2Launchv2 settings genera un file di configurazione vuoto.

task:executeScript should be unique and only invoked once

Descrizione

Un'attività non può essere ripetuta nella stessa fase.

Risoluzione

Alcune attività devono essere inserite come matrice, ad esempio executeScripte executeProgram. Per un esempio di come scrivere lo script come matrice, vedi executeScript.

Log di eventi di Windows

EC2Launchv2 pubblica i registri degli eventi di Windows relativi a eventi importanti, ad esempio l'avvio del servizio, la disponibilità di Windows e l'esito positivo e negativo delle attività. Gli identificatori di evento identificano in modo univoco un particolare evento. Ogni evento contiene informazioni su fasi, attività e livelli e una descrizione. Puoi impostare i trigger per eventi specifici utilizzando l'identificatore di evento.

Gli eventi IDs forniscono informazioni su un evento e identificano in modo univoco alcuni eventi. La cifra meno significativa di un ID evento indica la gravità di un evento.

Evento Cifra meno significativa
Success . . .0
Informational . . .1
Warning . . .2
Error . . .3

Gli eventi relativi al servizio generati all'avvio o all'arresto del servizio includono un identificatore di evento a una cifra.

Evento Identificatore a una cifra
Success 0
Informational 1
Warning 2
Error 3

I messaggi di evento per gli eventi EC2LaunchService.exe iniziano con Service:. I messaggi di evento per gli eventi EC2Launch.exe non iniziano con Service:.

IDsGli eventi a quattro cifre includono informazioni sullo stadio, sull'attività e sulla gravità di un evento.

Formato ID evento

La tabella seguente mostra il formato di un identificatore di evento EC2Launch v2.

3 2 1 0

S

T

L

Le lettere e i numeri nella tabella rappresentano il tipo di evento e le definizioni seguenti.

Tipo di evento Definizione

S (fase)

0 - Messaggio a livello di servizio

1 - Avvio

2 - Rete

3 - PreReady

5 - Windows è pronto

6 - PostReady

7 - Dati utente

T (attività)

Le attività rappresentate dai due valori corrispondenti sono diverse per ogni fase. Per visualizzare l'elenco completo degli eventi, consulta lo Schema dei log di eventi di Windows.

L (livello di evento)

0 - Operazione completata

1 - Messaggio informativo

2 - Avvertenza

3 - Errore

Esempi di ID evento

Di seguito sono riportati alcuni esempi di eventoIDs.

  • 5000 - Windows è pronto per l'uso

  • 3010- L'attività di attivazione di Windows in PreReady fase è stata completata con successo

  • 6013- Si è verificato un errore nell'operazione Imposta sfondo nella fase PostReady Local Data

Schema dei log di eventi di Windows

MessageId/ID evento Messaggio di 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_root_partition
2000 Network
2010 Network - add_routes
3000 PreReady
3010 PreReady - activate_windows
3020 PreReady - install_egpu_manager
3030 PreReady - set_monitor_on
3040 PreReady - set_hibernation
3050 PreReady - set_admin_account
3060 PreReady - set_dns_suffix
3070 PreReady - set_wallpaper
3080 PreReady - set_update_schedule
3090 PreReady - output_log
3100 PreReady - enable_open_ssh
5000 Windows is Ready to use
6000 PostReadyLocalData
7000 PostReadyUserData
6010/7010 PostReadyLocal/UserData - set_wallpaper
6020/7020 PostReadyLocal/UserData - set_update_schedule
6030/7030 PostReadyLocal/UserData - set_hostname
6040/7040 PostReadyLocal/UserData - execute_program
6050/7050 PostReadyLocal/UserData - execute_script
6060/7060 PostReadyLocal/UserData - manage_package
6070/7070 PostReadyLocal/UserData - initialize_volume
6080/7080 PostReadyLocal/UserData - write_file
6090/7090 PostReadyLocal/UserData - start_ssm
7100 PostReadyUserData - enable_open_ssh
6110/7110 PostReadyLocal/UserData - enable_jumbo_frames

EC2LaunchUscita del registro della console v2

Questa sezione contiene esempi di output del log della console EC2Launch v2 ed elenca tutti i messaggi di errore del registro della console EC2Launch v2 per aiutarti a risolvere i problemi. Per ulteriori informazioni sull'output della console di istanza e su come accedervi, consulta. Output della console delle istanze

EC2Launchoutput del registro della console v2

Di seguito è riportato un esempio di output del log della console per la EC2Launch versione 2.

2023/11/30 20:18:53Z: Windows sysprep configuration complete. 2023/11/30 20:18:57Z: Message: Waiting for access to metadata... 2023/11/30 20:18:57Z: Message: Meta-data is now available. 2023/11/30 20:18:57Z: AMI Origin Version: 2023.11.15 2023/11/30 20:18:57Z: AMI Origin Name: Windows_Server-2022-English-Full-Base 2023/11/30 20:18:58Z: OS: Microsoft Windows NT 10.0.20348 2023/11/30 20:18:58Z: OsVersion: 10.0 2023/11/30 20:18:58Z: OsProductName: Windows Server 2022 Datacenter 2023/11/30 20:18:58Z: OsBuildLabEx: 20348.1.amd64fre.fe_release.210507-1500 2023/11/30 20:18:58Z: OsCurrentBuild: 20348 2023/11/30 20:18:58Z: OsReleaseId: 2009 2023/11/30 20:18:58Z: Language: en-US 2023/11/30 20:18:58Z: TimeZone: UTC 2023/11/30 20:18:58Z: Offset: UTC +0000 2023/11/30 20:18:58Z: Launch: EC2 Launch v2.0.1643 2023/11/30 20:18:58Z: AMI-ID: ami-1234567890abcdef1 2023/11/30 20:18:58Z: Instance-ID: i-1234567890abcdef0 2023/11/30 20:18:58Z: Instance Type: c5.large 2023/11/30 20:19:00Z: Driver: AWS NVMe Driver v1.5.0.33 2023/11/30 20:19:00Z: SubComponent: AWS NVMe Driver v1.5.0.33; EnableSCSIPersistentReservations: 0 2023/11/30 20:19:00Z: Driver: AWS PV Driver Package v8.4.3 2023/11/30 20:19:01Z: Driver: Amazon Elastic Network Adapter v2.6.0.0 2023/11/30 20:19:01Z: RDPCERTIFICATE-SUBJECTNAME: EC2AMAZ-SO1T009 2023/11/30 20:19:01Z: RDPCERTIFICATE-THUMBPRINT: 1234567890ABCDEF1234567890ABCDEF1234567890 2023/11/30 20:19:09Z: SSM: Amazon SSM Agent v3.2.1705.0 2023/11/30 20:19:13Z: Username: Administrator 2023/11/30 20:19:13Z: Password: <Password> 1234567890abcdef1EXAMPLEPASSWORD </Password> 2023/11/30 20:19:14Z: User data format: no_user_data 2023/11/30 20:19:14Z: EC2LaunchTelemetry: IsTelemetryEnabled=true 2023/11/30 20:19:14Z: EC2LaunchTelemetry: AgentOsArch=windows_amd64 2023/11/30 20:19:14Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true 2023/11/30 20:19:14Z: EC2LaunchTelemetry: AgentCommandErrorCode=0 2023/11/30 20:19:14Z: Message: Windows is Ready to use

EC2Launchmessaggi di registro della console v2

Di seguito è riportato un elenco di tutti i messaggi di registro della console EC2Launch v2.

Message: Error EC2Launch service is stopping. {error message} Error setting up EC2Launch agent folders See instance logs for detail Error stopping service Error initializing service Message: Windows sysprep configuration complete Message: Invalid administrator username: {invalid username} Message: Invalid administrator password Username: {username} Password: <Password>{encrypted password}</Password> 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} 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} Microsoft-Hyper-V is installed. Unable to get service status for vmms Microsoft-Hyper-V is {status} SSM: Amazon SSM Agent {version} AWS VSS Version: {version} Message: Windows sysprep configuration complete Message: Windows is being configured. SysprepState is {state} Windows is still being configured. SysprepState is {state} Message: Windows is Ready to use Message: Waiting for meta-data accessibility... Message: Meta-data is now available. Message: Still waiting for meta-data accessibility... Message: Failed to find primary network interface...retrying... User data format: {format}