Utilizzo dell'interfaccia a riga di comando EB per monitorare lo stato dell'ambiente - AWS Elastic Beanstalk

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à.

Utilizzo dell'interfaccia a riga di comando EB per monitorare lo stato dell'ambiente

L'interfaccia a riga di comando di Elastic Beanstalk (CLI EB) è uno strumento a riga di comando per la gestione di ambienti AWS Elastic Beanstalk. È inoltre possibile utilizzare la CLI EB per monitorare lo stato dell'ambiente in tempo reale e con maggiore granularità rispetto al monitoraggio al momento disponibile nella console Elastic Beanstalk.

Dopo l'installazione e la configurazione della CLI EB, è possibile avviare un nuovo ambiente e distribuire il codice con il comando eb create. Se disponi già di un ambiente creato nella console Elastic Beanstalk, puoi collegare la CLI EB eseguendo eb init in una cartella di progetto e seguendo le istruzioni (la cartella del progetto può essere vuota).

Importante

Assicurati di utilizzare la versione più recente dell'interfaccia a riga di comando EB eseguendo pip install con l'opzione --upgrade:

$ sudo pip install --upgrade awsebcli

Per istruzioni complete sulla CLI EB, consulta Installa l'interfaccia a riga di comando EB.

Per utilizzare l'interfaccia a riga di comando EB per monitorare l'integrità dell'ambiente, è necessario configurare una cartella di progetto locale eseguendo eb init e seguendo le istruzioni. Per istruzioni complete, consulta Configurazione dell'interfaccia a riga di comando EB.

Se disponi già di un ambiente in esecuzione in Elastic Beanstalk e desideri utilizzare la CLI EB per monitorare il suo stato, completa questa procedura per collegarla all'ambiente esistente.

Per collegare l'interfaccia a riga di comando EB a un ambiente esistente
  1. Apri un terminale a riga di comando e vai alla cartella utente.

  2. Crea e apri una nuova cartella per l'ambiente.

  3. Esegui il comando eb init, quindi scegli l'applicazione e l'ambiente di cui desideri monitorare lo stato. Se disponi di un solo ambiente che esegue l'applicazione scelta, l'interfaccia a riga di comando EB lo selezionerà automaticamente e non è necessario scegliere l'ambiente, come mostrato nell'esempio seguente.

    ~/project$ eb init Select an application to use 1) elastic-beanstalk-example 2) [ Create new Application ] (default is 2): 1 Select the default environment. You can change this later by typing "eb use [environment_name]". 1) elasticBeanstalkEx2-env 2) elasticBeanstalkExa-env (default is 1): 1
Per monitorare lo stato dell'ambiente utilizzando l'interfaccia a riga di comando EB
  1. Apri un terminale a riga di comando e vai alla cartella del progetto.

  2. Esegui il comando eb health per visualizzare lo stato di integrità delle istanze nell'ambiente. In questo esempio ci sono cinque istanze in esecuzione in un ambiente Linux.

    ~/project $ eb health elasticBeanstalkExa-env Ok 2015-07-08 23:13:20 WebServer Ruby 2.1 (Puma) total ok warning degraded severe info pending unknown 5 5 0 0 0 0 0 0 instance-id status cause health Overall Ok i-d581497d Ok i-d481497c Ok i-136e00c0 Ok i-126e00c1 Ok i-8b2cf575 Ok instance-id r/sec %2xx %3xx %4xx %5xx p99 p90 p75 p50 p10 requests Overall 671.8 100.0 0.0 0.0 0.0 0.003 0.002 0.001 0.001 0.000 i-d581497d 143.0 1430 0 0 0 0.003 0.002 0.001 0.001 0.000 i-d481497c 128.8 1288 0 0 0 0.003 0.002 0.001 0.001 0.000 i-136e00c0 125.4 1254 0 0 0 0.004 0.002 0.001 0.001 0.000 i-126e00c1 133.4 1334 0 0 0 0.003 0.002 0.001 0.001 0.000 i-8b2cf575 141.2 1412 0 0 0 0.003 0.002 0.001 0.001 0.000 instance-id type az running load 1 load 5 user% nice% system% idle% iowait% cpu i-d581497d t2.micro 1a 12 mins 0.0 0.04 6.2 0.0 1.0 92.5 0.1 i-d481497c t2.micro 1a 12 mins 0.01 0.09 5.9 0.0 1.6 92.4 0.1 i-136e00c0 t2.micro 1b 12 mins 0.15 0.07 5.5 0.0 0.9 93.2 0.0 i-126e00c1 t2.micro 1b 12 mins 0.17 0.14 5.7 0.0 1.4 92.7 0.1 i-8b2cf575 t2.micro 1c 1 hour 0.19 0.08 6.5 0.0 1.2 92.1 0.1 instance-id status id version ago deployments i-d581497d Deployed 1 Sample Application 12 mins i-d481497c Deployed 1 Sample Application 12 mins i-136e00c0 Deployed 1 Sample Application 12 mins i-126e00c1 Deployed 1 Sample Application 12 mins i-8b2cf575 Deployed 1 Sample Application 1 hour

    In questo esempio c'è una singola istanza in esecuzione in un ambiente Windows.

    ~/project $ eb health WindowsSampleApp-env Ok 2018-05-22 17:33:19 WebServer IIS 10.0 running on 64bit Windows Server 2016/2.2.0 total ok warning degraded severe info pending unknown 1 1 0 0 0 0 0 0 instance-id status cause health Overall Ok i-065716fba0e08a351 Ok instance-id r/sec %2xx %3xx %4xx %5xx p99 p90 p75 p50 p10 requests Overall 13.7 100.0 0.0 0.0 0.0 1.403 0.970 0.710 0.413 0.079 i-065716fba0e08a351 2.4 100.0 0.0 0.0 0.0 1.102* 0.865 0.601 0.413 0.091 instance-id type az running % user time % privileged time % idle time cpu i-065716fba0e08a351 t2.large 1b 4 hours 0.2 0.1 99.7 instance-id status id version ago deployments i-065716fba0e08a351 Deployed 2 Sample Application 4 hours

