Pianificazione delle automazioni con finestre di manutenzione - AWS Systems Manager

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à.

Pianificazione delle automazioni con finestre di manutenzione

Puoi avviare un'automazione configurando un runbook come processo registrato per una finestra di manutenzione. Impostando il runbook come processo registrato, la finestra di manutenzione esegue l'automazione durante il periodo di manutenzione pianificato.

Ad esempio, supponiamo di creare un runbook denominato CreateAMI che crea un Amazon Machine Image (AMI) delle istanze registrate come destinazioni nella finestra di manutenzione. Per specificare il runbook CreateAMI (e la corrispondente automazione) come processo registrato di una finestra di manutenzione, creare innanzitutto una finestra di manutenzione e registra le destinazioni. Quindi puoi utilizzare la procedura seguente per specificare il documento CreateAMI come processo registrato all'interno della finestra di manutenzione. Quando la finestra di manutenzione viene avviata durante il periodo programmato, il sistema esegue l'automazione e crea un'AMI delle destinazioni registrate.

Per informazioni sulla creazione dei runbook di automazione, consulta Creazione di runbook personalizzati. Il servizio di automazione è una funzionalità di AWS Systems Manager.

Utilizzare le procedure seguenti per configurare un'automazione come processo registrato per una finestra di manutenzione utilizzando la console di AWS Systems Manager, AWS Command Line Interface (AWS CLI) o AWS Tools for Windows PowerShell.

Registrazione di un processo di automazione in una finestra di manutenzione (console)

La procedura seguente descrive come utilizzare la console di Systems Manager per configurare un'automazione come processo registrato per una finestra di manutenzione.

Prima di iniziare

Prima di completare la procedura seguente, è necessario creare una finestra di manutenzione e registrare almeno una destinazione. Per ulteriori informazioni, consulta le procedure seguenti:

