Esecuzione di documenti da posizioni remote - AWS Systems Manager

AWS Systems ManagerChange Managernon è più aperto a nuovi clienti. I clienti esistenti possono continuare a utilizzare il servizio normalmente. Per ulteriori informazioni, consulta AWS Systems ManagerChange Managerla pagina Modifica della disponibilità.

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 documenti da posizioni remote

È possibile eseguire documenti AWS Systems Manager (SSM) da postazioni remote utilizzando il documento SSM AWS-RunDocument predefinito. Questo documento supporta l'esecuzione di documenti SSM memorizzati nelle seguenti posizioni:

  • Repository GitHub pubblici e privati (GitHub Enterprise non è supportato)

  • Bucket Amazon S3

  • Systems Manager

Sebbene sia possibile eseguire documenti remoti anche utilizzando State Manager i nostri strumenti di automazione AWS Systems Manager, la procedura seguente descrive solo come eseguire documenti SSM remoti utilizzando AWS Systems Manager Run Command la console Systems Manager.

Nota

AWS-RunDocument può essere utilizzato per eseguire solo documenti SSM di tipo comando, non altri tipi come i runbook di Automation. AWS-RunDocument utilizza il plugin aws:downloadContent. Per ulteriori informazioni sui plugin aws:downloadContent, consultare aws:downloadContent.

Prima di iniziare

Prima di eseguire un documento remoto devi completare le attività seguenti.

  • Creare un documento SSM e salvarlo in una posizione remota. Per ulteriori informazioni, consulta Creazione del contenuto del documento SSM

  • Se si decide di eseguire un documento remoto archiviato in un repository GitHub privato, è necessario creare un parametro SecureString di Systems Manager per il token di accesso di sicurezza a GitHub. Non è possibile accedere a un documento remoto in un repository GitHub privato trasferendo manualmente il token su SSH. Il token di accesso deve essere trasferito come parametro SecureString di Systems Manager. Per ulteriori informazioni sulla creazione di un parametro SecureString, consulta Creazione di parametri Parameter Store in Systems Manager.

Esecuzione di un documento remoto (console remota)