Lettura dell'output

L'output visualizza il nome dell'ambiente, lo stato generale dell'ambiente e la data corrente nella parte superiore della schermata.

elasticBeanstalkExa-env Ok 2015-07-08 23:13:20

Le successive tre righe mostrano il tipo di ambiente ("WebServer" in questo caso), la configurazione (Ruby 2.1 con Puma) e l'analisi di quante istanze sono presenti in ciascuno dei sette stati.

WebServer Ruby 2.1 (Puma) total ok warning degraded severe info pending unknown 5 5 0 0 0 0 0 0

Il resto dell'output è diviso in quattro sezioni. La prima mostra lo stato e la relativa causa per l'ambiente in generale, quindi per ciascuna istanza. L'esempio seguente mostra due istanze nell'ambiente con lo stato Info e una causa che indica che è iniziata una distribuzione.

instance-id status cause health Overall Ok i-d581497d Info Performing application deployment (running for 3 seconds) i-d481497c Info Performing application deployment (running for 3 seconds) i-136e00c0 Ok i-126e00c1 Ok i-8b2cf575 Ok

Per ulteriori informazioni sugli stati di integrità e i relativi colori, consulta Colori e stati indicanti l'integrità.

La sezione requests (richieste) mostra le informazioni dai log del server Web in ciascuna istanza. In questo esempio, ogni istanza sta effettuando le richieste normalmente e non ci sono errori.

instance-id r/sec %2xx %3xx %4xx %5xx p99 p90 p75 p50 p10 requests Overall 13.7 100.0 0.0 0.0 0.0 1.403 0.970 0.710 0.413 0.079 i-d581497d 2.4 100.0 0.0 0.0 0.0 1.102* 0.865 0.601 0.413 0.091 i-d481497c 2.7 100.0 0.0 0.0 0.0 0.842* 0.788 0.480 0.305 0.062 i-136e00c0 4.1 100.0 0.0 0.0 0.0 1.520* 1.088 0.883 0.524 0.104 i-126e00c1 2.2 100.0 0.0 0.0 0.0 1.334* 0.791 0.760 0.344 0.197 i-8b2cf575 2.3 100.0 0.0 0.0 0.0 1.162* 0.867 0.698 0.477 0.076

La sezione cpu mostra i parametri del sistema operativo per ogni istanza. L'output cambia in base al sistema operativo. Di seguito è riportato l'output per gli ambienti Linux.

instance-id type az running load 1 load 5 user% nice% system% idle% iowait% cpu i-d581497d t2.micro 1a 12 mins 0.0 0.03 0.2 0.0 0.0 99.7 0.1 i-d481497c t2.micro 1a 12 mins 0.0 0.03 0.3 0.0 0.0 99.7 0.0 i-136e00c0 t2.micro 1b 12 mins 0.0 0.04 0.1 0.0 0.0 99.9 0.0 i-126e00c1 t2.micro 1b 12 mins 0.01 0.04 0.2 0.0 0.0 99.7 0.1 i-8b2cf575 t2.micro 1c 1 hour 0.0 0.01 0.2 0.0 0.1 99.6 0.1

Di seguito è riportato l'output per gli ambienti Windows.

instance-id type az running % user time % privileged time % idle time i-065716fba0e08a351 t2.large 1b 4 hours 0.2 0.0 99.8

Per ulteriori informazioni sui parametri del server e del sistema operativo, consulta Parametri dell'istanza.