Per configurare un'automazione come processo registrato per una finestra di manutenzione
  1. Aprire la console di AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel pannello di navigazione a sinistra, scegliere Maintenance Windows, quindi selezionare la finestra di manutenzione all'interno della quale si desidera registrare un processo del servizio di automazione.

  3. Scegliere Actions (Azioni). Scegliere quindi Register Automation task (Registra processo di automazione) per eseguire un'automazione nelle destinazioni utilizzando un runbook.

  4. In Name (Nome), inserire un nome per il processo.

  5. In Description (Descrizione), inserire una descrizione.

  6. In Document (Documento), scegliere il runbook che definisce i processi da eseguire.

  7. In Document version (Versione del documento), scegliere la versione del runbook da utilizzare.

  8. In Task priority (Priorità dei processi) scegliere una priorità. 1 è la priorità massima. I processi in una finestra di manutenzione vengono pianificati in ordine di priorità, pianificando in parallelo i processi che hanno la stessa priorità.

  9. Nella sezione Targets (Destinazioni), se il runbook scelto esegue i processi in base alle risorse, identificare le destinazioni su cui eseguire l'automazione specificando i tag o selezionando le istanze manualmente.

    Nota

    Se si desidera passare le risorse attraverso i parametri di input anziché le destinazioni, non è necessario specificare una destinazione per la finestra di manutenzione.

    In molti casi, non è necessario specificare in modo esplicito una destinazione per un processo di automazione. Supponiamo ad esempio che si sta creando un'attività di automazione per aggiornare un Amazon Machine Image (AMI) per Linux tramite il runbook AWS-UpdateLinuxAmi. Quando l'attività viene eseguita, AMI viene aggiornato con gli ultimi pacchetti di distribuzione Linux disponibili e il software Amazon. Nuove istanze create da AMI hanno già questi aggiornamenti installati. Perché l'ID dell'AMI da aggiornare è specificato nei parametri di input per il runbook, non è necessario specificare nuovamente una destinazione nel processo della finestra di manutenzione.

    Per informazioni sui processi della finestra di manutenzione che non richiedono destinazioni, vedi Registrazione delle attività della finestra di manutenzione senza destinazioni.

  10. (Facoltativo) In Rate control (Controllo velocità):

    Nota

    se il processo in esecuzione non specifica le destinazioni, non è necessario specificare i controlli della velocità.

    • In Concurrency (Simultaneità), specificare un numero o una percentuale di destinazioni su cui eseguire contemporaneamente l'automazione.

      Se le destinazioni vengono selezionate tramite coppie chiave-valore di tag e non si conosce il numero preciso delle destinazioni che utilizzano i tag selezionati, limitare il numero di automazioni che può essere eseguito simultaneamente specificando una percentuale.

      Quando viene eseguita la finestra di manutenzione, viene avviata una nuova automazione per ogni destinazione. C'è un limite di 100 automazioni simultanee per Account AWS. Se si specifica una quota di simultaneità maggiore di 100, le automazioni simultanee superiori a 100 vengono automaticamente aggiunte alla coda di automazione. Per informazioni, consulta Quote di servizio di Systems Manager nella Riferimenti generali di Amazon Web Services.

    • In Error threshold (Soglia di errore), specificare quando interrompere l'esecuzione dell'automazione nelle altre destinazioni in seguito a errori su un certo numero o percentuale di destinazioni. Ad esempio, se si specificano tre errori, Systems Manager smette di eseguire le automazioni quando si verifica il quarto errore. Anche le destinazioni stanno ancora elaborando l'automazione potrebbero inviare errori.

  11. Nella sezione Input parameters (Parametri di input), specifica i parametri per il runbook. Per i runbook, il sistema compila automaticamente alcuni dei valori. È possibile mantenere o sostituire tali valori.

    Importante

    Per i runbook, è possibile specificare facoltativamente un ruolo presunto di automazione. Se non specifichi un ruolo per questo parametro, l'automazione presume l'utilizzo del ruolo di servizio della finestra di manutenzione scelto nella fase 11. Per questo motivo, devi accertarti che il ruolo di servizio della finestra di manutenzione scelto disponga delle autorizzazioni AWS Identity and Access Management (IAM) appropriate per eseguire le operazioni definite all'interno del runbook.

    Ad esempio, il ruolo collegato al servizio per Systems Manager non ha l'autorizzazione IAM ec2:CreateSnapshot, obbligatoria per utilizzare il runbook AWS-CopySnapshot. In questo scenario, devi utilizzare un ruolo di servizio personalizzato della finestra di manutenzione o specificare un ruolo di assunzione di Automazione che disponga delle autorizzazioni ec2:CreateSnapshot. Per informazioni, consultare Configurazione del servizio di automazione.

  12. Nell'area IAM service role (Ruolo di servizio IAM), scegli un ruolo per concedere a Systems Manager le autorizzazioni per avviare l'automazione.

    Per creare un ruolo di servizio per le attività della finestra di manutenzione, consulta la sezione Utilizzo della console per configurare le autorizzazioni per le finestre di manutenzione.

  13. Scegli Register Automation task (Registra processi di automazione).

Registrazione di un processo di automazione in una finestra di manutenzione (riga di comando)

La procedura seguente descrive come utilizzare AWS CLI (su Linux o Windows) o AWS Tools for PowerShell per configurare un'automazione come processo registrato per una finestra di manutenzione.

Prima di iniziare

Prima di completare la procedura seguente, è necessario creare una finestra di manutenzione e registrare almeno una destinazione. Per ulteriori informazioni, consulta le procedure seguenti:

