Come utilizzare la CLI AWS per gestire l'istanza EC2 [Parte 1]

Come utilizzare la CLI AWS per gestire l'istanza EC2 [Parte 1]

“AWS ti consente di gestire tutti i servizi e le risorse utilizzando l'interfaccia della riga di comando. Sebbene non si ottenga un'interfaccia utente grafica di fantasia, è ancora considerata più professionale e utile. Esistono anche alcune opzioni che non puoi utilizzare utilizzando la console GUI, ad esempio, abilitando "Elimina MFA" sul secchio S3 e generando URL pre-firmati per un oggetto S3. Prima di iniziare a gestire le tue istanze utilizzando la CLI AWS, devi configurarlo sul tuo sistema. Visita il seguente articolo per sapere come è possibile impostare le credenziali CLI AWS su Windows, Linux o Mac."

https: // linuxhint.com/configure-aws-cli-credentials/

Questo articolo discuterà le seguenti operazioni che possono essere eseguite su EC2 utilizzando l'interfaccia della riga di comando AWS.

  • Creazione di una coppia di chiavi SSH
  • Creazione del gruppo di sicurezza dell'istanza
  • Creazione dell'istanza EC2

Creazione di una coppia di chiavi SSH

Prima di creare un'istanza EC2 su AWS, dobbiamo creare una chiave SSH che verrà configurata con l'istanza EC2 per accedervi tramite SSH. Usa i seguenti comandi sulla CLI AWS per generare la coppia di tasti SSH prima di avviare un'istanza EC2.

ubuntu@ubuntu: ~ $ AWS EC2 Crea-Key-Pair \
--tasto-nome \
--Formato chiave

Qui abbiamo appena fornito il nome per la nostra coppia chiave e il formato chiave. Per il formato chiave, puoi andare PEM O ppk, A seconda del sistema operativo. IL PEM Il formato viene utilizzato principalmente per accedere al sistema operativo Linux tramite SSH, mentre il ppk Il formato viene utilizzato per accedere alla macchina Windows tramite RDP.

Il comando sopra genererà la chiave privata nell'output; Devi salvarlo immediatamente perché non puoi mai più vederlo. È necessario salvare questo output in un file con il .PEM estensione, e verrà utilizzato per SSH in istanza a cui è associato.

Creazione del gruppo di sicurezza dell'istanza

I gruppi di sicurezza aiutano a migliorare la sicurezza della rete dell'istanza EC2 consentendo di definire il traffico in entrata e in uscita per la tua istanza. Il gruppo di sicurezza funge da firewall virtuale di fronte all'istanza EC2 e può essere utilizzato per proteggere l'istanza dall'essere dirottato. È possibile specificare gli intervalli IP e altri gruppi di sicurezza come fonti e consentire il traffico su porte specifiche da queste fonti.

I gruppi di sicurezza hanno una limitazione: puoi solo creare il permettere regole e le negare Le regole non possono essere create. Inoltre, i gruppi di sicurezza sono statale, il che significa che se si imposta una regola in entrata per un IP, raggiungerà automaticamente la capacità in uscita.

Per creare un gruppo di sicurezza utilizzando l'interfaccia della riga di comando AWS, utilizzare il comando seguente nel terminale.

ubuntu@ubuntu: ~ $ aws ec2 create-security-group \
--nome del gruppo \
--descrizione <“Security Group Description”>

Nell'output, ottieni solo l'ID del gruppo di sicurezza. Il gruppo appena creato, per impostazione predefinita, non ha autorizzazioni in entrata e tutte le autorizzazioni in uscita. Puoi visualizzare i dettagli del tuo gruppo di sicurezza come descritto di seguito.

ubuntu@ubuntu: ~ $ AWS EC2 Descrivi-Security-Groups \
--Namme di gruppo

Ora per aggiungere una regola in entrata al gruppo di sicurezza, è possibile utilizzare il seguente comando.

ubuntu@ubuntu: ~ $ AWS EC2 Authorize-Security-Group-Ingress \
--Porta 22 \
--protocollo tcp \
--Gruppo-id \
--CIDR 0.0.0.0/0

In questo comando, autorizzi il tuo gruppo di sicurezza a consentire il traffico di rete da qualsiasi IP sulla porta 22. Il comando genererà il seguente output.

Ora, se eseguiamo di nuovo il Descrivi il gruppo di sicurezza comando, vedrai lì la nuova regola in entrata.

Creazione dell'istanza EC2

La creazione di un'istanza EC2 dalla CLI è un compito semplice; Ci sono un gran numero di opzioni che puoi specificare durante la creazione dell'istanza EC2, che ne vedrai uno per uno in dettaglio.

Cominciamo con la creazione dell'istanza utilizzando AWS CLI con opzioni minime. Il comando seguente può essere utilizzato sul terminale per creare l'istanza EC2 con opzioni minime.

ubuntu@ubuntu: ~ $ AWS EC2 Run-isstance \
--ID immagine \
--contare \
--Tipo di istanza \
--tasto-nome \
--ID-Group-Group

Quando esegui questo comando, otterrai un output dettagliato dell'istanza appena creata.

Come puoi vedere, ci sono più parametri specificati nel comando per creare l'istanza EC2 e quanto segue è una descrizione dettagliata di ciascun parametro.

IL ID immagine è l'ID dell'immagine della macchina Amazon o del sistema operativo che si desidera utilizzare sull'istanza. C'è un lungo elenco di immagini di macchine disponibili in AWS e puoi anche creare la tua immagine e venderla nel mercato della comunità.

