Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Probleme mit dem EC2Launch v2-Agenten beheben
In diesem Abschnitt werden allgemeine Problembehandlungsszenarien EC2Launch für Version 2, Informationen zum Anzeigen von Windows-Ereignisprotokollen sowie Ausgaben und Meldungen in Konsolenprotokollen beschrieben.
Themen zur Fehlerbehebung
Allgemeine Problembehandlungsszenarien
In diesem Abschnitt werden allgemeine Problembehandlungsszenarien und Lösungsschritte aufgeführt.
Szenarien
- Der Service kann das Hintergrundbild nicht festlegen
- Service kann Benutzerdaten nicht ausführen
- Der Service führt eine Aufgabe nur einmal aus
- Service kann eine Aufgabe nicht ausführen
- Der Service führt Benutzerdaten mehr als einmal aus
- Geplante Aufgaben von EC2Launch Version 1 können nach der Migration zu EC2Launch Version 2 nicht ausgeführt werden
- Der Dienst initialisiert ein EBS Volume, das nicht leer ist
- Die Aufgabe setWallpaper ist nicht aktiviert, aber das Hintergrundbild wird beim Neustart zurückgesetzt
- Der Dienst hängt im laufenden Status fest
- Ungültig agent-config.yml verhindert das Öffnen des Dialogfelds mit den EC2Launch v2-Einstellungen
- task:executeScript should be unique and only invoked once
Der Service kann das Hintergrundbild nicht festlegen
Auflösung
-
Überprüfen Sie, ob
%AppData%\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\setwallpaper.lnk
vorhanden ist. -
Überprüfen Sie
%ProgramData%\Amazon\EC2Launch\log\agent.log
darauf, ob Fehler aufgetreten sind.
Service kann Benutzerdaten nicht ausführen
Mögliche Ursache: Der Service ist möglicherweise fehlgeschlagen, bevor Benutzerdaten ausgeführt werden konnten.
Auflösung
-
Überprüfen Sie
%ProgramData%\Amazon\EC2Launch\state\previous-state.json
. -
Sehen Sie nach, ob
boot
,network
,preReady
undpostReadyLocalData
wurden alle als erfolgreich markiert wurden. -
Wenn eine der Phasen fehlgeschlagen ist, überprüfen Sie
%ProgramData%\Amazon\EC2Launch\log\agent.log
auf bestimmte Fehler.
Der Service führt eine Aufgabe nur einmal aus
Auflösung
-
Überprüfen Sie die Häufigkeit der Aufgabe.
-
Wenn der Service bereits nach Sysprep ausgeführt wurde und die Aufgabenhäufigkeit auf
once
festgelegt ist, wird die Aufgabe nicht erneut ausgeführt. -
Stellen Sie die Häufigkeit der Aufgabe auf ein,
always
wenn die Aufgabe bei jeder Ausführung von EC2Launch Version 2 ausgeführt werden soll.
Service kann eine Aufgabe nicht ausführen
Auflösung
-
Überprüfen Sie die neuesten Einträge in
%ProgramData%\Amazon\EC2Launch\log\agent.log
. -
Wenn keine Fehler aufgetreten sind, versuchen Sie, den Service manuell von
"%ProgramFiles%\Amazon\EC2Launch\EC2Launch.exe" run
auszuführen, um festzustellen, ob die Aufgaben ausgeführt werden.
Der Service führt Benutzerdaten mehr als einmal aus
Auflösung
Benutzerdaten werden zwischen EC2Launch Version 1 und Version 2 unterschiedlich EC2Launch behandelt. EC2Launchv1 führt Benutzerdaten als geplante Aufgabe auf der Instanz aus, wenn dies auf eingestellt persist
isttrue
. Wenn persist
auf false
festgelegt ist, wird die Aufgabe nicht geplant, selbst wenn sie mit einem Neustart beendet wird oder während der Ausführung unterbrochen wird.
EC2Launchv2 führt Benutzerdaten als Agententask aus und verfolgt deren Ausführungsstatus. Wenn Benutzerdaten einen Neustart des Computers ausstellen oder Benutzerdaten während der Ausführung unterbrochen wurden, bleibt der Ausführungsstatus als pending
bestehen und die Benutzerdaten werden beim nächsten Instance-Start erneut ausgeführt. Wenn Sie verhindern möchten, dass das Benutzerdatenskript mehr als einmal ausgeführt wird, machen Sie das Skript idempotent.
Das folgende Beispiel für ein idempotentes Skript legt den Computer-Namen fest und schließt sich einer Domain an.
<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>
Geplante Aufgaben von EC2Launch Version 1 können nach der Migration zu EC2Launch Version 2 nicht ausgeführt werden
Auflösung
Das Migrationstool erkennt keine geplanten Aufgaben, die mit EC2Launch v1-Skripts verknüpft sind. Daher werden diese Aufgaben in EC2Launch Version 2 nicht automatisch eingerichtet. Um diese Aufgaben zu konfigurieren, bearbeiten Sie die agent-config.ymlDatei oder verwenden Sie das Dialogfeld mit den EC2Launch v2-Einstellungen. Wenn für eine Instanz beispielsweise eine geplante Aufgabe ausgeführt wirdInitializeDisks.ps1
, müssen Sie nach der Ausführung des Migrationstools die Volumes, die Sie initialisieren möchten, im Dialogfeld mit den EC2Launch v2-Einstellungen angeben. Siehe Schritt 6 des Verfahrens zu Ändern Sie die Einstellungen mithilfe des Dialogfelds mit den EC2Launch v2-Einstellungen.
Der Dienst initialisiert ein EBS Volume, das nicht leer ist
Auflösung
Bevor ein Volume initialisiert wird, versucht EC2Launch v2 zu ermitteln, ob es leer ist. Wenn ein Volume nicht leer ist, überspringt es die Initialisierung. Alle Volumes, die als nicht leer erkannt werden, werden nicht initialisiert. Ein Volume gilt als leer, wenn die ersten 4 KiB eines Volumes leer sind oder wenn ein Volume kein Windows-erkennbares Laufwerkslayout
Die Aufgabe setWallpaper
ist nicht aktiviert, aber das Hintergrundbild wird beim Neustart zurückgesetzt
Die Aufgabe setWallpaper
erstellt die Verknüpfungsdatei setwallpaper.lnk
im Startup-Ordner jedes vorhandenen Benutzers, mit Ausnahme von Default User
. Diese Verknüpfungsdatei wird ausgeführt, wenn sich der Benutzer nach dem Start der Instance zum ersten Mal anmeldet. Hiermit wird die Instance mit einem benutzerdefinierten Hintergrundbild eingerichtet, auf dem die Instance-Attribute zu sehen sind. Durch das Entfernen der Aufgabe setWallpaper
wird diese Verknüpfungsdatei nicht gelöscht. Sie müssen die Datei manuell oder mithilfe eines Skripts löschen.
Der Verknüpfungspfad lautet:
$env:SystemDrive/Users/<user>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/setwallpaper.lnk
Auflösung
Löschen Sie die Datei manuell oder mithilfe eines Skripts.
PowerShell Beispielskript zum Löschen der Shortcut-Datei
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 } } }
Der Dienst hängt im laufenden Status fest
Beschreibung
EC2Launchv2 ist blockiert, mit Protokollmeldungen (agent.log
), die den folgenden ähneln:
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.
Mögliche Ursache
SACist aktiviert und verwendet die serielle Schnittstelle. Weitere Informationen finden Sie unter Verwenden SAC zur Problembehandlung Ihrer Windows-Instanz.
Auflösung
Versuchen Sie, das Problem wie folgt zu beheben:
-
Deaktivieren Sie den Dienst, der den seriellen Port verwendet.
-
Wenn Sie möchten, dass der Dienst weiterhin den seriellen Port verwendet, schreiben Sie benutzerdefinierte Skripte, um Launch-Agent-Aufgaben auszuführen, und rufen Sie diese als geplante Aufgaben auf.
Ungültig agent-config.yml
verhindert das Öffnen des Dialogfelds mit den EC2Launch v2-Einstellungen
Beschreibung
EC2Launchv2 settings versucht, die agent-config.yml
Datei zu analysieren, bevor das Dialogfeld geöffnet wird. Wenn die YAML Konfigurationsdatei nicht dem unterstützten Schema entspricht, wird im Dialogfeld der folgende Fehler angezeigt:
Unable to parse configuration file agent-config.yml. Review configuration file. Exiting application.
Auflösung
-
Stellen Sie sicher, dass die Konfigurationsdatei dem unterstützten Schema entspricht.
-
Wenn Sie von vorne anfangen möchten, kopieren Sie die Standardkonfigurationsdatei in
agent-config.yml
. Sie können das Beispielagent-config.yml im Abschnitt „Aufgabenkonfiguration“ verwenden. -
Sie können auch von vorne beginnen, indem Sie
agent-config.yml
löschen. EC2Launchv2-Einstellungen generiert eine leere Konfigurationsdatei.
task:executeScript should be unique and only invoked
once
Beschreibung
Eine Aufgabe nicht in derselben Phase wiederholt werden kann.
Auflösung
Einige Aufgaben müssen als Array eingegeben werden, z. B. executeScriptund executeProgram. Ein Beispiel dafür, wie Sie das Skript als Array schreiben, finden Sie unter executeScript.
Windows-Ereignisprotokolle
EC2Launchv2 veröffentlicht Windows-Ereignisprotokolle für wichtige Ereignisse wie den Start eines Dienstes, die Bereitschaft von Windows sowie erfolgreiche und fehlgeschlagene Aufgaben. Ereignis-IDs identifizieren eindeutig ein bestimmtes Ereignis. Jedes Ereignis enthält Informationen zu Phase, Aufgabe und Ebene sowie eine Beschreibung. Sie können mithilfe der Ereignis-ID Auslöser für bestimmte Ereignisse festlegen.
Ereignisse IDs stellen Informationen zu einem Ereignis bereit und identifizieren bestimmte Ereignisse eindeutig. Die am wenigsten signifikante Ziffer einer Ereignis-ID gibt den Schweregrad eines Ereignisses an.
Veranstaltung | Am wenigsten bedeutende Ziffer |
---|---|
Success
|
. . .0 |
Informational |
. . .1 |
Warning |
. . .2 |
Error |
. . .3 |
Dienstbezogene Ereignisse, die beim Start oder Ende des Dienstes generiert werden, enthalten eine einstellige Ereigniskennung.
Veranstaltung | Einstellige ID |
---|---|
Success
|
0 |
Informational |
1 |
Warning |
2 |
Error |
3 |
Die Ereignisnachrichten für EC2LaunchService.exe
-Ereignisse beginnen mit Service:
. Die Ereignisnachrichten für EC2Launch.exe
-Ereignisse beginnen nicht mit Service:
.
Ein vierstelliges Ereignis IDs enthält Informationen über das Stadium, die Aufgabe und den Schweregrad eines Ereignisses.
Format der Ereignis-ID
Die folgende Tabelle zeigt das Format einer EC2Launch v2-Ereignis-ID.
3 | 2 1 | 0 |
---|---|---|
S |
T |
L |
Die Buchstaben und Zahlen in der Tabelle stehen für die folgenden Ereignistypen und Definitionen.
Ereignistyp | Definition |
---|---|
S (Stage) |
0 - Nachricht auf Service-Ebene 1 - Boot 2 - Netzwerk 3 - PreReady 5 - Windows ist bereit 6 - PostReady 7 - Benutzerdaten |
T (Aufgabe) |
Die Aufgaben, die durch die entsprechenden beiden Werte dargestellt werden, sind für jede Phase unterschiedlich. Informationen zur vollständigen Liste der Ereignisse finden Sie unter Windows-Ereignisprotokollschema. |
L (Ebene des Ereignisses) |
0 - Erfolg 1 - Informativ 2 - Warnung 3 - Fehler |
Beispiele für Ereignis-IDs
Im Folgenden finden Sie ein BeispielereignisIDs.
-
5000
- Windows ist einsatzbereit -
3010
- Die Windows-Aufgabe in der PreReady Phase aktivieren war erfolgreich -
6013
- Bei der Aufgabe „Hintergrundbild festlegen“ ist in der Phase „ PostReady Lokale Daten“ ein Fehler aufgetreten
Windows-Ereignisprotokollschema
MessageId/Ereignis-ID | Ereignismeldung |
---|---|
. . .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 |
EC2LaunchProtokollausgabe der v2-Konsole
Dieser Abschnitt enthält Beispiele für die Konsolenprotokollausgabe für EC2Launch Version 2 und listet alle Fehlermeldungen des EC2Launch v2-Konsolenprotokolls auf, um Ihnen bei der Behebung von Problemen zu helfen. Weitere Informationen zur Ausgabe der Instanzkonsole und zum Zugriff darauf finden Sie unterInstance-Konsolenausgabe.
EC2LaunchAusgabe des v2-Konsolenprotokolls
Im Folgenden finden Sie ein Beispiel für die Konsolenprotokollausgabe für EC2Launch v2.
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
EC2LaunchProtokollmeldungen der v2-Konsole
Im Folgenden finden Sie eine Liste aller Protokollmeldungen der EC2Launch v2-Konsole.
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}