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à.
Aggiornamento di un' Windows Server AMI
Il AWS-UpdateWindowsAmi
runbook consente di automatizzare le attività di manutenzione delle immagini su Amazon Windows Amazon Machine Image (AMI) senza dover creare il runbook in JSON o YAML. Questo runbook è supportato per Windows Server 2008 R2 o versioni successive. È possibile utilizzare il runbook AWS-UpdateWindowsAmi
per eseguire i tipi di processi seguenti.
-
Installazione di tutti gli aggiornamenti di Windows e aggiornamento del software Amazon (comportamento predefinito).
-
Installazione di aggiornamenti di Windows specifici e aggiornamento del software Amazon.
-
Personalizza un AMI usando i tuoi script.
Prima di iniziare
Prima di iniziare a lavorare con i runbook, configurare i ruoli per il servizio di automazione per aggiungere una policy iam:PassRole
che fa riferimento all'ARN del profilo dell'istanza a cui si desidera concedere l'accesso. Facoltativamente, configura Amazon EventBridge for Automation, uno strumento in AWS Systems Manager. Per ulteriori informazioni, consulta Configurazione del servizio di automazione. Questa procedura dettagliata richiede anche di specificare il nome di un profilo di istanza AWS Identity and Access Management (IAM). Per ulteriori informazioni sulla creazione di un profilo dell'istanza IAM, consulta la pagina Configurazione delle autorizzazioni dell'istanza richieste per Systems Manager.
Nota
Aggiornamenti a AWS Systems Manager SSM Agent vengono in genere distribuiti in aree geografiche diverse in momenti diversi. Quando personalizzi o aggiorni un'AMI, usa solo il codice sorgente AMIs pubblicato per la regione in cui lavori. In questo modo si assicurerà di lavorare con la versione più recente SSM Agent rilasciato per quella regione ed evita problemi di compatibilità.
Il runbook AWS-UpdateWindowsAmi
accetta i parametri di input seguenti.
Parametro | Tipo | Descrizione |
---|---|---|
SourceAmiId |
Stringa |
(Obbligatorio) La fonte AMI ID. È possibile fare riferimento automaticamente alla versione più recente di Windows Server AMI ID utilizzando un Systems Manager Parameter Store parametro pubblico. Per ulteriori informazioni, vedere Query per le versioni più recenti di Windows AMI IDs utilizzando AWS Systems Manager Parameter Store |
SubnetId |
Stringa |
(Facoltativo) La sottorete in cui si desidera avviare l'istanza temporanea. Se è stato eliminato il VPC predefinito, è necessario specificare un valore per questo parametro. |
IamInstanceProfileName |
Stringa |
(Obbligatorio) Il nome del ruolo del profilo dell'istanza IAM creato in Configurazione delle autorizzazioni dell'istanza richieste per Systems Manager. Il ruolo del profilo dell'istanza concede le autorizzazioni al servizio di automazione per eseguire operazioni sulle istanze, ad esempio l'esecuzione di comandi o l'avvio e l'arresto dei servizi. Il runbook utilizza solo il nome del ruolo del profilo dell'istanza. |
AutomationAssumeRole |
Stringa |
(Obbligatorio) Nome del ruolo di servizio IAM creato in Configurazione del servizio di automazione. Il ruolo di servizio (definito anche ruolo presunto) concede l'autorizzazione al servizio di automazione di assumere il ruolo IAM e di eseguire operazioni a nome dell'utente. Ad esempio, il ruolo di servizio consente ad Automation di crearne uno nuovo AMI quando si esegue l' |
TargetAmiName |
Stringa |
(Facoltativo) Il nome del nuovo AMI dopo la sua creazione. Il nome predefinito è una stringa generata dal sistema che include il codice sorgente AMI ID e data e ora di creazione. |
InstanceType |
Stringa |
(Facoltativo) Tipo di istanza da avviare come host del workspace. I tipi di istanza variano in base alla regione. Il tipo predefinito è t2.medium. |
PreUpdateScript |
Stringa |
(Facoltativo) Uno script da eseguire prima di aggiornare il AMI. Immettete uno script nel runbook o in fase di esecuzione come parametro. |
PostUpdateScript |
Stringa |
(Facoltativo) Uno script da eseguire dopo l'aggiornamento di AMI. Immettete uno script nel runbook o in fase di esecuzione come parametro. |
IncludeKbs |
Stringa |
(Facoltativo) Specificare uno o più articoli della Microsoft Knowledge Base (KB) IDs da includere. È possibile installarne più di IDs uno utilizzando valori separati da virgole. Formati validi: KB9876543 o 9876543. |
ExcludeKbs |
Stringa |
(Facoltativo) Specificare uno o più articoli della Microsoft Knowledge Base (KB) IDs da escludere. È possibile escluderne più di IDs uno utilizzando valori separati da virgole. Formati validi: KB9876543 o 9876543. |
Categories |
Stringa |
(Facoltativo) Specificare una o più categorie di aggiornamento. È possibile filtrare le categorie utilizzando valori separati da virgole. Opzioni: Critical Update, Security Update, Definition Update, Update Rollup, Service Pack, Tool, Update o Driver. I formati validi includono una singola voce, ad esempio: Critical Update. In alternativa, è possibile specificare un elenco di valori separati da virgole: Critical Update,Security Update,Definition Update. |
SeverityLevels |
Stringa |
(Facoltativo) Specificare uno o più livelli di gravità MSRC associati a un aggiornamento. È possibile filtrare i livello di gravità utilizzando valori separati da virgole. Opzioni: Critical, Important, Low, Moderate o Unspecified. I formati validi includono una singola voce, ad esempio: Critical. In alternativa, è possibile specificare un elenco di valori separati da virgole: Critical,Important,Low. |
Fasi di automazione
Per impostazione predefinita, il runbook AWS-UpdateWindowsAmi
include le seguenti fasi.
- Fase 1: launchInstance (operazione
aws:runInstances
) -
Questa fase avvia un'istanza con un ruolo del profilo dell'istanza IAM dal parametro
SourceAmiID
specificato. - Fase 2: runPreUpdate Script (
aws:runCommand
azione) -
Questa fase consente di specificare uno script come stringa che viene eseguita prima dell'installazione degli aggiornamenti.
- Passaggio 3: aggiorna EC2 Config (
aws:runCommand
azione) -
Questo passaggio utilizza il
AWS-InstallPowerShellModule
runbook per scaricare un modulo AWS pubblico PowerShell . Systems Manager verifica l'integrità del modulo utilizzando un hash SHA-256. Systems Manager controlla quindi il sistema operativo per determinare se aggiornare EC2 Config o EC2 Launch. EC2Config viene eseguito su Windows Server 2008 R2 tramite Windows Server 2012 R2. EC2Launch viene eseguito su Windows Server 2016. - Fase 4: aggiornamento SSMAgent (
aws:runCommand
azione) -
Questo passaggio si aggiorna SSM Agent utilizzando il
AWS-UpdateSSMAgent
runbook. - Fase 5: aggiornamento AWSPVDriver (
aws:runCommand
azione) -
Questo passaggio aggiorna i driver AWS PV utilizzando il
AWS-ConfigureAWSPackage
runbook. - Fase 6: updateAwsEna NetworkDriver (azione)
aws:runCommand
-
Questo passaggio aggiorna i driver AWS ENA Network utilizzando il
AWS-ConfigureAWSPackage
runbook. - Fase 7: installWindowsUpdates (
aws:runCommand
azione) -
Questa fase installa gli aggiornamenti di Windows utilizzando il runbook
AWS-InstallWindowsUpdates
. Per impostazione predefinita, Systems Manager cerca e installa tutti gli aggiornamenti mancanti. È possibile modificare il comportamento predefinito specificando uno dei parametri seguenti:IncludeKbs
,ExcludeKbs
,Categories
oSeverityLevels
. - Fase 8: runPostUpdate Script (
aws:runCommand
azione) -
Questa fase consente di specificare uno script come stringa che viene eseguita dopo l'installazione degli aggiornamenti.
- Fase 9: runSysprepGeneralize (
aws:runCommand
azione) -
Questo passaggio utilizza il
AWS-InstallPowerShellModule
runbook per scaricare un PowerShell modulo AWS pubblico. Systems Manager verifica l'integrità del modulo utilizzando un hash SHA-256. Systems Manager esegue quindi sysprep utilizzando metodi AWS supportati per EC2 Launch (Windows Server 2016) o EC2 Config (da Windows Server 2008 R2 a 2012 R2). - Fase 10: stopInstance (operazione
aws:changeInstanceState
) -
Questa fase arresta l'istanza aggiornata.
- Fase 11: createImage (operazione
aws:createImage
) -
Questo passaggio crea un nuovo AMI con un nome descrittivo che lo collega all'ID di origine e all'ora di creazione. Ad esempio: «AMI generato dall' EC2 automazione su {{global:DATE_time}} da {{}}» dove DATE_TIME e SourceAmiId SourceID rappresentano le variabili di automazione.
- Fase 12: (azione) TerminateInstance
aws:changeInstanceState
-
Questa fase esegue la pulizia dell'automazione mediante l'arresto dell'istanza in esecuzione.
- Output
-
Questa sezione consente di definire gli output delle varie fasi o dei vari valori di qualsiasi parametro come l'output di automazione. Per impostazione predefinita, l'output è l'ID del Windows aggiornato AMI creato dall'automazione.
Nota
Per impostazione predefinita, quando il servizio di automazione esegue il runbook AWS-UpdateWindowsAmi
e crea un'istanza temporanea, il sistema usa il VPC predefinito (172.30.0.0/16). Se il VPC predefinito è stato eliminato, verrà restituito l'errore seguente:
VPC not defined 400 (VPC non definito 400)
Per risolvere questo problema, è necessario creare una copia del runbook AWS-UpdateWindowsAmi
e specificare un ID di sottorete. Per ulteriori informazioni, consulta VPC not defined 400 (VPC non definito 400).
Per creare un Windows con patch AMI utilizzando l'automazione
Installa e configura AWS Command Line Interface (AWS CLI), se non l'hai già fatto.
Per informazioni, consulta la pagina Installazione o aggiornamento della versione più recente di AWS CLI.
-
Eseguire il comando seguente per eseguire il runbook
AWS-UpdateWindowsAmi
. Sostituisci ogniexample resource placeholder
con le tue informazioni. Il comando di esempio seguente utilizza un Amazon recente EC2 AMI per ridurre al minimo il numero di patch da applicare. Se si esegue il comando più di una volta, è necessario specificare un valore univoco pertargetAMIname
. AMI i nomi devono essere univoci.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
'Il comando restituisce un ID di esecuzione. Copia questo ID negli appunti. L'ID può essere utilizzato per visualizzare lo stato dell'automazione.
{ "AutomationExecutionId": "
automation execution ID
" } -
Per visualizzare l'automazione utilizzando il AWS CLI, esegui il seguente comando:
aws ssm describe-automation-executions
-
Eseguire il comando seguente per visualizzare i dettagli relativi al progresso dell'automazione.
aws ssm get-automation-execution --automation-execution-id
automation execution ID
Nota
A seconda del numero di patch applicate, il processo di applicazione delle patch di Windows eseguito in questa automazione di esempio può richiedere 30 minuti o più.