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.
Aktualisieren eines - Windows Server AMI
Das AWS-UpdateWindowsAmi
Runbook ermöglicht es Ihnen, Image-Wartungsaufgaben auf Ihrem Amazon Windows zu automatisieren Amazon Machine Image (AMI), ohne das Runbook in JSON oder YAML erstellen zu müssen. Dieses Runbook wird unterstützt für Windows Server 2008 R2 oder höher. Sie können das Runbook AWS-UpdateWindowsAmi
verwenden, um die folgenden Arten von Aufgaben auszuführen.
-
Installieren Sie alle Windows-Updates und aktualisieren Sie die Amazon-Software (Standardverhalten).
-
Installieren Sie spezifische Windows-Updates und aktualisieren Sie die Amazon-Software.
-
Passen Sie eine an AMI mit Ihren Skripten.
Bevor Sie beginnen
Bevor Sie mit Runbooks arbeiten, konfigurieren Sie Rollen für Automation, um eine iam:PassRole
-Richtlinie hinzuzufügen, die auf den ARN des Instance-Profils verweist, dem Sie den Zugriff gewähren möchten. Konfigurieren Sie optional Amazon EventBridge for Automation, ein Tool in AWS Systems Manager. Weitere Informationen finden Sie unter Einrichten der Automatisierung. Für diese exemplarische Vorgehensweise müssen Sie außerdem den Namen eines AWS Identity and Access Management (IAM-) Instance-Profils angeben. Weitere Informationen zum Erstellen eines IAM-Instance-Profils finden Sie unter Konfigurieren von erforderlichen Instance-Berechtigungen für Systems Manager.
Anmerkung
Aktualisierungen für AWS Systems Manager SSM Agent werden in der Regel zu unterschiedlichen Zeiten in verschiedenen Regionen eingeführt. Wenn Sie ein AMI anpassen oder aktualisieren, verwenden Sie nur die Quelle, die für die Region AMIs veröffentlicht wurde, in der Sie arbeiten. Dadurch wird sichergestellt, dass Sie mit der neuesten Version arbeiten SSM Agent wurde für diese Region veröffentlicht und vermeidet Kompatibilitätsprobleme.
Das Runbook AWS-UpdateWindowsAmi
akzeptiert die folgenden Eingabeparameter.
Parameter | Typ | Beschreibung |
---|---|---|
SourceAmiId |
String |
(Erforderlich) Die Quelle AMI ID. Sie können automatisch auf den neuesten Windows Server verweisen AMI ID mithilfe eines Systems Manager Parameter Store öffentlicher Parameter. Weitere Informationen finden Sie unter Query for the latest Windows AMI IDs verwenden AWS Systems Manager Parameter Store |
SubnetId |
String |
(Optional) Das Subnetz, in dem Sie die temporäre Instance starten möchten. Sie müssen einen Wert für diesen Parameter angeben, wenn Sie Ihre Standard-VPC gelöscht haben. |
IamInstanceProfileName |
String |
(Erforderlich) Der Name der IAM-Instance-Profilrolle, die Sie unter Erforderliche Instance-Berechtigungen für Systems Manager konfigurieren erstellt haben. Die Instance-Profilrolle erteilt der Automation die Berechtigung, auf Ihren Instances Aktionen durchzuführen, wie etwa das Ausführen von Befehlen oder das Starten und Beenden von Services. Das Runbook verwendet nur den Namen der Instance-Profilrolle. |
AutomationAssumeRole |
String |
(Erforderlich) Der Name der IAM-Servicerolle, die Sie in Einrichten der Automatisierung erstellt haben. Mit der Servicerolle (auch als assume-Rolle bezeichnet) gestatten Sie der Automatisierung, Ihre IAM-Rolle zu übernehmen und in Ihrem Auftrag Aktionen auszuführen. Die Servicerolle ermöglicht es Automation beispielsweise, ein neues zu erstellen AMI wenn die |
TargetAmiName |
String |
(Optional) Der Name des neuen AMI nachdem es erstellt wurde. Der Standardname ist eine vom System generierte Zeichenfolge, die die Quelle enthält AMI ID sowie Uhrzeit und Datum der Erstellung. |
InstanceType |
String |
(Optional) Der Typ der zu startenden Instance als Arbeitsbereich hosten. Die Instance-Typen sind je nach Region unterschiedlich. Der Standardtyp ist t2.medium. |
PreUpdateScript |
String |
(Optional) Ein Skript, das vor der Aktualisierung des ausgeführt werden muss AMI. Geben Sie ein Skript im Runbook oder zur Laufzeit als Parameter ein. |
PostUpdateScript |
String |
(Optional) Ein Skript, das nach der Aktualisierung des ausgeführt werden soll AMI. Geben Sie ein Skript im Runbook oder zur Laufzeit als Parameter ein. |
IncludeKbs |
String |
(Optional) Geben Sie einen oder mehrere Microsoft Knowledge Base-Artikel (KB) IDs an, die aufgenommen werden sollen. Sie können mehrere IDs mithilfe von kommagetrennten Werten installieren. Gültige Formate: KB9876543 oder 9876543. |
ExcludeKbs |
String |
(Optional) Geben Sie einen oder mehrere Microsoft Knowledge Base-Artikel (KB) IDs an, die ausgeschlossen werden sollen. Sie können mehrere IDs mithilfe von kommagetrennten Werten ausschließen. Gültige Formate: KB9876543 oder 9876543. |
Kategorien |
String |
(Optional) Geben Sie mindestens eine Updatekategorie an. Sie können Kategorien anhand kommaseparierter Werte filtern. Optionen: Wichtiges Update, Sicherheitsupdate, Definitionsupdate, Update-Rollup, Service Pack, Tool, Update oder Treiber. Zu den gültigen Formaten gehört ein einzelner Eintrag. Beispiel: Wichtiges Update. Sie können auch eine kommaseparierte Liste angeben: Wichtiges Update,Sicherheitsupdate,Definitionsupdate. |
SeverityLevels |
String |
(Optional) Geben Sie mindestens eine MSRC-Ebene an, die einem Update zugeordnet ist. Sie können Dringlichkeitsstufen anhand kommaseparierter Werte filtern. Optionen: Kritisch, Wichtig, Niedrige, Mittel oder Nicht angegeben. Zu den gültigen Formaten gehört ein einzelner Eintrag. Beispiel: Wichtig. Sie können auch eine kommaseparierte Liste angeben: Kritisch,Wichtig,Niedrig. |
Automation-Schritte
Das AWS-UpdateWindowsAmi
-Runbook enthält standardmäßig die folgenden Schritte.
- Schritt 1: launchInstance (
aws:runInstances
-Aktion) -
Dieser Schritt startet eine Instance mit einer IAM-Instance-Profilrolle über das angegebene
SourceAmiID
. - Schritt 2: runPreUpdate Skript (Aktion)
aws:runCommand
-
Mit diesem Schritt können Sie ein Skript als Zeichenfolge angeben, das ausgeführt wird, bevor Updates installiert werden.
- Schritt 3: EC2 Config aktualisieren (
aws:runCommand
Aktion) -
In diesem Schritt wird das
AWS-InstallPowerShellModule
Runbook verwendet, um ein AWS öffentliches PowerShell Modul herunterzuladen. Systems Manager überprüft die Integrität des Modul mithilfe eines SHA-256-Hash. Systems Manager überprüft dann das Betriebssystem, um festzustellen, ob EC2 Config oder EC2 Launch aktualisiert werden soll. EC2Config läuft auf Windows Server 2008 R2 bis Windows Server 2012 R2. EC2Launch läuft auf Windows Server 2016. - Schritt 4: Update SSMAgent (
aws:runCommand
Aktion) -
Dieser Schritt aktualisiert SSM Agent mithilfe des
AWS-UpdateSSMAgent
Runbooks. - Schritt 5: Update AWSPVDriver (
aws:runCommand
Aktion) -
In diesem Schritt werden die AWS PV-Treiber mithilfe des
AWS-ConfigureAWSPackage
Runbooks aktualisiert. - Schritt 6: updateAwsEna NetworkDriver (
aws:runCommand
Aktion) -
In diesem Schritt werden die AWS ENA-Netzwerktreiber mithilfe des
AWS-ConfigureAWSPackage
Runbooks aktualisiert. - Schritt 7: installWindowsUpdates (
aws:runCommand
Aktion) -
Dieser Schritt installiert Windows-Updates mithilfe des
AWS-InstallWindowsUpdates
-Runbooks. Standardmäßig sucht und installiert Systems Manager alle fehlenden Updates. Sie können das Standardverhalten ändern, indem Sie einen der folgenden Parameter festlegen:IncludeKbs
,ExcludeKbs
,Categories
oderSeverityLevels
. - Schritt 8: runPostUpdate Script (
aws:runCommand
Aktion) -
Mit diesem Schritt können Sie ein Skript als Zeichenfolge angeben, das ausgeführt wird, nachdem Updates installiert wurden.
- Schritt 9: runSysprepGeneralize (
aws:runCommand
Aktion) -
In diesem Schritt wird das
AWS-InstallPowerShellModule
Runbook verwendet, um ein AWS öffentliches PowerShell Modul herunterzuladen. Systems Manager überprüft die Integrität des Modul mithilfe eines SHA-256-Hash. Systems Manager führt dann Sysprep mit AWS unterstützten Methoden für EC2 Launch (Windows Server 2016) oder EC2 Config (Windows Server 2008 R2 bis 2012 R2) aus. - Schritt 10: stopInstance (
aws:changeInstanceState
-Aktion) -
Dieser Schritt stoppt die aktualisierte Instance.
- Schritt 11: createImage (
aws:createImage
-Aktion) -
Dieser Schritt erstellt ein neues AMI mit einem beschreibenden Namen, der es mit der Quell-ID und der Erstellungszeit verknüpft. Zum Beispiel: „AMI, generiert durch EC2 Automatisierung am {{global:Date_Time}} von {{}SourceAmiId}“, wobei DATE_TIME und SourceID Automatisierungsvariablen darstellen.
- TerminateInstance
aws:changeInstanceState
Schritt 12: (Aktion) -
Dieser Schritt bereinigt die Automatisierung durch Beenden der ausgeführten Instance.
- Output
-
In diesem Abschnitt können Sie die Ausgabe verschiedener Schritte oder Werte eines beliebigen Parameters als die Automation-Ausgabe bestimmen. Standardmäßig ist die Ausgabe die ID des aktualisierten Windows AMI durch die Automatisierung erstellt.
Anmerkung
Standardmäßig verwendet das System die Standard-VPC (172.30.0.0/16), wenn Automation das AWS-UpdateWindowsAmi
-Runbbok ausführt und eine temporäre Instance erstellt. Wenn Sie die Standard-VPC gelöscht haben, erhalten Sie den folgenden Fehler:
VPC nicht definiert 400
Zur Behebung dieses Problems erstellen Sie eine Kopie des AWS-UpdateWindowsAmi
-Runbooks und geben eine Subnetz-ID an. Weitere Informationen finden Sie unter VPC nicht definiert 400.
Um ein gepatchtes Windows zu erstellen AMI mithilfe von Automatisierung
Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie dies noch nicht getan haben.
Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.
-
Führen Sie den folgenden Befehl aus, um das
AWS-UpdateWindowsAmi
-Runbook zu starten. Ersetzen Sie jedenexample resource placeholder
durch Ihre Informationen. Der folgende Beispielbefehl verwendet einen aktuellen Amazon EC2 AMI um die Anzahl der Patches zu minimieren, die angewendet werden müssen. Wenn Sie diesen Befehl mehrmals ausführen, müssen Sie einen eindeutigen Wert fürtargetAMIname
angeben. AMI Namen müssen eindeutig sein.aws ssm start-automation-execution \ --document-name="AWS-UpdateWindowsAmi" \ --parameters SourceAmiId='
AMI ID
',IamInstanceProfileName='IAM instance profile
',AutomationAssumeRole='arn:aws:iam::{{global:ACCOUNT_ID}}:role/AutomationServiceRole
'Der Befehl gibt eine Ausführungs-ID zurück. Kopieren Sie diese ID in die Zwischenablage. Sie werden diese ID zum Anzeigen des Status der Automatisierung verwenden.
{ "AutomationExecutionId": "
automation execution ID
" } -
Führen Sie den folgenden Befehl aus AWS CLI, um die Automatisierung mit dem anzuzeigen:
aws ssm describe-automation-executions
-
Führen Sie den folgenden Befehl aus, um Details über den Automatisierungsprozess anzuzeigen.
aws ssm get-automation-execution --automation-execution-id
automation execution ID
Anmerkung
Abhängig von der Anzahl der angewendeten Patches kann der Windows-Patch-Vorgang in dieser Beispielautomatisierung 30 Minuten oder länger in Anspruch nehmen.