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à.
Esecuzione automatica delle operazioni sulle EC2 istanze in risposta agli eventi in AWS Health
Puoi automatizzare le azioni che rispondono agli eventi pianificati per le tue EC2 istanze Amazon. Quando AWS Health invia un evento al tuo AWS account, la EventBridge regola può quindi richiamare obiettivi, come i documenti di AWS Systems Manager automazione, per automatizzare le azioni per tuo conto.
Ad esempio, quando è pianificato un evento di ritiro di un'EC2istanza Amazon per un'EC2istanza supportata da Amazon Elastic Block Store (AmazonEBS), AWS Health invierà il tipo di AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED
evento alla tua AWS Health dashboard. Quando la regola rileva questo tipo di evento, puoi automatizzare l'arresto e l'avvio dell'istanza. In questo modo, non è necessario eseguire queste azioni manualmente.
Nota
Per automatizzare le azioni per le tue EC2 istanze Amazon, le istanze devono essere gestite da Systems Manager.
Per ulteriori informazioni, consulta Automating Amazon EC2 with EventBridge nella Amazon EC2 User Guide.
Prerequisiti
È necessario creare una politica AWS Identity and Access Management (IAM), creare un IAM ruolo e aggiornare la politica di fiducia del ruolo prima di poter creare una regola.
Segui questa procedura per creare una policy gestita dal cliente per il tuo ruolo. Questa politica autorizza il ruolo a eseguire azioni per tuo conto. Questa procedura utilizza l'editor delle JSON politiche nella IAM console.
Per creare una policy IAM
Accedi a AWS Management Console e apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel pannello di navigazione, selezionare Policies (Policy).
-
Scegli Create Policy (Crea policy).
-
Scegli la JSONscheda.
-
Copia quanto segue JSON e sostituisci il valore predefinito JSON nell'editor.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances", "ec2:DescribeInstanceStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "ssm:*" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": [ "arn:aws:sns:*:*:Automation*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::
123456789012
:role/AutomationEVRole
" } ] }-
Nel
Resource
parametro, per Amazon Resource Name (ARN), inserisci l'ID AWS del tuo account. -
Puoi anche sostituire il nome del ruolo o utilizzare quello predefinito. Questo esempio utilizza
AutomationEVRole
.
-
-
Scegli Successivo: Tag.
-
(Facoltativo) Puoi aggiungere metadati alla policy collegando i tag come coppie chiave-valore.
-
Scegli Prossimo: Rivedi.
-
Nella pagina Rivedi la politica, inserisci un nome, ad esempio
AutomationEVRolePolicy
e una descrizione facoltativa. -
Consulta la pagina di riepilogo per vedere le autorizzazioni consentite dalla politica. Se sei soddisfatto della tua politica, scegli Crea politica.
Questa policy definisce le operazioni che questo ruolo può eseguire. Per ulteriori informazioni, consulta Creazione IAM di politiche (console) nella Guida IAM per l'utente.
Dopo aver creato la politica, è necessario creare un IAM ruolo e quindi associare la politica a quel ruolo.
Per creare un ruolo per un AWS servizio
Accedi a AWS Management Console e apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, scegli Ruoli e quindi Crea ruolo.
-
In Select type of trusted entity (Seleziona tipo di entità attendibile), scegli AWS service (Servizio).
-
Scegli EC2il servizio a cui desideri consentire l'assunzione di questo ruolo.
-
Scegli Successivo: autorizzazioni.
-
Inserisci il nome della policy che hai creato, ad esempio
AutomationEVRolePolicy
, quindi seleziona la casella di controllo accanto alla politica. -
Scegli Successivo: Tag.
-
(Facoltativo) Puoi aggiungere metadati al ruolo collegando i tag come coppie chiave-valore.
-
Scegli Prossimo: Rivedi.
-
Per il nome del ruolo, immettere
AutomationEVRole
. Questo nome deve essere lo stesso nome che appare nella ARN IAM politica che hai creato. -
(Facoltativo) In Role description (Descrizione ruolo), immettere una descrizione per il nuovo ruolo.
-
Rivedere il ruolo e scegliere Crea ruolo.
Per ulteriori informazioni, vedere Creazione di un ruolo per un AWS servizio nella Guida per l'IAMutente.
Infine, puoi aggiornare la politica di fiducia per il ruolo che hai creato. È necessario completare questa procedura in modo da poter scegliere questo ruolo nella EventBridge console.
Per aggiornare la politica di fiducia per il ruolo
Accedi a AWS Management Console e apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, seleziona Ruoli.
-
Nell'elenco dei ruoli del tuo AWS account, scegli il nome del ruolo che hai creato, ad esempio
AutomationEVRole
. -
Selezionare la scheda Trust relationships (Relazioni di trust) e scegliere Edit trust relationship (Modifica relazione di trust).
-
Per Policy Document, copia quanto segueJSON, rimuovi la politica predefinita e incolla quella copiata JSON al suo posto.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com", "events.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
-
Scegli Update Trust Policy (Aggiorna policy di trust).
Per ulteriori informazioni, vedere Modifica di una policy di fiducia per i ruoli (console) nella Guida per l'IAMutente.
Crea una regola per EventBridge
Segui questa procedura per creare una regola nella EventBridge console in modo da poter automatizzare l'arresto e l'avvio delle EC2 istanze il cui ritiro è programmato.
Per creare una regola EventBridge per le azioni automatizzate di Systems Manager
Apri la EventBridge console Amazon all'indirizzo https://console.aws.amazon.com/events/
. -
Nel pannello di navigazione, in Events (Eventi), scegli Rules (Regole).
-
Nella pagina Crea regola, inserisci un nome e una descrizione per la regola.
-
In Define pattern (Definisci modello) scegliere Event pattern (Modello di evento), quindi selezionare Pre-defined pattern by service (Modello predefinito in base al servizio).
-
Per Service provider (Provider di servizi), selezionare AWS.
-
Per Nome del servizio, scegli Health.
-
Per Tipo di evento, scegli Specific Health events.
-
Scegli Servizi specifici, quindi scegli EC2.
-
Scegli le categorie di tipi di eventi specifici, quindi scegli scheduledChange.
-
Scegli i codici dei tipi di evento specifici, quindi scegli il codice del tipo di evento.
Ad esempio, per le istanze EC2 EBS supportate da Amazon, scegli.
Per le EC2 istanze archiviate su istanze Amazon, scegli.AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED
AWS_EC2_INSTANCE_RETIREMENT_SCHEDULED
-
Seleziona Qualsiasi risorsa.
Il modello del tuo evento sarà simile al seguente esempio.
{ "source": [ "aws.health" ], "detail-type": [ "AWS Health Event" ], "detail": { "service": [ "EC2" ], "eventTypeCategory": [ "scheduledChange" ], "eventTypeCode": [ "AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED" ] } }
-
Aggiungere la destinazione del documento Systems Manager Automation. In Seleziona obiettivi, per Target, scegli SSMAutomazione.
-
Per Document (Documento), scegliere
AWS-RestartEC2Instance
. -
Espandi i parametri di configurazione dell'automazione, quindi scegli Input Transformer.
-
Per il campo Input Path, inserisci
.{"Instances":"$.resources"}
-
Per il secondo campo, immettere
.{"InstanceId": <Instances>}
-
Scegli Usa ruolo esistente, quindi scegli il IAM ruolo che hai creato, ad esempio
AutomationEVRole
.Il tuo obiettivo dovrebbe essere simile all'esempio seguente.
Nota
Se non disponi di un IAM ruolo esistente con le autorizzazioni EC2 e la relazione di fiducia richieste e di Systems Manager, il tuo ruolo non verrà visualizzato nell'elenco. Per ulteriori informazioni, consulta Prerequisiti.
-
Scegli Create (Crea) .
Se nel tuo account si verifica un evento che corrisponde alla tua regola, EventBridge invierà l'evento alla destinazione specificata.