Per configurare un'automazione come processo registrato per una finestra di manutenzione
  1. Se non è già stato fatto, installare e configurare AWS CLI o AWS Tools for PowerShell.

    Per informazioni, consulta le pagine Installazione o aggiornamento della versione più recente di AWS CLI e Installazione di AWS Tools for PowerShell.

  2. Creare un comando per configurare un'automazione come processo registrato per una finestra di manutenzione Sostituisci ciascun segnaposto delle risorse di esempio con le tue informazioni.

    Linux & macOS
    aws ssm register-task-with-maintenance-window \ --window-id window ID \ --name task name \ --task-arn runbook name \ --targets Key=targets,Values=value \ --service-role-arn IAM role arn \ --task-type AUTOMATION \ --task-invocation-parameters task parameters \ --priority task priority \ --max-concurrency 10% \ --max-errors 5
    Nota

    Se configuri un'automazione come processo registrato utilizzando AWS CLI, utilizza il parametro --Task-Invocation-Parameters per specificare i parametri da passare a un processo quando viene eseguito. Non utilizzare il parametro --Task-Parameters. Il parametro --Task-Parameters è un parametro legacy.

    Per i processi della finestra di manutenzione senza una destinazione specificata, non è possibile fornire valori per --max-errors e --max-concurrency. Invece, il sistema inserisce un valore segnaposto pari a 1, che potrebbe essere segnalato nella risposta a comandi come describe-maintenance-window-tasks e get-maintenance-window-task. Questi valori non influiscono sull'esecuzione del processo e possono essere ignorati.

    Per informazioni sui processi della finestra di manutenzione che non richiedono destinazioni, vedi Registrazione delle attività della finestra di manutenzione senza destinazioni.

    Windows
    aws ssm register-task-with-maintenance-window ^ --window-id window ID ^ --name task name ^ --task-arn runbook name ^ --targets Key=targets,Values=value ^ --service-role-arn IAM role arn ^ --task-type AUTOMATION ^ --task-invocation-parameters task parameters ^ --priority task priority ^ --max-concurrency 10% ^ --max-errors 5
    Nota

    Se configuri un'automazione come processo registrato utilizzando AWS CLI, utilizza il parametro --task-invocation-parameters per specificare i parametri da passare a un processo quando viene eseguito. Non utilizzare il parametro --task-parameters. Il parametro --task-parameters è un parametro legacy.

    Per i processi della finestra di manutenzione senza una destinazione specificata, non è possibile fornire valori per --max-errors e --max-concurrency. Invece, il sistema inserisce un valore segnaposto pari a 1, che potrebbe essere segnalato nella risposta a comandi come describe-maintenance-window-tasks e get-maintenance-window-task. Questi valori non influiscono sull'esecuzione del processo e possono essere ignorati.

    Per informazioni sui processi della finestra di manutenzione che non richiedono destinazioni, vedi Registrazione delle attività della finestra di manutenzione senza destinazioni.

    PowerShell
    Register-SSMTaskWithMaintenanceWindow ` -WindowId window ID ` -Name "task name" ` -TaskArn "runbook name" ` -Target @{ Key="targets";Values="value" } ` -ServiceRoleArn "IAM role arn" ` -TaskType "AUTOMATION" ` -Automation_Parameter @{ "task parameter"="task parameter value"} ` -Priority task priority ` -MaxConcurrency 10% ` -MaxError 5
    Nota

    Se configuri un'automazione come processo registrato utilizzando AWS Tools for PowerShell, utilizza il parametro -Automation_Parameter per specificare i parametri da passare a un processo quando viene eseguito. Non utilizzare il parametro -TaskParameters. Il parametro -TaskParameters è un parametro legacy.

    Per i processi della finestra di manutenzione senza una destinazione specificata, non è possibile fornire valori per -MaxError e -MaxConcurrency Invece, il sistema inserisce un valore segnaposto pari a 1, che potrebbe essere segnalato nella risposta a comandi come Get-SSMMaintenanceWindowTaskList e Get-SSMMaintenanceWindowTask. Questi valori non influiscono sull'esecuzione del processo e possono essere ignorati.

    Per informazioni sui processi della finestra di manutenzione che non richiedono destinazioni, vedi Registrazione delle attività della finestra di manutenzione senza destinazioni.

    L'esempio seguente configura un'automazione come processo registrato in una finestra di manutenzione con priorità 1. Dimostra inoltre l'omissione delle opzioni di --targets,--max-errors, e --max-concurrency per un processo della una finestra di manutenzione senza destinazione. L'automazione utilizza il runbook AWS-StartEC2Instance e il ruolo presunto del servizio di automazione specificato per avviare le istanze di EC2 registrate come destinazioni nella finestra di manutenzione. La finestra di manutenzione esegue l'automazione simultaneamente su un massimo di 5 istanze in qualsiasi momento. Inoltre, l'esecuzione del processo registrato viene arrestata su più istanze per un determinato intervallo se il conteggio degli errori supera 1.

    Linux & macOS
    aws ssm register-task-with-maintenance-window \ --window-id mw-0c50858d01EXAMPLE \ --name StartEC2Instances \ --task-arn AWS-StartEC2Instance \ --service-role-arn arn:aws:iam::123456789012:role/MaintenanceWindowRole \ --task-type AUTOMATION \ --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"{{TARGET_ID}}\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationAssumeRole\"]}}}" \ --priority 1
    Windows
    aws ssm register-task-with-maintenance-window ^ --window-id mw-0c50858d01EXAMPLE ^ --name StartEC2Instances ^ --task-arn AWS-StartEC2Instance ^ --service-role-arn arn:aws:iam::123456789012:role/MaintenanceWindowRole ^ --task-type AUTOMATION ^ --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"{{TARGET_ID}}\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationAssumeRole\"]}}}" ^ --priority 1
    PowerShell
    Register-SSMTaskWithMaintenanceWindow ` -WindowId mw-0c50858d01EXAMPLE ` -Name "StartEC2" ` -TaskArn "AWS-StartEC2Instance" ` -ServiceRoleArn "arn:aws:iam::123456789012:role/MaintenanceWindowRole" ` -TaskType "AUTOMATION" ` -Automation_Parameter @{ "InstanceId"="{{TARGET_ID}}";"AutomationAssumeRole"="arn:aws:iam::123456789012:role/AutomationAssumeRole" } ` -Priority 1

    Il comando restituisce i dettagli per il nuovo processo registrato simili ai seguenti.

    Linux & macOS
    {
    "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
    }
    Windows
    {
    "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
    }
    PowerShell
    4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE
  3. Per visualizzare il processo registrato, esegui il comando seguente. Sostituisci maintenance windows ID (ID finestre di manutenzione) con le tue informazioni.

    Linux & macOS
    aws ssm describe-maintenance-window-tasks \ --window-id maintenance window ID
    Windows
    aws ssm describe-maintenance-window-tasks ^ --window-id maintenance window ID
    PowerShell
    Get-SSMMaintenanceWindowTaskList ` -WindowId maintenance window ID

    Il sistema restituisce informazioni simili alle seguenti.

    Linux & macOS
    {
    "Tasks": [
        {
            "ServiceRoleArn": "arn:aws:iam::123456789012:role/MaintenanceWindowRole",
            "MaxErrors": "1",
            "TaskArn": "AWS-StartEC2Instance",
            "MaxConcurrency": "1",
            "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
            "TaskParameters": {},
            "Priority": 1,
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Type": "AUTOMATION",
            "Targets": [
            ],
            "Name": "StartEC2"
        }
    ]
    }
    Windows
    {
    "Tasks": [
        {
            "ServiceRoleArn": "arn:aws:iam::123456789012:role/MaintenanceWindowRole",
            "MaxErrors": "1",
            "TaskArn": "AWS-StartEC2Instance",
            "MaxConcurrency": "1",
            "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
            "TaskParameters": {},
            "Priority": 1,
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Type": "AUTOMATION",
            "Targets": [
            ],
            "Name": "StartEC2"
        }
    ]
    }
    PowerShell
    Description    : 
    LoggingInfo    : 
    MaxConcurrency : 5
    MaxErrors      : 1
    Name           : StartEC2
    Priority       : 1
    ServiceRoleArn : arn:aws:iam::123456789012:role/MaintenanceWindowRole
    Targets        : {}
    TaskArn        : AWS-StartEC2Instance
    TaskParameters : {}
    Type           : AUTOMATION
    WindowId       : mw-0c50858d01EXAMPLE
    WindowTaskId   : 4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE