

• La AWS Systems Manager CloudWatch dashboard non sarà più disponibile dopo il 30 aprile 2026. I clienti possono continuare a utilizzare la CloudWatch console Amazon per visualizzare, creare e gestire le proprie CloudWatch dashboard Amazon, proprio come fanno oggi. Per ulteriori informazioni, consulta la [documentazione di Amazon CloudWatch Dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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 di comandi su vasta scala
<a name="send-commands-multiple"></a>

È possibile utilizzareRun Command, uno strumento in AWS Systems Manager, per eseguire comandi su una flotta di nodi gestiti utilizzando il`targets`. Il parametro `targets` accetta una combinazione `Key,Value` in base ai tag specificati per i nodi gestiti. Quando si esegue il comando, il sistema individua e tenta di eseguire il comando su tutti i nodi gestiti che corrispondono ai tag specificati. Per ulteriori informazioni sull'etichettatura delle istanze gestite, consulta [Tagging your AWS resources nella Tagging](https://docs.aws.amazon.com/tag-editor/latest/userguide/tag-editor.html) Resources User * AWS Guide*. Per informazioni sull'etichettatura dei dispositivi IoT gestiti, consulta [Etichettare le AWS IoT Greengrass Version 2 risorse](https://docs.aws.amazon.com/greengrass/v2/developerguide/tag-resources.html) nella *Guida per gli AWS IoT Greengrass Version 2 sviluppatori*. 

Puoi anche utilizzare il `targets` parametro per indirizzare un elenco di nodi gestiti specifici IDs, come descritto nella sezione successiva.

Per controllare l'esecuzione del comando su centinaia o migliaia di nodi gestiti, Run Command include anche i parametri per limitare il numero di nodi che possono elaborare contemporaneamente una richiesta e il numero di errori che possono essere generati da un comando prima che venga terminato.

**Topics**
+ [Impostare come destinazione più nodi gestiti](#send-commands-targeting)
+ [Utilizzo dei controlli di velocità](#send-commands-rate)

## Impostare come destinazione più nodi gestiti
<a name="send-commands-targeting"></a>

È possibile eseguire un comando e scegliere come target i nodi gestiti specificando tag, nomi di gruppi di AWS risorse o nodi IDs gestiti. 

Gli esempi seguenti mostrano il formato del comando quando si utilizza Run Command from the AWS Command Line Interface (AWS CLI ). Sostituisci ogni *example resource placeholder* con le tue informazioni. I comandi di esempio in questa sezione sono troncati utilizzando `[...]`.

**Esempio 1: definizione di tag come target**

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:tag-name,Values=tag-value \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:tag-name,Values=tag-value ^
    [...]
```

------

**Esempio 2: Individuazione di un gruppo di AWS risorse in base al nome**

Puoi specificare un massimo di un nome del gruppo di risorse per comando. Quando crei un gruppo di risorse, ti consigliamo di includere `AWS::SSM:ManagedInstance` e `AWS::EC2::Instance` come tipi di risorse nei criteri di raggruppamento. 

**Nota**  
Per inviare comandi destinati a un gruppo di risorse, è necessario disporre delle autorizzazioni AWS Identity and Access Management (IAM) per elencare o visualizzare le risorse che appartengono a quel gruppo. Per ulteriori informazioni, consulta [Impostazione delle autorizzazioni](https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-prereqs.html#gettingstarted-prereqs-permissions) nella *Guida per l'utente di AWS Resource Groups *. 

------
#### [ Linux & macOS ]

```
aws ssm send-command \    
    --document-name document-name \
    --targets Key=resource-groups:Name,Values=resource-group-name \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^    
    --document-name document-name ^
    --targets Key=resource-groups:Name,Values=resource-group-name ^
    [...]
```

------

**Esempio 3: Individuazione di un gruppo di risorse per tipo di AWS risorsa**

Puoi specificare un massimo di un nome del gruppo di risorse per comando. Quando crei un gruppo di risorse, ti consigliamo di includere `AWS::SSM:ManagedInstance` e `AWS::EC2::Instance` come tipi di risorse nei criteri di raggruppamento.

**Nota**  
Per inviare comandi destinati a un gruppo di risorse, è necessario disporre di autorizzazioni IAM per elencare o visualizzare le risorse che appartengono a tale gruppo. Per ulteriori informazioni, consulta [Impostazione delle autorizzazioni](https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-prereqs.html#gettingstarted-prereqs-permissions) nella *Guida per l'utente di AWS Resource Groups *. 

------
#### [ Linux & macOS ]

```
aws ssm send-command \    
    --document-name document-name \
    --targets Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2 \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^    
    --document-name document-name ^
    --targets Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2 ^
    [...]
```

------

**Esempio 4: istanza di targeting IDs**

Gli esempi seguenti mostrano come destinazione i nodi gestiti utilizzando il `instanceids` Chiave con il parametro `targets`. È possibile utilizzare questa chiave per indirizzare i dispositivi AWS IoT Greengrass core gestiti perché a ciascun dispositivo viene assegnato un mi-*ID\$1number*. È possibile visualizzare il dispositivo IDs inFleet Manager, uno strumento in AWS Systems Manager.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=instanceids,Values=instance-ID-1,instance-ID-2,instance-ID-3 \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=instanceids,Values=instance-ID-1,instance-ID-2,instance-ID-3 ^
    [...]
```

------

Se hai aggiunto tag ai nodi gestiti per diversi ambienti usando una `Key` denominata `Environment` e `Values` pari a `Development`, `Test`, `Pre-production` e `Production`, puoi inviare un comando a tutti i nodi gestiti in *uno* degli ambienti utilizzando il parametro `targets` con la seguente sintassi.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Environment,Values=Development \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Environment,Values=Development ^
    [...]
```

------

Puoi definire altri nodi gestiti come destinazione in altri ambienti aggiungendo voci all'elenco `Values`. Separa gli elementi con le virgole.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Environment,Values=Development,Test,Pre-production \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Environment,Values=Development,Test,Pre-production ^
    [...]
```

------

**Variazione**: perfezionamento dei target utilizzando più criteri `Key`

È possibile perfezionare il numero di target per il comando includendo più criteri `Key`. Se si includono più criteri `Key`, vengono definite come destinazioni i nodi gestiti che soddisfano *tutti* i criteri. Il comando seguente definisce come destinazione tutti i nodi gestiti taggati per il reparto finanze *e* taggati per il ruolo server di database.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Department,Values=Finance Key=tag:ServerRole,Values=Database \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Department,Values=Finance Key=tag:ServerRole,Values=Database ^
    [...]
```

------

**Variazione**: utilizzo di più criteri `Key` e `Value`

Espandendo l'esempio precedente, è possibile definire più reparti e più ruoli server come target includendo altri elementi nei criteri `Values`.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Department,Values=Finance,Marketing Key=tag:ServerRole,Values=WebServer,Database \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Department,Values=Finance,Marketing Key=tag:ServerRole,Values=WebServer,Database ^
    [...]
```

------

**Variazione**: definizione di nodi gestiti con tag come destinazione utilizzando più criteri `Values`

Se hai applicato tag a nodi gestiti per diversi ambienti usando un oggetto `Key` denominato `Department` e `Values` corrispondente a `Sales` e `Finance`, puoi inviare un comando a tutti i nodi gestiti in questi ambienti utilizzando il parametro `targets` con la sintassi seguente.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Department,Values=Sales,Finance \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Department,Values=Sales,Finance ^
    [...]
```

------

È possibile specificare un massimo di cinque chiavi e cinque valori per ogni chiave.

Se una chiave tag (il nome del tag) o un valore tag include spazi, devi racchiudere tra virgolette la chiave o il valore tag, come mostrato nei seguenti esempi.

**Esempio**: spazi nel tag `Value`

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:OS,Values="Windows Server 2016" \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:OS,Values="Windows Server 2016" ^
    [...]
```

------

**Esempio**: spazi nella chiave `tag` e `Value`

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key="tag:Operating System",Values="Windows Server 2016" \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key="tag:Operating System",Values="Windows Server 2016" ^
    [...]
```

------

**Esempio**: spazi in un elemento in un elenco di `Values`

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --targets Key=tag:Department,Values="Sales","Finance","Systems Mgmt" \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --targets Key=tag:Department,Values="Sales","Finance","Systems Mgmt" ^
    [...]
```

------

## Utilizzo dei controlli di velocità
<a name="send-commands-rate"></a>

Puoi controllare la velocità con cui i comandi vengono inviati ai nodi gestiti di un gruppo utilizzando *controlli di concorrenza * e *controlli di errore*.

**Topics**
+ [Utilizzo di controlli di concorrenza](#send-commands-velocity)
+ [Utilizzo dei controlli degli errori](#send-commands-maxerrors)

### Utilizzo di controlli di concorrenza
<a name="send-commands-velocity"></a>

Puoi controllare il numero di nodi gestiti che eseguono il comando contemporaneamente utilizzando il parametro `max-concurrency` (le opzioni **Simultaneità** nella pagina **Esegui un comando**). Puoi specificare un numero assoluto di nodi gestiti, ad esempio **10**, oppure una percentuale del set di target, ad esempio **10%**. Il sistema di accodamento invia il comando a un singolo nodo e attende il completamento dell'invocazione iniziale prima di inviare il comando ad altri due nodi. Il sistema invia comandi ad altri nodi in modo esponenziale fino al raggiungimento del valore `max-concurrency`. Il valore predefinito per `max-concurrency` è 50. Gli esempi seguenti mostrano come specificare valori per il parametro `max-concurrency`.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --max-concurrency 10 \
    --targets Key=tag:Environment,Values=Development \
    [...]
```

```
aws ssm send-command \
    --document-name document-name \
    --max-concurrency 10% \
    --targets Key=tag:Department,Values=Finance,Marketing Key=tag:ServerRole,Values=WebServer,Database \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --max-concurrency 10 ^
    --targets Key=tag:Environment,Values=Development ^
    [...]
```

```
aws ssm send-command ^
    --document-name document-name ^
    --max-concurrency 10% ^
    --targets Key=tag:Department,Values=Finance,Marketing Key=tag:ServerRole,Values=WebServer,Database ^
    [...]
```

------

### Utilizzo dei controlli degli errori
<a name="send-commands-maxerrors"></a>

Puoi anche controllare l'esecuzione di un comando su centinaia o migliaia di nodi gestiti impostando un limite di errori usando i parametri `max-errors` (il campo **Soglia di errore** nella pagina **Esegui un comando**). Il parametro specifica il numero di errori consentiti prima che il sistema smetta di inviare il comando ad altri nodi gestiti. Puoi specificare un numero assoluto di errori, ad esempio **10**, oppure una percentuale della serie di target, ad esempio **10%**. Se ad esempio specifichi **3**, il sistema smette di inviare il comando quando riceve il quarto errore. Se specifichi **0**, il sistema smette di inviare il comando ad altri nodi gestiti non appena viene restituito il primo risultato di errore. Se invii un comando a 50 nodi gestiti e imposti `max-errors` su **10%**, il sistema smette di inviare il comando ad altri nodi quando riceve il sesto errore.

Per le invocazioni che stanno già eseguendo un comando quando viene raggiunto il valore `max-errors`, viene consentito il completamento dell'operazione, ma alcune di queste invocazioni potrebbero non riuscire. Per evitare che si verifichino più di `max-errors` invocazioni non riuscite, imposta `max-concurrency` su **1** in modo che le invocazioni procedano una alla volta. Il valore predefinito per max-errors è 0. Gli esempi seguenti mostrano come specificare valori per il parametro `max-errors`.

------
#### [ Linux & macOS ]

```
aws ssm send-command \
    --document-name document-name \
    --max-errors 10 \
    --targets Key=tag:Database,Values=Development \
    [...]
```

```
aws ssm send-command \
    --document-name document-name \
    --max-errors 10% \
    --targets Key=tag:Environment,Values=Development \
    [...]
```

```
aws ssm send-command \
    --document-name document-name \
    --max-concurrency 1 \
    --max-errors 1 \
    --targets Key=tag:Environment,Values=Production \
    [...]
```

------
#### [ Windows ]

```
aws ssm send-command ^
    --document-name document-name ^
    --max-errors 10 ^
    --targets Key=tag:Database,Values=Development ^
    [...]
```

```
aws ssm send-command ^
    --document-name document-name ^
    --max-errors 10% ^
    --targets Key=tag:Environment,Values=Development ^
    [...]
```

```
aws ssm send-command ^
    --document-name document-name ^
    --max-concurrency 1 ^
    --max-errors 1 ^
    --targets Key=tag:Environment,Values=Production ^
    [...]
```

------