IL contare L'opzione può essere utilizzata per specificare il numero di istanze EC2 che si desidera creare utilizzando l'interfaccia della riga di comando AWS con le stesse configurazioni.

IL Tipo di istanza L'opzione viene utilizzata per specificare l'allocazione delle risorse come CPU e memoria per l'istanza EC2. AWS fornisce vari tipi di istanza e puoi visualizzare tutti questi tipi di istanza visitando il seguente link.

https: // AWS.Amazon.com/ec2/istanza-tipi/

IL tasto-nome l'opzione specifica il nome della coppia di chiavi SSH che dobbiamo allegare alla nostra istanza. Questa coppia di tasti SSH può quindi essere utilizzata per accedere all'istanza EC2 in remoto. Nella sezione precedente, abbiamo discusso di come possiamo creare una coppia di tasti SSH utilizzando l'interfaccia della riga di comando AWS.

IL gruppo di sicurezza L'opzione viene utilizzata per specificare un elenco di gruppi di sicurezza che verranno allegati all'istanza EC2. AWS allegherà il gruppo di sicurezza predefinito con l'istanza EC2 se non specificato.

Parametri EC2 aggiuntivi

Abbiamo già spiegato molti parametri di istanza, ma ancora, ci sono molti altri parametri disponibili. Questa sezione discuterà dei parametri più dettagliati che ci aiutano a configurare l'istanza EC2 appena creata in base ai nostri requisiti. Questi parametri sono definiti con la creazione di istanza EC2 ma sono opzionali e non sono necessari per specificare tutto il tempo.

Zona di disponibilità

Ogni regione AWS ha una o più zone di disponibilità che sono data center separati geograficamente. Aiutano ad aumentare la disponibilità del servizio AWS in una regione; Se una zona di disponibilità in una regione diminuisce, le altre zone di disponibilità operano comunque.

Quando viene creata un'istanza EC2, AWS assegna automaticamente una zona di disponibilità ad essa, ma puoi anche specificarla in base al requisito dell'infrastruttura. La zona di disponibilità può essere specificata utilizzando il seguente parametro durante la creazione dell'istanza EC2 utilizzando l'interfaccia della riga di comando AWS.

ubuntu@ubuntu: ~ $ AWS EC2 Run-isstance \
--contare \
--Tipo di istanza \
--Posizionamento Disponibilitàzone =
--ID immagine \

Puoi vedere nell'output che l'istanza è lanciata nella nostra zona di disponibilità desiderata.

VPC e sottorete

Di solito, creiamo un VPC separato (cloud privato virtuale) e sottoreti per ogni nuova applicazione che lanciamo nel nostro account AWS. Ciò garantisce un alto livello di sicurezza e consente a tutte le risorse di comunicare senza accedere alla rete pubblica. Se non si specifica un VPC, tutte le istanze vengono lanciate nella sottorete casuale del VPC predefinito.

Durante la creazione dell'istanza EC2 utilizzando l'interfaccia della riga di comando AWS, è possibile specificare la sottorete utilizzando il -sottorete-id opzione.

ubuntu@ubuntu: ~ $ AWS EC2 Run-isstance \
--T2 di tipo istanza.micro \
--Subnet-ID Subnet-0D1721EF0B75A675B \
--Immagine-ID AMI-0CFF7528FF583BF9A \
--Conte 1

Durante la creazione dell'istanza EC2, dobbiamo solo specificare l'ID della sottorete e l'istanza EC2 viene creata automaticamente nel VPC la sottorete a cui appartiene.

Dati utente EC2

Quando creiamo una nuova istanza, è possibile specificare alcuni script o comandi che si desidera eseguire all'avvio, come l'aggiornamento del sistema o l'installazione di pacchetti software. Questa è solo una cosa facoltativa da fare e non è sempre richiesta, ma in alcuni casi può essere molto utile. Per fornire i dati dell'utente, è necessario creare uno script bash che verrà dato come parametro durante l'iniziazione dell'istanza EC2.

Quindi apri il tuo terminale e crea un semplice file di testo in esso.

ubuntu@ubuntu: ~ $ sudo nano

Scriviamo uno script per installare e avviare un server Web Apache sulla nostra istanza.

#!/Bin/Bash
sudo yum installa httpd -y
sudo systemctl avvia httpd

Ora possiamo utilizzare questo script di dati utente per eseguire una nuova istanza; Questa istanza avrà il server Apache preinstallato ed in esecuzione.

Utilizza l'IP pubblico dell'istanza EC2 appena lanciata per accedere alla porta 80 sul browser e mostrerà la pagina del server Web Apache predefinito.

Questo è il modo in cui è possibile utilizzare i dati dell'utente per installare o configurare qualcosa durante l'avvio dell'istanza.

Conclusione

AWS fornisce l'utilità della riga di comando per gestire e creare le istanze EC2. Ciò consente anche di creare risorse come chiavi SSH, gruppi di sicurezza e volumi di archiviazione. È possibile gestire i dati utente EC2, le zone di disponibilità e i sottoinsiemi con l'aiuto di CLI. La maggior parte dei professionisti del settore IT preferisce utilizzare la CLI sulla console GUI perché non è necessario passare da una scheda e pagine Web. Inoltre, la GUI continua ad aggiornare, rendendo difficile gestire tutti i parametri e le opzioni.