Per eseguire un documento remoto
  1. Apri la AWS Systems Manager console all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel pannello di navigazione, scegliere Run Command.

  3. Seleziona Run command (Esegui comando).

  4. Nell'elenco Document (Documento) scegliere AWS-RunDocument.

  5. In Command parameters (Parametri di comando), per Source Type (Tipo di origine), scegliere un'opzione.

    • Se si sceglie GitHub, specificare le Source Info (Informazioni origine) nel formato seguente:

      { "owner": "owner_name", "repository": "repository_name", "path": "path_to_document", "getOptions":"branch:branch_name", "tokenInfo": "{{ssm-secure:secure-string-token}}" }

      Ad esempio:

      { "owner":"TestUser", "repository":"GitHubTestExamples", "path":"scripts/python/test-script", "getOptions":"branch:exampleBranch", "tokenInfo":"{{ssm-secure:my-secure-string-token}}" }
      Nota

      getOptions sono opzioni aggiuntive per recuperare il contenuto da un ramo diverso dal master o da un commit specifico nel repository. getOptions può essere omesso se si utilizza l'ultimo commit nel ramo master. Il parametro branch è necessario solo se il documento SSM è memorizzato in un ramo diverso da master.

      Per utilizzare la versione del documento SSM in un particolare commit nel repository, usare commitID con getOptions invece di branch. Ad esempio:

      "getOptions": "commitID:bbc1ddb94...b76d3bEXAMPLE",
    • Se si sceglie S3, specificare le Source Info (Informazioni origine) nel formato seguente:

      {"path":"URL_to_document_in_S3"}

      Ad esempio:

      {"path":"https://s3.amazonaws.com/amzn-s3-demo-bucket/scripts/ruby/mySSMdoc.json"}
    • Se si sceglie SSMDocument, specificare le Source Info (Informazioni origine) nel formato seguente:

      {"name": "document_name"}

      Ad esempio:

      {"name": "mySSMdoc"}
  6. Nel campo Document Parameters (Parametri documento), inserire i parametri per il documento SSM remoto. Ad esempio, se si esegue il documento AWS-RunPowerShell, è possibile specificare:

    {"commands": ["date", "echo \"Hello World\""]}

    Se si esegue il documento AWS-ConfigureAWSPack, è possibile specificare:

    { "action":"Install", "name":"AWSPVDriver" }
  7. Nella sezione Targets (Destinazioni), identificare i nodi in cui si desidera eseguire questa operazione specificando i tag, selezionando manualmente le istanze, i dispositivi edge o indicando un gruppo di risorse.

    Suggerimento

    Se un nodo gestito che ti aspetti di vedere non è presente nell'elenco, consulta Risoluzione dei problemi relativi alla disponibilità dei nodi gestiti per suggerimenti sulla risoluzione dei problemi.

  8. In Other parameters (Altri parametri):

    • In Comment (Commento) digitare le informazioni su questo comando.

    • In Timeout (seconds) (Timeout [secondi]), specificare il numero di secondi che il sistema dovrà attendere prima di generare un errore per l'intera esecuzione del comando.

  9. Per Rate control (Controllo velocità):

    • In Concurrency (Simultaneità), specificare un numero o una percentuale di nodi gestiti su cui eseguire contemporaneamente il comando.

      Nota

      Se hai selezionato le destinazioni specificando i tag applicati ai nodi gestiti o specificando i gruppi di AWS risorse e non sei sicuro del numero di nodi gestiti come target, limita il numero di destinazioni che possono eseguire il documento contemporaneamente specificando una percentuale.

    • Per Error threshold (Soglia di errore) specificare quando interrompere l'esecuzione del comando sulle altri nodi gestiti dopo un errore su un numero o una percentuale di nodi. Se ad esempio si specificano 3 errori, Systems Manager interrompe l'invio del comando quando riceve il quarto errore. Anche i nodi gestiti che stanno ancora elaborando il comando potrebbero inviare errori.

  10. (Opzionale) Nella sezione Output options (Opzioni di output), per salvare l'output del comando in un file, selezionare la casella Write command output to an S3 bucket (Scrivi l'output del comando in un bucket S3). Digita i nomi del bucket e del prefisso (cartella) nelle caselle.

    Nota

    Le autorizzazioni S3 che garantiscono la possibilità di scrivere i dati in un bucket S3 sono quelle del profilo dell'istanza (per EC2 le istanze) o del ruolo del servizio IAM (macchine ad attivazione ibrida) assegnato all'istanza, non quelle dell'utente IAM che esegue questa attività. Per ulteriori informazioni, consulta le pagine Configurazione delle autorizzazioni dell'istanza richieste per Systems Manager oppure Creazione di un ruolo di servizio IAM per un ambiente ibrido. Inoltre, se il bucket S3 specificato si trova su un Account AWS diverso, assicurarsi che il profilo dell'istanza o il ruolo di servizio IAM associato al nodo gestito disponga delle autorizzazioni necessarie per scrivere su quel bucket.

  11. Se si desidera che vengano inviate notifiche sullo stato dell'esecuzione del comando, nella sezione SNS notifications (Notifiche SNS) selezionare la casella di controllo Enable SNS notifications (Abilita notifiche SNS).

    Per ulteriori informazioni sulla configurazione delle notifiche Amazon SNS per Run Command, consulta Monitoraggio delle modifiche di stato di Systems Manager utilizzando le notifiche Amazon SNS.

  12. Selezionare Esegui.

Nota

Per ulteriori informazioni sul riavvio dei server e delle istanze quando usi Run Command per chiamare gli script, consulta Gestione di riavvii durante l'esecuzione dei comandi.