Esecuzione dei comandi da remoto su un'istanza EC2 con AWS Systems Manager

TUTORIAL

Panoramica

In questo tutorial pratico, apprenderai come utilizzare AWS Systems Manager per eseguire comandi da remoto sulle tue istanze di Amazon EC2. Systems Manager è uno strumento di gestione che ti consente di ottenere approfondimenti operativi e di intervenire sulle risorse AWS in sicurezza e su larga scala. Utilizzando il run command, una delle funzionalità di automazione di Systems Manager, puoi semplificare le attività di gestione eliminando l'esigenza di utilizzare host bastione, SSH o PowerShell remoto.

Nel nostro scenario di esempio, come System Administrator, devi aggiornare i pacchetti sulle tue istanze EC2. Per complicare questa attività amministrativa normalmente semplice, il tuo team di sicurezza non ti consente di accedere direttamente ai server di produzione tramite SSH né di utilizzare host bastione. Fortunatamente, puoi utilizzare Systems Manager per eseguire i comandi da remoto, come i pacchetti di aggiornamento, sulle tue istanze EC2.

Per risolvere questo complesso scenario, crea un ruolo Identity and Access Management (IAM), abilita un agente sulla tua istanza affinché comunichi con Systems Manager, quindi segui le best practice eseguendo il documento AWS-UpdateSSMAgent per aggiornare il tuo Systems Manager Agent e utilizza infine Systems Manager per eseguire un comando sulla tua istanza.

AWS Systems Manager è sempre un prodotto con piano gratuito. Le istanze EC2 create in questo tutorial sono idonee per il piano gratuito.

Apri la Console di gestione AWS e tieni sotto mano questa guida dettagliata. Una volta caricata la schermata, inserisci nome utente e password per iniziare.

 Esperienza AWS

Principiante

 Tempo per il completamento

10 minuti

 Costo richiesto per il completamento

Idoneo per Piano gratuito

 Requisiti

  • Account AWS
  • Browser consigliato: l'ultima versione di Chrome o Firefox

[**]Gli account creati nelle ultime 24 ore potrebbero non avere ancora accesso a tutti servizi richiesti per questo tutorial.

 Ultimo aggiornamento

14 luglio 2022

Implementazione

Fase 1: Creazione di un ruolo Identity and Access Management (IAM)

In questa fase, creerai un ruolo IAM che verrà utilizzato per dare autorizzazioni a Systems Manager affinché esegua azioni sulle tue istanze.

a.  Apri la console IAM su https://console.aws.amazon.com/iam/.

b.  Nel pannello di navigazione a sinistra, seleziona Ruoli, quindi Crea ruolo.

c.  In Seleziona il tipo di entità affidabile, nella sezione Servizi AWS, scegli EC2, quindi scegli Avanti.

d.  Nella pagina Aggiungi autorizzazioni, nella barra di ricerca digita AmazonEC2RoleforSSM. Dall'elenco delle policy, seleziona AmazonEC2RoleforSSM e quindi scegli Avanti.

