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.
Konfigurieren einer Windows-Instance mithilfe von EC2Launch
EC2Launch ist eine Reihe von PowerShell Windows-Skripts, die den EC2Config-Dienst auf Windows Server 2016- und 2019-AMIs ersetzt haben. Viele dieser AMIs sind noch verfügbar. EC2Launch v2 ist der neueste Launch-Agent für alle unterstützten Windows-Versionen, der sowohl EC2Config als auch EC2Launch ersetzt. Weitere Informationen finden Sie unter Konfigurieren einer Windows-Instance mithilfe von EC2Launch v2.
Anmerkung
Zur Verwendung von EC2Launch mit IMDSv2 muss die Version 1.3.2002730 oder höher vorhanden sein.
Inhalt
EC2Launch-Aufgaben
EC2Launch führt beim ersten Starten einer Instance standardmäßig die folgenden Aufgaben aus:
-
Richtet einen neuen Bildschirmhintergrund ein, der Informationen über die Instance gibt.
-
Legt den Computernamen auf die private IPv4-Adresse der Instance fest.
-
Sendet Instance-Informationen an die Amazon EC2-Konsole.
-
Sendet den RDP-Zertifikat-Thumbprint an die EC2-Konsole.
-
Richtet ein zufälliges Passwort für das Administratorkonto ein.
-
Fügt DNS-Suffixe hinzu.
-
Erweitert die Betriebssystempartition dynamisch mit nicht partitioniertem Speicherplatz.
-
Führt Benutzerdaten aus (falls angegeben). Weitere Informationen zur Angabe von Benutzerdaten finden Sie unter Arbeiten mit Instance-Benutzerdaten.
-
Legt persistente statische Routen fest, um den Metadatendienst und die AWS KMS Server zu erreichen.
Wichtig
Wenn aus dieser Instance ein benutzerdefiniertes AMI erstellt wird, werden diese Routen als Teil der OS-Konfiguration erfasst. Alle neuen Instances, die über dieses AMI gestartet werden, übernehmen ungeachtet der Subnetz-Platzierung dieselben Routen. Informationen zum Aktualisieren dieser Routen finden Sie unter Aktualisieren von Metadaten/KMS-Routen für Server 2016 und höher beim Starten eines benutzerdefinierten AMI.
Die folgenden Aufgaben tragen dazu bei, die Abwärtskompatibilität mit dem EC2Config-Service zu erhalten. Sie können EC2Launch auch zur Ausführung dieser Aufgaben beim Startup konfigurieren:
-
Initialisieren von sekundären EBS-Volumes.
-
Senden von Windows-Ereignisprotokollen an die EC2-Konsolenprotokolle.
-
Senden der Windows ist einsatzbereit-Meldung an die EC2-Konsole.
Weitere Informationen zu Windows Server 2019 finden Sie unter Vergleich der Features der Windows Server-Versionen
Telemetrie
Bei Telemetrie handelt es sich AWS um zusätzliche Informationen, die Ihnen helfen, Ihre Anforderungen besser zu verstehen, Probleme zu diagnostizieren und Funktionen bereitzustellen, mit denen Sie Ihre Erfahrung mit AWS Diensten verbessern können.
EC2Launch-Version 1.3.2003498
und später erfassen Telemetriedaten wie Nutzungsmetriken und Fehler. Diese Daten werden von der Amazon-EC2-Instance erfasst, auf der EC2Launch ausgeführt wird. Dies schließt alle Windows-AMIs ein, die Eigentum von AWS.
EC2Launch erfasst folgende Telemetrie-Typen:
-
Nutzungsinformationen – Agent-Befehle, Installationsmethode und geplante Ausführungsfrequenz.
-
Fehler und Diagnoseinformationen – Agent-Installation und Ausführen von Fehlercodes.
Beispiele für die gesammelten Daten:
2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true
2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsUserDataScheduledPerBoot=true
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandCode=1
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandErrorCode=5
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallCode=2
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallErrorCode=0
Die Telemetrie ist standardmäßig aktiviert. Sie können die Telemetriesammlung jederzeit deaktivieren. Wenn Telemetrie aktiviert ist, sendet EC2Launch Telemetriedaten ohne zusätzliche Kundenbenachrichtigungen.
Ihre Entscheidung, Telemetrie zu aktivieren oder zu deaktivieren, wird erfasst.
Sie können die Telemetriesammlung aktivieren oder deaktivieren. Ihre Auswahl zur Aktivierung bzw. Deaktivierung von Telemetrie wird erfasst, um sicherzustellen, dass wir die festgelegte Option einhalten.
Telemetrie-Sichtbarkeit
Wenn Telemetrie aktiviert ist, wird sie in der Ausgabe der Amazon-EC2-Konsole wie folgt angezeigt:
2021/07/15 21:44:12Z: Telemetry: <Data>
Deaktivieren der Telemetrie auf einer Instance
Um Telemetrie durch Festlegen einer Systemumgebungsvariablen zu deaktivieren, führen Sie den folgenden Befehl als Administrator aus:
setx /M EC2LAUNCH_TELEMETRY 0
Um die Telemetrie während der Installation zu deaktivieren, führen Sie install.ps1
wie folgt aus:
. .\install.ps1 -EnableTelemetry:$false
Prüfen der EC2Launch-Version
Verwenden Sie den folgenden PowerShell Windows-Befehl, um die installierte Version von EC2Launch zu überprüfen.
PS C:\>
Test-ModuleManifest -Path "C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Ec2Launch.psd1" | Select Version
EC2Launch-Verzeichnisstruktur
EC2Launch wird bei AMIs mit Windows Server 2016 und höher standardmäßig im Stammverzeichnis C:\ProgramData\Amazon\EC2-Windows\Launch
installiert.
Anmerkung
Windows blendet Dateien und Ordner unter C:\ProgramData
standardmäßig aus. Um die EC2Launch-Verzeichnisse und -Dateien anzuzeigen, müssen Sie entweder den Pfad im Windows Explorer eingeben oder die Ordnereigenschaften so ändern, dass ausgeblendete Dateien und Ordner angezeigt werden.
Das Verzeichnis Launch
enthält die folgenden Unterverzeichnisse.
-
Scripts
— Enthält die PowerShell Skripten, aus denen EC2Launch besteht. -
Module
— Enthält das Modul zum Aufbau von Amazon EC2-Scripts. -
Config
— Enthält Script-Konfigurationsdateien, die Sie anpassen können. -
Sysprep
— Enthält Sysprep-Ressourcen. -
Settings
— Enthält eine Anwendung für die grafische Benutzeroberfläche von Sysprep. -
Library
: Enthält freigegebene Bibliotheken für EC2-Startagenten. -
Logs
— Enthält von Scripts generierte Protokolldateien.
EC2Launch-Version und höher 1.3.2004592
Benutzer der Administrators
Gruppe haben Full control
Berechtigungen für alle EC2Launch-Verzeichnisse. Benutzer, die nicht zur Administratorgruppe gehören, haben Read & execute
Berechtigungen für alle EC2Launch-Verzeichnisse außer. C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Config
Das Config
Verzeichnis ist auf Benutzer beschränkt, die Mitglieder der Administrators
Gruppe sind.
EC2Launch-Version 1.3.2004491
und früher
Alle EC2Launch-Verzeichnisse erben ihre Berechtigungen von, außer C:\ProgramData
C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Scripts
Dieser Ordner erbt alle ursprünglichen Berechtigungen aus dem C:\ProgramData
Zeitpunkt seiner Erstellung, entzieht normalen Benutzern jedoch den Zugriff auf das Verzeichnis. CreateFiles
Konfigurieren von EC2Launch
Wenn Ihre Instance zum ersten Mal initialisiert wurde, können Sie EC2Launch so konfigurieren, dass das Programm erneut ausgeführt wird und beim Startup verschiedene Aufgaben ausführt.
Aufgaben
Konfigurieren von Initialisierungsaufgaben
Geben Sie die Einstellungen in der Datei LaunchConfig.json
an, um die folgenden Initialisierungsaufgaben zu aktivieren oder zu deaktivieren:
-
Setzen Sie den Computernamen auf die private IPv4-Adresse der Instance.
-
Stellen Sie den Monitor so ein, dass er immer eingeschaltet bleibt.
-
Erstellen eines neuen Bildschirmhintergrunds.
-
Hinzufügen einer DNS-Suffixliste.
Anmerkung
Dadurch wird eine DNS-Suffix-Suffixsuche für die folgende Domäne hinzugefügt und andere Standardsuffixe konfiguriert. Weitere Informationen darüber, wie Launch-Agents DNS-Suffixe festlegen, finden Sie unter. Konfigurieren Sie das DNS-Suffix für Windows-Startagenten
region
.ec2-utilities.amazonaws.com -
Erweitern der Größe des Boot-Volumes.
-
Legen Sie das Administrator-Passwort fest.
So konfigurieren Sie die Initialisierungseinstellungen
-
Öffnen Sie in der Instance, die Sie konfigurieren möchten, die folgende Datei in einem Texteditor:
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\LaunchConfig.json
. -
Aktualisieren Sie nach Bedarf die folgenden Einstellungen, und speichern Sie Ihre Änderungen. Geben Sie in
adminPassword
nur dann ein Passwort an, wennadminPasswordtype
Specify
ist.{ "setComputerName": false, "setMonitorAlwaysOn": true, "setWallpaper": true, "addDnsSuffixList": true, "extendBootVolumeSize": true, "handleUserData": true, "adminPasswordType": "Random | Specify | DoNothing", "adminPassword": "password that adheres to your security policy (optional)" }
Die Passworttypen sind wie folgt definiert:
Random
-
EC2Launch generiert ein Passwort und verschlüsselt es mit dem Schlüssel des Benutzers: Die Einstellung wird vom System nach dem Start der Instance deaktiviert, so dass das Passwort weiterhin gilt, wenn die Instance neu gestartet bzw. angehalten und gestartet wird.
Specify
-
EC2Launch verwendet das Passwort, das Sie unter angebe
adminPassword
. Wenn das Passwort nicht den Systemanforderungen entspricht, erstellt EC2Launch stattdessen ein zufälliges Passwort. Das Passwort wird inLaunchConfig.json
im Klartext gespeichert und gelöscht, wenn Sysprep das Administratorpasswort einstellt. EC2Launch verschlüsselt das Passwort mit dem Schlüssel des Benutzers. DoNothing
-
EC2Launch verwendet das Passwort, das Sie in der Datei
unattend.xml
-Datei angeben. Wenn Sie in der Dateiunattend.xml
kein Passwort angeben, ist das Administratorkonto deaktiviert.
-
Führen Sie in Windows den folgenden Befehl aus PowerShell, um die Ausführung des Skripts als geplante Windows-Aufgabe zu planen. Das Script wird beim nächsten Starten einmal ausgeführt und deaktiviert dann die erneute Ausführung dieser Aufgaben.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -Schedule
Planen von EC2Launch für die Ausführung bei jedem Start
Sie können EC2Launch so planen, dass es bei jedem Start läuft und nicht nur beim ersten Start.
So aktivieren Sie die Ausführung von EC2Launch bei jedem Start
Öffnen Sie Windows PowerShell und führen Sie den folgenden Befehl aus:
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -SchedulePerBootAlternativ können Sie die ausführbare Datei mit dem folgenden Befehl ausführen:
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Settings\Ec2LaunchSettings.exeWählen Sie dann
Run EC2Launch on every boot
aus. Sie können für Ihre EC2-InstanceShutdown without Sysprep
oderShutdown with Sysprep
festlegen.
Anmerkung
Wenn Sie EC2Launch bei jedem Start aktivieren, passiert folgendes, wenn EC2Launch das nächste Mal ausgeführt wird:
-
Wenn
AdminPasswordType
immer noch aufRandom
gesetzt ist, generiert EC2Launch beim nächsten Booten ein neues Passwort. Nach diesem Bootvorgang wirdAdminPasswordType
automatisch aufDoNothing
gesetzt, um zu verhindern, dass EC2Launch bei nachfolgenden Bootvorgängen neue Kennwörter generiert. Um zu verhindern, dass EC2Launch beim ersten Booten ein neues Passwort generiert, setzen SieAdminPasswordType
vor dem Neustart manuell aufDoNothing
. -
HandleUserData
wird auffalse
zurückgesetzt, es sei denn, für die Benutzerdaten istpersist
für die Einstellungtrue
angegeben. Weitere Informationen finden Sie unter Benutzerdatenskripts.
Initialisieren von Laufwerken und Zuordnen von Laufwerksbuchstaben
Geben Sie die Einstellungen in der Datei DriveLetterMappingConfig.json
an, um den Volumes auf Ihrer EC2-Instance Laufwerksbuchstaben zuzuordnen. Das Skript initialisiert Laufwerke, die noch nicht initialisiert und partitioniert sind. Weitere Informationen zum Abrufen von Volume-Details in Windows finden Sie unter Get-Volume
So ordnen Sie Volumes Laufwerkbuchstaben zu
-
Öffnen Sie die Datei
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\DriveLetterMappingConfig.json
in einem Text-Editor. -
Geben Sie die folgenden Volume-Einstellungen an, und speichern Sie Ihre Änderungen:
{ "driveLetterMapping": [ { "volumeName": "
sample volume
", "driveLetter": "H
" } ] } -
Öffnen Sie Windows PowerShell und führen Sie mit dem folgenden Befehl das EC2Launch-Skript aus, das die Festplatten initialisiert:
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1Fügen Sie die Flag
-Schedule
wie folgt hinzu, um die Datenträger bei jedem Start der Instance zu initialisieren:PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1 -Schedule
Senden von Windows-Ereignisprotokollen an die EC2-Konsole
Geben Sie die Einstellungen in der Datei EventLogConfig.json
an, damit Windows-Ereignisprotokolle an EC2-Konsolenprotokolle gesendet werden.
So konfigurieren Sie die Einstellungen zum Senden von Windows-Ereignisprotokollen
-
Öffnen Sie in der Instance die Datei
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\EventLogConfig.json
in einem Text-Editor. -
Konfigurieren Sie die folgenden Protokoll-Einstellungen an, und speichern Sie Ihre Änderungen:
{ "events": [ { "logName": "
System
", "source": "An event source (optional)
", "level": "Error | Warning | Information
", "numEntries":3
} ] } -
Führen Sie in Windows den folgenden Befehl aus PowerShell, sodass das System das Skript so plant, dass es bei jedem Start der Instance als geplante Windows-Aufgabe ausgeführt wird.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\SendEventLogs.ps1 -ScheduleEs kann drei Minuten oder länger dauern, bis die Protokolle in den EC2-Konsolenprotokollen angezeigt werden.
Senden einer „Windows ist einsatzbereit“-Meldung nach erfolgreichem Start
Der EC2Config-Service sendete nach jedem Starten die Meldung „Windows ist einsatzbereit“ an die EC2-Konsole. EC2Launch sendet diese Meldung nur nach dem ersten Starten. Um die Abwärtskompatibilität mit dem EC2Config-Service zu gewährleisten, können Sie EC2Launch so konfigurieren, dass diese Meldung nach jedem Startvorgang gesendet wird. Öffnen Sie auf der Instance Windows PowerShell und führen Sie den folgenden Befehl aus. Das System führt das Skript als geplante Windows-Task aus.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\SendWindowsIsReady.ps1 -Schedule