La sezione finale, deployments (distribuzioni), mostra lo stato della distribuzione di ciascuna istanza. Se una distribuzione in sequenza ha esito negativo, è possibile utilizzare l'ID della distribuzione e l'etichetta dello stato e della versione per identificare le istanze dell'ambiente che eseguono la versione errata.

instance-id status id version ago deployments i-d581497d Deployed 1 Sample Application 12 mins i-d481497c Deployed 1 Sample Application 12 mins i-136e00c0 Deployed 1 Sample Application 12 mins i-126e00c1 Deployed 1 Sample Application 12 mins i-8b2cf575 Deployed 1 Sample Application 1 hour

Visualizzazione dello stato Interattivo

Il comando eb health mostra uno snapshot dello stato dell'ambiente. Per aggiornare le informazioni visualizzate ogni 10 secondi, utilizza l'opzione --refresh.

$ eb health --refresh elasticBeanstalkExa-env Ok 2015-07-09 22:10:04 (1 secs) WebServer Ruby 2.1 (Puma) total ok warning degraded severe info pending unknown 5 5 0 0 0 0 0 0 instance-id status cause health Overall Ok i-bb65c145 Ok Application deployment completed 35 seconds ago and took 26 seconds i-ba65c144 Ok Application deployment completed 17 seconds ago and took 25 seconds i-f6a2d525 Ok Application deployment completed 53 seconds ago and took 26 seconds i-e8a2d53b Ok Application deployment completed 32 seconds ago and took 31 seconds i-e81cca40 Ok instance-id r/sec %2xx %3xx %4xx %5xx p99 p90 p75 p50 p10 requests Overall 671.8 100.0 0.0 0.0 0.0 0.003 0.002 0.001 0.001 0.000 i-bb65c145 143.0 1430 0 0 0 0.003 0.002 0.001 0.001 0.000 i-ba65c144 128.8 1288 0 0 0 0.003 0.002 0.001 0.001 0.000 i-f6a2d525 125.4 1254 0 0 0 0.004 0.002 0.001 0.001 0.000 i-e8a2d53b 133.4 1334 0 0 0 0.003 0.002 0.001 0.001 0.000 i-e81cca40 141.2 1412 0 0 0 0.003 0.002 0.001 0.001 0.000 instance-id type az running load 1 load 5 user% nice% system% idle% iowait% cpu i-bb65c145 t2.micro 1a 12 mins 0.0 0.03 0.2 0.0 0.0 99.7 0.1 i-ba65c144 t2.micro 1a 12 mins 0.0 0.03 0.3 0.0 0.0 99.7 0.0 i-f6a2d525 t2.micro 1b 12 mins 0.0 0.04 0.1 0.0 0.0 99.9 0.0 i-e8a2d53b t2.micro 1b 12 mins 0.01 0.04 0.2 0.0 0.0 99.7 0.1 i-e81cca40 t2.micro 1c 1 hour 0.0 0.01 0.2 0.0 0.1 99.6 0.1 instance-id status id version ago deployments i-bb65c145 Deployed 1 Sample Application 12 mins i-ba65c144 Deployed 1 Sample Application 12 mins i-f6a2d525 Deployed 1 Sample Application 12 mins i-e8a2d53b Deployed 1 Sample Application 12 mins i-e81cca40 Deployed 1 Sample Application 1 hour (Commands: Help,Quit, ▼ ▲ ◄ ►)

Questo esempio illustra un ambiente che ha di recente avuto un ridimensionamento da una a cinque istanze. L'operazione di ridimensionamento è riuscita e tutte le istanze stanno superando i controlli dello stato e sono pronte per accettare le richieste. In modalità interattiva, lo stato si aggiorna ogni 10 secondi. Nell'angolo in alto a destra, un timer segna il tempo fino al prossimo aggiornamento.

Nell'angolo in basso a sinistra, il report visualizza un elenco di opzioni. Per uscire dalla modalità interattiva, premi Q. Per scorrere, premi i tasti freccia. Per consultare un elenco di comandi aggiuntivi, premi H.

Opzioni di visualizzazione dello stato Interattivo

Durante la visualizzazione interattiva dello stato dell'ambiente, è possibile utilizzare la tastiera per regolare la visualizzazione e chiedere a Elastic Beanstalk di sostituire o riavviare le singole istanze. Per visualizzare l'elenco dei comandi disponibili durante la visualizzazione del report di integrità in modalità interattiva, premi H.

up,down,home,end Scroll vertically left,right Scroll horizontally F Freeze/unfreeze data X Replace instance B Reboot instance <,> Move sort column left/right -,+ Sort order descending/ascending P Save health snapshot data file Z Toggle color/mono mode Q Quit this program Views 1 All tables/split view 2 Status Table 3 Request Summary Table 4 CPU%/Load Table H This help menu (press Q or ESC to return)