e.  Alla pagina Nome, verifica e crea, nella casella Nome ruolo, digita EnablesEC2ToAccessSystemsManagerRole. Nella casella Descrizione, digita Enables an EC2 instance to access Systems Manager (Consenti a un'istanza EC2 di accedere Systems Manager. Scegli Crea ruolo.

Fase 2: Creazione di un'istanza EC2

In questa fase creerai un'istanza EC2 utilizzando il ruolo EnablesEC2ToAccessSystemsManagerRole. Questo consentirà a Systems Manager di gestire l'istanza EC2.


a.  Apri la console di Amazon EC2. Nella console EC2 seleziona la tua Regione preferita. Systems Manager è supportato in tutte le Regioni AWS. Ora seleziona Avvia istanza.

b.  Nel campo Nome, inserisci MyEC2Tutorial. Seleziona l'AMI Amazon Linux. Mantieni la selezione predefinita che appare nel menu a discesa. Puoi anche installare l'Agente Systems Manager sul tuo sistema Windows o Linux.

c.  Scegli il tipo di istanza t2.micro.

d.   Non sarà necessaria una coppia di chiavi per utilizzare Systems Manager per eseguire i comandi da remoto. Scorri verso il basso fino a Coppia di chiavi e sotto il menu a discesa del Nome della coppia di chiavi, scegli Procedi senza una coppia di chiavi.

e. Mantieni le impostazioni predefinite in Impostazioni di rete e Configura archiviazione.

f. Alla pagina Dettagli avanzati, nel menu a discesa Profilo dell'istanza IAM, scegli il ruolo EnablesEC2ToAccessSystemsManagerRole creato in precedenza. Non modificare le selezioni predefinite. Scegli Avvia istanza.

Fase 3: Aggiornamento dell'Agente Systems Manager

Ora che disponi di un'istanza EC2 che esegue l'Agente Systems Manager, puoi automatizzare le attività di amministrazione e gestire l'istanza. In questa fase, devi eseguire un comando predefinito, chiamato documento, che aggiornerà l'agente. La best practice prevede che aggiorni l'Agente Systems Manager quando crei una nuova istanza.

a. Nella barra di navigazione in alto, cerca Systems Manager e apri la relativa console.

b.  Nella sezione Gestione dei nodi sulla barra di navigazione a sinistra, scegli Fleet Manager.

c. Seleziona l'ID del nodo creato nel passaggio 2, MyEC2Tutorial, per aprire la pagina dei dettagli del nodo.

d. Nella pagina dei dettagli del nodo, nel menu a discesa Operazioni dei nodi, seleziona Esegui comando di esecuzione.

e. Nella pagina Esegui un comando, fai clic sulla barra di ricerca e seleziona Prefisso del nome del documento, quindi fai clic su Uguale e digita infine AWS-UpdateSSMAgent.

A questo punto, seleziona il pulsante di opzione sulla sinistra di AWS-UpdateSSMAgent. Questo documento aggiornerà l'Agente Systems Management nell'istanza.

f. Scorri fino al riquadro Destinazioni e seleziona la casella di controllo accanto alla tua istanza EC2 gestita.

Infine, scorri verso il basso e seleziona Esegui.

g.  Verrà quindi visualizzata una pagina che documenta il tuo comando di esecuzione e la riuscita complessiva in verde. Complimenti, hai appena eseguito il tuo primo comando da remoto con Systems Manager.

Fase 4: Esecuzione di uno script Shell da remoto

Ora che la tua istanza EC2 dispone dell'Agente Systems Manager più recente, puoi aggiornare i pacchetti nell'istanza EC2. In questa fase, eseguirai uno script Shell tramite Esegui comando.

a. Nella sezione Gestione dei nodi sulla barra di navigazione a sinistra, scegli Fleet Manager.

b. Seleziona l'ID del nodo creato nel passaggio 2, MyEC2Tutorial, per aprire la pagina dei dettagli del nodo.

c. Nella pagina dei dettagli del nodo, nel menu a discesa Operazioni dei nodi, seleziona Esegui comando di esecuzione.

d.  Nella pagina Esegui un comando, fai clic sulla barra di ricerca e seleziona Prefisso del nome del documento, quindi fai clic su Uguale e digita infine AWS-RunShellScript.

Quindi seleziona il pulsante di opzione sulla sinistra di AWS-RunShellScript. 

e.  Scorri in basso verso il riquadro Parametri di comando e inserisci il seguente comando nella casella di testo Comandi:

sudo yum update –y

f. Scorri fino al riquadro Destinazioni e seleziona la casella di controllo accanto alla tua istanza EC2 gestita.

Infine, scorri verso il basso e seleziona Esegui.

g.  Mentre il tuo script è in esecuzione da remoto sull'istanza EC2 gestita, lo Stato generale sarà In corso. A breve Stato generale cambierà in Riuscito. Quando cambia, scorri in basso verso il riquadro Destinazioni e output e seleziona l'ID istanza della tua istanza. Il tuo ID istanza sarà diverso da quello raffigurato.

h.  Nella pagina Output su: i-XX, seleziona l'intestazione del riquadro Output per visualizzare l'output del comando di aggiornamento dall'istanza.

Fase 5: Arresto delle risorse

In questa fase, eseguirai l'arresto delle risorse relative a Systems Manager ed EC2. Importante: l'arresto delle risorse che non vengono utilizzate attivamente consente di ridurre i costi e costituisce una best practice. La mancata interruzione delle risorse potrebbe determinare costi non desiderati.

a.  Apri la console Amazon EC2 e nell'area di navigazione a sinistra sotto l'intestazione Istanze seleziona Istanze.

b.  Seleziona la casella di controllo della tua istanza e scegli Stato dell'istanza, quindi seleziona Termina istanza. La tua istanza viene completamente arrestata.

Conclusioni

Complimenti, hai completato la creazione di un'istanza gestita e hai eseguito un comando da remoto utilizzando AWS Systems Manager. Per prima cosa, hai impostato le autorizzazioni corrette tramite IAM. Quindi, hai avviato un’istanza Amazon Linux che era stata preinstallata con Systems Manager Agent. Infine, hai utilizzato Esegui comando per aggiornare l’agente e per eseguire da remoto un aggiornamento yum.

Systems Manager è un'ottima scelta quando devi visualizzare i dati delle operazioni per gruppi di risorse, automatizzare le azioni operative, comprendere e controllare lo stato corrente delle tue risorse, gestire gli ambienti ibridi e mantenere sicurezza e conformità.

Questa pagina è stata utile?

Fasi successive

Leggi le testimonianze dei clienti
Scopri come Pegasystems utilizza AWS Systems Manager per gestire le istanze su larga scala con accesso SSH in questo post del blog.
Successivo »
Ulteriori informazioni sui casi d'uso AWS Systems Manager
Visita il blog degli strumenti di gestione per conoscere altri casi d'uso di Systems Manager.
Successivo »
Esplora le caratteristiche di AWS Systems Manager
Visita la pagina del prodotto Systems Manager per scoprire altre funzionalità, come l'applicazione di patch, l'inventario e l'archivio di parametri.
Successivo »