Creazione del contenuto del documento SSM
Se i documenti pubblici di AWS Systems Manager non eseguono tutte le operazioni che si desidera eseguire sulle risorse AWS, è possibile creare documenti SSM propri. È inoltre possibile clonare documenti SSM tramite la console. La clonazione di documenti consente di copiare il contenuto da un documento esistente in un nuovo documento che è possibile modificare. Quando si crea o si clona un documento, il contenuto non deve superare i 64 KB. Questa quota include anche il contenuto specificato per i parametri di input in runtime (fase di esecuzione). Quando si crea un nuovo documento Command
o Policy
, si consiglia di utilizzare lo schema versione 2.2 o successiva in modo da poter sfruttare le funzionalità più recenti, come la modifica dei documenti, il controllo automatico delle versioni, il sequenziamento e altro ancora.
Scrittura del contenuto del documento SSM
Per creare il proprio contenuto del documento SSM, è importante comprendere i diversi schemi, plugin, le diverse funzionalità e la diversa sintassi disponibili per i documenti SSM. Si consiglia di acquisire familiarità con le seguenti risorse.
-
Documentazione di riferimento del plugin per i documenti di comando
-
Riferimento alle operazioni del servizio di automazione di Systems Manager
-
Utilizzo dei runbook Automation di Systems Managertramite il AWS Toolkit for Visual Studio Code
-
Esperienza di progettazione visiva per i runbook di automazione
I documenti SSM predefiniti AWS potrebbero eseguire alcune delle operazioni necessarie. È possibile richiamare questi documenti utilizzando i plugin aws:runDocument
, aws:runCommand
o aws:executeAutomation
all'interno del documento SSM personalizzato, a seconda del tipo di documento. È inoltre possibile copiare parti di tali documenti in un documento SSM personalizzato e modificare il contenuto in base alle proprie esigenze.
Suggerimento
Durante la creazione del contenuto del documento SSM, è possibile modificare il contenuto e aggiornare il documento più volte durante il test. I comandi seguenti aggiornano il documento SSM con il contenuto più recente e aggiornano la versione predefinita del documento alla versione più recente.
Nota
I comandi Linux e Windows utilizzano lo strumento a riga di comando jq
per filtrare i dati di risposta JSON.
Clonazione di un documento SSM
È possibile clonare documenti AWS Systems Manager utilizzando la console Documenti di Systems Manager per creare documenti SSM. La clonazione di documenti SSM consente di copiare il contenuto da un documento esistente in un nuovo documento che è possibile modificare. Non puoi clonare un documento di dimensioni superiori a 64 KB.
Per clonare un documento SSM
Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/
. Nel riquadro di navigazione, scegli Documenti.
-
Nella casella di ricerca, inserire il nome del documento che si desidera clonare.
-
Scegliere il nome del documento che si desidera clonare, quindi scegliere Clone document (Clona documento) nel menu a tendina Actions (Operazioni).
-
Modificare il documento come si preferisce, quindi scegliereCreate document (Crea documento) per salvare il documento.
Dopo aver scritto il contenuto del documento SSM, è possibile utilizzarlo per creare un documento SSM tramite uno dei seguenti metodi.
Creare documenti SSM
Creazione di documenti compositi
Un documento AWS Systems Manager (SSM) composito è un documento personalizzato per condurre una serie di operazioni eseguendo uno o più documenti SSM secondari. I documenti compositi promuovono l'Infrastructure as Code consentendo di creare un set standard di documenti SSM per attività comuni, come processi di bootstrap di software o l'aggiunta di domini a istanze. È quindi possibile condividere questi documenti su più Account AWS nella stessa Regione AWS per ridurre la manutenzione dei documenti SSM e garantire la coerenza.
Ad esempio, puoi creare un documento composito che esegue le seguenti operazioni:
-
Installa tutte le patch nell'elenco Consenti.
-
Installa il software antivirus.
-
Scarica script da GitHub e li esegue.
In questo esempio, il documento SSM personalizzato include i seguenti plugin per effettuare le operazioni riportate di seguito:
-
Il plug-in
aws:runDocument
per eseguire il documentoAWS-RunPatchBaseline
, che installa tutte le patch consentite elencate. -
Il plugin
aws:runDocument
per eseguire il documentoAWS-InstallApplication
, che installa il software antivirus. -
Il plug-in
aws:downloadContent
per scaricare script da GitHub ed eseguirli.
I documenti compositi e secondari possono essere archiviati in Systems Manager, GitHub (repository pubblici e privati) o Amazon S3. I documenti compositi e secondari possono essere create in formato JSON o YAML.
Nota
I documenti compositi possono essere eseguiti solo a una profondità massima di tre documenti. Ciò significa che un documento composito può chiamare un documento figlio e che questo documento figlio può chiamare un ultimo documento.
Per creare un documento composito, aggiungere il plug-in aws:runDocument in un documento SSM personalizzato e specificare gli input necessari. L'esempio qui sotto mostra un documento composito che effettua le seguenti operazioni:
-
Esegue il plug-in aws:downloadContent per scaricare un documento SSM da un repository GitHub pubblico in una directory locale denominata bootstrap. Il documento SSM è denominato StateManagerBootstrap.yml (un documento YAML).
-
Esegue il plugin
aws:runDocument
per eseguire il documento StateManagerBootstrap.yml. Non è specificato alcun parametro. -
Esegue il plugin
aws:runDocument
per eseguire il documento SSM diAWS-ConfigureDocker pre-defined
. I parametri specificati installano Docker sull'istanza.
{ "schemaVersion": "2.2", "description": "My composite document for bootstrapping software and installing Docker.", "parameters": { }, "mainSteps": [ { "action": "aws:downloadContent", "name": "downloadContent", "inputs": { "sourceType": "GitHub", "sourceInfo": "{\"owner\":\"TestUser1\",\"repository\":\"TestPublic\", \"path\":\"documents/bootstrap/StateManagerBootstrap.yml\"}", "destinationPath": "bootstrap" } }, { "action": "aws:runDocument", "name": "runDocument", "inputs": { "documentType": "LocalPath", "documentPath": "bootstrap", "documentParameters": "{}" } }, { "action": "aws:runDocument", "name": "configureDocker", "inputs": { "documentType": "SSMDocument", "documentPath": "AWS-ConfigureDocker", "documentParameters": "{\"action\":\"Install\"}" } } ] }
- Ulteriori informazioni
-
-
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.
-
Per ulteriori informazioni sui plugin che è possibile aggiungere a un documento SSM personalizzato, consultare Documentazione di riferimento del plugin per i documenti di comando .
-
Se desideri eseguire un documento da una posizione remota (senza creare un documento composito), consulta Esecuzione di documenti da posizioni remote.
-