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à.
Esempio 1: Creazione di runbook padre-figlio
L'esempio seguente illustra come creare due runbook in cui vengono applicate le patch a gruppi taggati di istanze Amazon Elastic Compute Cloud (Amazon EC2) in fasi. Questi runbook vengono utilizzati in una relazione padre-figlio con il runbook padre utilizzato per avviare un'automazione del controllo della velocità del runbook figlio. Per ulteriori informazioni sulle automazioni per il controllo della velocità, consulta Esegui operazioni automatizzate su larga scala. Per ulteriori informazioni sulle operazioni di automazione utilizzate in questo esempio, consulta Riferimento alle operazioni del servizio di automazione di Systems Manager.
Creazione del runbook figlio
Questo runbook di esempio si occupa dello scenario riportato di seguito. Emily è ingegnera di sistemi presso AnyCompany Consultants, LLC. Deve configurare il servizio di patch per gruppi di istanze Amazon Elastic Compute Cloud (Amazon EC2) che ospitano i database primari e secondari. Le applicazioni accedono a questi database 24 ore al giorno, quindi una delle istanze del database deve essere sempre disponibile.
Decide che applicare patch alle istanze per fasi è l'approccio migliore. Il gruppo primario di istanze di database verrà applicato per primo, seguito dal gruppo secondario di istanze di database. Inoltre, per evitare di incorrere in costi aggiuntivi lasciando le istanze in esecuzione che sono state arrestate in precedenza, Emily desidera che le istanze con patch vengano restituite allo stato originale prima che si verifichi l'applicazione delle patch.
Emily identifica i gruppi primari e secondari delle istanze di database in base ai tag associati alle istanze. Decide di creare un runbook padre che avvia un'automazione del controllo della velocità di un runbook figlio. In questo modo, può definire come destinazione i tag associati ai gruppi primari e secondari delle istanze di database e gestire la simultaneità delle automazioni figlio. Dopo aver esaminato i documenti di Systems Manager (SSM) disponibili per l'applicazione di patch, sceglie il documento AWS-RunPatchBaseline
. Utilizzando questo documento SSM, i colleghi possono esaminare le informazioni di conformità delle patch associate al termine dell'operazione di applicazione delle patch.
Per iniziare a creare il contenuto del runbook, Emily esamina le operazioni di automazione disponibili e inizia a creare il contenuto per il runbook figlio nel modo seguente:
-
Innanzitutto, fornisce i valori per lo schema e la descrizione del runbook e definisce i parametri di input per il runbook figlio.
Utilizzando il parametro
AutomationAssumeRole
, Emily e i suoi colleghi possono utilizzare un ruolo IAM esistente che consente al servizio di automazione di eseguire le operazioni nel runbook per loro conto. Emily utilizza il parametroInstanceId
per determinare l'istanza a cui deve essere applicata la patch. Facoltativamente, è possibile utilizzare i parametriOperation
,RebootOption
eSnapshotId
per fornire valori per documentare i parametri perAWS-RunPatchBaseline
. Per evitare che vengano forniti valori non validi a tali parametri del documento, definisce la proprietàallowedValues
in base alle esigenze. -
Con gli elementi di primo livello definiti, Emily procede con la creazione delle operazioni che compongono i
mainSteps
del runbook. La prima fase restituisce lo stato corrente dell'istanza di destinazione specificata nel parametro di inputInstanceId
utilizzando l'operazioneaws:executeAwsApi
. L'output di questa operazione viene utilizzato nelle operazioni successive. -
Anziché avviare manualmente e tenere traccia dello stato originale di ogni istanza a cui è necessario applicare la patch, Emily utilizza l'output dell'operazione e precedente per diramare l'automazione in base allo stato dell'istanza di destinazione. Ciò consente all'automazione di eseguire fasi diverse a seconda delle condizioni definite nell'operazione
aws:branch
e migliora l'efficienza complessiva dell'automazione senza intervento manuale.Se lo stato dell'istanza è già
running
, l'automazione procede con l'applicazione di patch all'istanza con il documentoAWS-RunPatchBaseline
che utilizza l'operazioneaws:runCommand
.Se lo stato dell'istanza è
stopping
, l'automazione verifica l'istanza per raggiungere lo statostopped
utilizzando l'operazioneaws:waitForAwsResourceProperty
, avvia l'istanza utilizzando l'operazioneexecuteAwsApi
e verifica l'istanza per raggiungere uno statorunning
prima di applicare patch all'istanza.Se lo stato dell'istanza è
stopped
, l'automazione avvia l'istanza e esegue una verifica affinché l'istanza raggiunga lo statorunning
prima di applicare patch all'istanza utilizzando le stesse operazioni. -
Al termine dell'operazione di applicazione delle patch, Emily desidera che l'automazione restituisca l'istanza di destinazione allo stesso stato in cui si trovava prima dell'avvio dell'automazione. Lo fa utilizzando nuovamente l'output della prima operazione. L'automazione si ramifica sulla base dello stato originale dell'istanza di destinazione utilizzando l'operazione
aws:branch
. Se l'istanza si trovava in precedenza in uno stato diverso darunning
, l'istanza viene arrestata. Altrimenti, se lo stato dell'istanza èrunning
, l'automazione termina. -
Emily esamina il contenuto del runbook figlio completato e crea il runbook nei medesimi Account AWS e Regione AWS come istanze di destinazione. Ora è pronta a continuare con la creazione del contenuto del runbook padre. Di seguito è riportato il contenuto del runbook figlio completato.
Per ulteriori informazioni sulle operazioni di automazione utilizzate in questo esempio, consulta Riferimento alle operazioni del servizio di automazione di Systems Manager.
Creazione del runbook padre
Questo runbook di esempio continua lo scenario descritto nella sezione precedente. Ora che Emily ha creato il runbook figlio, inizia a creare il contenuto per il runbook padre nel modo seguente:
-
Innanzitutto, fornisce i valori per lo schema e la descrizione del runbook e definisce i parametri di input per il runbook padre.
Utilizzando il parametro
AutomationAssumeRole
, Emily e i suoi colleghi possono utilizzare un ruolo IAM esistente che consente al servizio di automazione di eseguire le operazioni nel runbook per loro conto. Emily utilizza i parametriPatchGroupPrimaryKey
ePatchGroupPrimaryValue
per specificare il tag associato al gruppo primario di istanze di database a cui verrà applicata la patch. Lei usa i parametriPatchGroupSecondaryKey
ePatchGroupSecondaryValue
per specificare il tag associato al gruppo secondario di istanze di database a cui verrà applicata la patch. -
Con gli elementi di primo livello definiti, Emily procede con la creazione delle operazioni che compongono i
mainSteps
del runbook.La prima operazione avvia un'automazione del controllo della velocità utilizzando il runbook figlio appena creato e destinato alle istanze associate al tag specificato nei parametri di input
PatchGroupPrimaryKey
ePatchGroupPrimaryValue
. Utilizza i valori forniti ai parametri di input per specificare la chiave e il valore del tag associato al gruppo primario di istanze di database a cui desidera applicare patch.Una volta completata la prima automazione, la seconda operazione avvia un'altra automazione del controllo della velocità utilizzando il runbook figlio che si rivolge alle istanze associate al tag specificato nei parametri di input
PatchGroupSecondaryKey
ePatchGroupSecondaryValue
. Utilizza i valori forniti ai parametri di input per specificare la chiave e il valore del tag associato al gruppo secondario di istanze di database a cui desidera applicare patch. -
Emily esamina il contenuto del runbook padre completato e crea il runbook nei medesimi Account AWS e Regione AWS come istanze di destinazione. Ora, è pronta a testare i suoi runbook per assicurarsi che l'automazione funzioni come desiderato prima di implementarli nell'ambiente di produzione. Di seguito è riportato il contenuto del runbook padre completato.
Per ulteriori informazioni sulle operazioni di automazione utilizzate in questo esempio, consulta Riferimento alle operazioni del servizio di automazione di Systems Manager.