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à.
CloudWatch soluzione: Amazon EC2 health
Questa soluzione consente di configurare la raccolta delle out-of-the-box metriche utilizzando CloudWatch agenti per i carichi di lavoro in esecuzione su EC2 istanze. Inoltre, ti aiuta a configurare una dashboard preconfigurata. CloudWatch
Argomenti
Requisiti
Questa soluzione è rilevante per le seguenti condizioni:
Elaborazione: Amazon EC2
Piattaforma: Linux e macOS
Supporta fino a 500 EC2 istanze alla volta Regione AWS
Versione più recente dell'agente CloudWatch
-
Agente SSM installato sull'istanza EC2
Nota
AWS Systems Manager (agente SSM) è preinstallato su alcune Amazon Machine Images (AMIs) fornite da terze parti AWS affidabili. Se l'agente non è installato, puoi installarlo manualmente utilizzando la procedura per il tipo di sistema operativo.
Vantaggi
La soluzione offre il monitoraggio EC2 del server tramite l' CloudWatch agente, fornendo metriche aggiuntive a livello di sistema oltre alle metriche standard dello spazio dei EC2 nomi per i seguenti casi d'uso:
Rilevamento di problemi di prestazioni della CPU e di vincoli delle risorse.
Monitora l'utilizzo del disco e la capacità di archiviazione su diversi dischi in tutte le istanze. EC2
Tracciamento dei modelli di utilizzo della memoria e delle potenziali perdite di memoria.
Analizza I/O le operazioni e il loro impatto sulle prestazioni complessive.
Studio dei modelli di traffico di rete e delle potenziali anomalie.
Di seguito sono riportati i principali vantaggi della soluzione:
-
Automatizza la raccolta delle metriche per le EC2 istanze eliminando la strumentazione manuale.
-
Fornisce una dashboard consolidata e preconfigurata per le metriche di esempio. CloudWatch EC2 La dashboard gestirà automaticamente le metriche delle nuove EC2 istanze configurate utilizzando la soluzione, anche se tali metriche non esistono quando crei la dashboard per la prima volta. Consente inoltre di osservare le EC2 istanze gestite tramite gruppi di Auto Scaling.
L'immagine seguente mostra un esempio di pannello di controllo per questa soluzione.
Costi
Questa soluzione crea e utilizza risorse nel tuo account. Ti verranno addebitati i costi standard di utilizzo, inclusi i seguenti:
-
Tutte le metriche raccolte dall' CloudWatch agente vengono addebitate come metriche personalizzate. Il numero di metriche utilizzate da questa soluzione dipende dal numero di host. EC2
Il numero totale di metriche degli CloudWatch agenti dipende dalla configurazione dei dischi. Escludendo le metriche disk e diskio, la soluzione pubblica sei metriche. Il numero di metriche del disco (
disk_used_percent,disk_inodes_free) dipende dal numero di dimensionidevice/fstype/path. La metrica diskio (diskio_io_time) dipende dal numero di dimensioniname. Ad esempio, un singolo t2.micro con impostazioni predefinite in base all'esperienza della EC2 console, produce un totale di 22 parametri relativi all' CloudWatch agente (4 CPU, 12 dischi, 4 diskio, 1 memoria e 1 swap). Le metriche fornite comeAWS/EC2sono offerte gratuitamente. Un pannello di controllo personalizzato.
-
Operazioni API richieste dall'agente per pubblicare le metriche CloudWatch . Con la configurazione predefinita per questa soluzione, l' CloudWatch agente le chiama PutMetricDatauna volta al minuto. Ciò significa che l'PutMetricDataAPI verrà chiamata
30*24*60=43,200tra 30 giorni al mese per ogni EC2 host.
Per ulteriori informazioni sui CloudWatch prezzi, consulta la pagina CloudWatch dei prezzi di Amazon
Il calcolatore dei prezzi può aiutarti a stimare i costi mensili approssimativi per l'utilizzo di questa soluzione.
Per utilizzare il calcolatore dei prezzi per stimare i costi mensili della soluzione
-
Nella sezione Metriche, per Numero di metriche, inserisci
(6 + total count of disk and diskio metrics per EC2 host as described above) * number of EC2 instances configured for this solution. -
Nella APIssezione, per Numero di richieste API, inserisci
43200 * number of EC2 instances configured for this solution. -
Per impostazione predefinita, la soluzione esegue un'PutMetricDataoperazione al minuto per ogni EC2 host.
-
Nella sezione Pannello di controllo e allarmi, per Numero di pannelli di controllo, inserisci
1. -
Puoi vedere i costi mensili stimati nella parte inferiore del calcolatore dei prezzi.
CloudWatch configurazione dell'agente per questa soluzione
L' CloudWatch agente è un software che viene eseguito in modo continuo e autonomo sui server e in ambienti containerizzati. Raccoglie metriche, log e tracce dall'infrastruttura e dalle applicazioni e li invia a e X-Ray. CloudWatch
Per ulteriori informazioni sull' CloudWatch agente, consulta Raccogli metriche, log e tracce con l'agente. CloudWatch
La configurazione dell'agente in questa soluzione raccoglie una serie di metriche per aiutarti a iniziare a monitorare e osservare le tue istanze. EC2 Per impostazione predefinita, l' CloudWatch agente può essere configurato per raccogliere più EC2 metriche di quelle visualizzate nella dashboard. Per un elenco dei EC2 parametri Amazon, consulta Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS. Per informazioni sulle metriche raccolte sulle istanze di Windows, consulta Metriche raccolte dall'agente sulle istanze di Windows Server. CloudWatch
Configurazione dell'agente per EC2 la soluzione Health
Le metriche raccolte dall'agente sono definite nella configurazione dell'agente. La soluzione fornisce configurazioni degli agenti per raccogliere le metriche consigliate con dimensioni adeguate per il pannello di controllo della soluzione.
I passaggi per l'implementazione della soluzione sono descritti più avanti, nella sezione Implementazione dell'agente per la soluzione. Le informazioni seguenti consentono di comprendere come personalizzare la configurazione dell'agente per l'ambiente in uso.
Nota
Se un' EC2 istanza non fa parte di un gruppo Auto Scaling, l' CloudWatch agente elimina completamente la AutoScalingGroupName dimensione. Questo comportamento consente di evitare che i nomi delle dimensioni contengano null/empty valori. Ogni widget di metriche incluso nel pannello di controllo della soluzione cerca le metriche che includono ed escludono la dimensione AutoScalingGroup. Questo aiuta a garantire che tutte le EC2 istanze in cui viene applicata la soluzione siano supportate dalla stessa dashboard.
Se si desidera apportare modifiche alla configurazione dell'agente, è necessario applicare le stesse modifiche al pannello di controllo relativo alla soluzione. Ad esempio, se decidi di omettere la ImageId dimensione, la stessa dimensione deve essere rimossa dall'espressione di ricerca metrica utilizzata nei widget della dashboard.
Configurazione dell'agente per le istanze EC2
Utilizza la seguente configurazione dell' CloudWatch agente sulle EC2 istanze Amazon in cui vengono distribuiti i tuoi carichi di lavoro.
{ "agent": { "metrics_collection_interval": 60, "run_as_user": "cwagent" }, "metrics": { "append_dimensions": { "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}", "ImageId": "${aws:ImageId}", "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "metrics_collected": { "cpu": { "measurement": [ "cpu_usage_idle", "cpu_usage_iowait", "cpu_usage_user", "cpu_usage_system" ], "totalcpu": true }, "disk": { "measurement": [ "used_percent", "inodes_free" ], "resources": [ "*" ], "dimensions": [ ["device", "fstype", "path"] ] }, "diskio": { "measurement": [ "io_time" ], "resources": [ "*" ] }, "mem": { "measurement": [ "used_percent" ] }, "swap": { "measurement": [ "used_percent" ] } } } }
Implementazione dell'agente per la soluzione
Esistono diversi approcci per l'installazione dell' CloudWatch agente, a seconda del caso d'uso. Si consiglia di utilizzare Systems Manager per questa soluzione. Fornisce un'esperienza da console e semplifica la gestione di una flotta di server gestiti all'interno di un unico AWS account. Le istruzioni in questa sezione utilizzano Systems Manager e sono destinate a quando l' CloudWatch agente non è in esecuzione con configurazioni esistenti. È possibile verificare se l' CloudWatch agente è in esecuzione seguendo la procedura descritta in Verificare che l' CloudWatch agente sia in esecuzione.
Se stai già eseguendo l' CloudWatch agente sugli EC2 host e gestisci le configurazioni degli agenti, puoi saltare le istruzioni in questa sezione e seguire il meccanismo di distribuzione esistente per aggiornare la configurazione. Assicurati di unire la configurazione dell'agente EC2 Health con la configurazione dell'agente esistente, quindi distribuisci la configurazione unita. Se si utilizza Systems Manager per archiviare e gestire la configurazione per l' CloudWatch agente, è possibile unire la configurazione al valore del parametro esistente. Per ulteriori informazioni, vedere Gestione dei file di configurazione CloudWatch dell'agente.
Nota
L'utilizzo di Systems Manager per distribuire le seguenti configurazioni di CloudWatch agenti sostituirà o sovrascriverà qualsiasi configurazione CloudWatch dell'agente esistente sulle istanze. EC2 Puoi modificare questa configurazione per adattarla al tuo ambiente o caso d'uso specifico. Le metriche definite nella configurazione sono le minime richieste per il pannello di controllo fornito dalla soluzione.
Il processo di implementazione include i seguenti passaggi:
Passaggio 1: assicurati che le EC2 istanze di destinazione dispongano delle autorizzazioni IAM richieste.
Passaggio 2: archiviare il file di configurazione dell'agente consigliato nel Parameter Store di Systems Manager.
Passaggio 3: installa l' CloudWatch agente su una o più EC2 istanze utilizzando uno stack. CloudFormation
Passaggio 4: verificare che la configurazione dell'agente sia corretta.
Passaggio 1: assicurati che le EC2 istanze di destinazione dispongano delle autorizzazioni IAM richieste
È necessario concedere l'autorizzazione a Systems Manager per installare e configurare l' CloudWatch agente. È inoltre necessario concedere all' CloudWatch agente l'autorizzazione a pubblicare dati di telemetria dall'istanza a EC2 . CloudWatch Assicurati che il ruolo IAM associato all'istanza abbia CloudWatchAgentServerPolicyle policy di Amazon SSMManaged InstanceCore IAM allegate.
-
Dopo aver creato il ruolo, associalo alle tue EC2 istanze. Per assegnare un ruolo a un' EC2 istanza, segui i passaggi in Collegare un ruolo IAM a un'istanza.
Fase 2: Archiviare il file di configurazione CloudWatch dell'agente consigliato in Systems Manager Parameter Store
Parameter Store semplifica l'installazione dell' CloudWatch agente su un' EC2 istanza archiviando e gestendo in modo sicuro i parametri di configurazione, eliminando la necessità di valori codificati. Ciò garantisce un processo di implementazione più sicuro e flessibile, che consente una gestione centralizzata e aggiornamenti più semplici delle configurazioni su più istanze.
Utilizzate i seguenti passaggi per memorizzare il file di configurazione dell' CloudWatch agente consigliato come parametro in Parameter Store.
Per creare il file di configurazione CloudWatch dell'agente come parametro
-
Apri la AWS Systems Manager console all'indirizzo https://console.aws.amazon.com/systems-manager/
. -
Verifica che la regione selezionata sulla console sia la regione in cui sono in esecuzione le EC2 istanze.
-
Dal pannello di navigazione, scegli Gestione applicazioni, Parameter Store.
-
Per creare un nuovo parametro per la configurazione, segui questi passaggi.
Scegli Create parameter (Crea parametro).
-
Nella casella Nome, inserisci un nome che utilizzerai per fare riferimento al file di configurazione dell' CloudWatch agente nei passaggi successivi. Ad esempio,
AmazonCloudWatch-EC2Health-Configuration. (Facoltativo) Nella casella Descrizione, digita una descrizione per il parametro.
Per Livello parametri, scegli Standard.
Per Type (Tipo), scegliere String.
Per Tipo di dati, scegli testo.
-
Nella casella Valore, incolla la configurazione dell'agente JSON fornita in precedenza in questo documento.
Scegli Create parameter (Crea parametro).
Passaggio 3: installare l' CloudWatch agente e applicare la configurazione utilizzando un CloudFormation modello
È possibile utilizzare CloudFormation per installare l'agente e configurarlo in modo da utilizzare la configurazione dell' CloudWatch agente creata nei passaggi precedenti.
Per installare e configurare l' CloudWatch agente per questa soluzione
-
Apri la procedura guidata CloudFormationQuick create stack utilizzando questo link: https://console.aws.amazon.com/cloudformation/ home? #/ stacks/quickcreate?templateURL=https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw
- -1.0.0.json. agent-installation-template -
Verifica che la regione selezionata sulla console sia la regione in cui sono in esecuzione le istanze. EC2
-
Per Nome dello stack, inserisci un nome per identificare questo stack, ad esempio
CWAgentInstallationStack. -
Nella sezione Parametri, specifica quanto segue:
-
Per CloudWatchAgentConfigSSM, immettere il nome del parametro Systems Manager per la configurazione dell'agente creata in precedenza, ad esempio
AmazonCloudWatch-EC2Health-Configuration. -
Per selezionare le istanze di destinazione, sono disponibili due opzioni.
-
Per InstanceIds, specifica un elenco delimitato da virgole di un elenco di istanze IDs IDs in cui desideri installare l' CloudWatch agente con questa configurazione. Puoi elencare una singola istanza o più istanze.
-
Se esegui la distribuzione su larga scala, puoi specificare l'TagKeye la corrispondente TagValueper indirizzare tutte le EC2 istanze con questo tag e valore. Se si specifica a TagKey, è necessario specificare un corrispondente. TagValue (Per un gruppo Auto Scaling, specificare TagKeye specificare
aws:autoscaling:groupNameil nome del gruppo Auto Scaling da distribuire su tutte le TagValueistanze all'interno del gruppo Auto Scaling.)
Se specificate sia i TagKeysparametri che quelli, InstanceIdsavranno la precedenza InstanceIdse i tag verranno ignorati.
-
-
-
Esamina le impostazioni e quindi scegli Crea stack.
Se desideri prima modificare il file modello per personalizzarlo, scegli l'opzione Carica un file modello in Procedura guidata creazione stack per caricare il modello modificato. Per ulteriori informazioni, consulta Creazione di uno stack sulla console. CloudFormation È possibile utilizzare il seguente collegamento per scaricare il modello: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw- agent-installation-template -1.0.0.json
Nota
Una volta completato questo passaggio, questo parametro Systems Manager verrà associato agli CloudWatch agenti in esecuzione nelle istanze di destinazione. Ciò significa che:
-
Se il parametro Systems Manager viene eliminato, l'agente si arresta.
-
Se il parametro Systems Manager viene modificato, le modifiche alla configurazione verranno applicate automaticamente all'agente alla frequenza pianificata, che per impostazione predefinita è di 30 giorni.
-
Se si desidera applicare immediatamente le modifiche a questo parametro Systems Manager, è necessario eseguire nuovamente questo passaggio. Per ulteriori informazioni sulle associazioni, consulta Utilizzo delle associazioni in AWS Systems Manager.
Passaggio 4: verificare che la configurazione dell'agente sia corretta
È possibile verificare se l' CloudWatch agente è installato seguendo la procedura descritta in Verificare che l' CloudWatch agente sia in esecuzione. Se l' CloudWatch agente non è installato e non è in esecuzione, assicurati di aver configurato tutto correttamente.
-
Assicurati di aver assegnato un ruolo con le autorizzazioni corrette per l' EC2 istanza, come descritto inPassaggio 1: assicurati che le EC2 istanze di destinazione dispongano delle autorizzazioni IAM richieste.
-
Assicurati di aver configurato correttamente il JSON per il parametro Systems Manager. Segui la procedura descritta in Risoluzione dei problemi di installazione dell' CloudWatch agente con CloudFormation.
Per verificare che le metriche EC2 sanitarie vengano pubblicate su CloudWatch
-
Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/
. -
Scegli Metriche, Tutte le metriche.
-
Assicurati di aver selezionato la regione in cui hai distribuito la soluzione e scegli Namespace personalizzati,. CWAgent
-
Cerca le metriche menzionate nella sezione sulla configurazione degli agenti di questo documento, ad esempio
mem_used_percent. Se vedi risultati per queste metriche, significa che le metriche vengono pubblicate su. CloudWatch
Crea il pannello di controllo EC2 della soluzione Health
Questa dashboard mostra le nuove metriche emesse, mostrando le metriche EC2 Health. Questa dashboard offre una panoramica dei principali contributori sullo stato delle EC2 istanze in un'unica regione. La visualizzazione collaboratori principali mostra il widget dei principali 10 per metrica. Ciò consente di identificare i valori anomali a colpo d'occhio.
Per creare il pannello di controllo, puoi utilizzare le seguenti opzioni:
Usa la CloudWatch console per creare la dashboard.
Usa AWS CloudFormation la console per distribuire la dashboard.
Scarica l' AWS CloudFormation infrastruttura come codice e integrala come parte della tua automazione di integrazione continua (CI).
Utilizzando la CloudWatch console per creare una dashboard, puoi visualizzarne l'anteprima prima di crearla effettivamente e ricevere l'addebito.
Nota
La dashboard creata con CloudFormation questa soluzione mostra le metriche della regione in cui viene distribuita la soluzione. Assicurati di creare lo CloudFormation stack nella regione in cui sono pubblicate le EC2 metriche.
Se hai specificato uno spazio dei nomi personalizzato diverso CWAgent dalla configurazione dell' CloudWatch agente, dovrai modificare il CloudFormation modello per la dashboard per sostituirlo CWAgent con lo spazio dei nomi personalizzato che stai utilizzando.
Per creare la dashboard tramite Console CloudWatch
-
Apri la CloudWatch console Create Dashboard utilizzando questo link: https://console.aws.amazon.com/cloudwatch/home? #dashboards? LinuxMacOsHealthdashboardTemplate=EC2
&referrer=os-catalog. -
Verifica che la regione selezionata sulla console sia la regione in cui sono in esecuzione le istanze. EC2
-
Immetti il nome del pannello di controllo e scegli Crea pannello di controllo.
Per distinguere facilmente questo pannello di controllo da altri simili in Regioni diverse, consigliamo di includere il nome della Regione nel nome del pannello di controllo, ad esempio
EC2HealthDashboard-us-east-1. -
Visualizza l'anteprima del pannello di controllo e scegli Salva per creare il pannello di controllo.
Per creare la dashboard tramite CloudFormation
-
Apri la procedura guidata di creazione CloudFormation rapida dello stack utilizzando questo link: https://console.aws.amazon.com/cloudformation/ home? #/ stacks/quickcreate?templateURL=https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/EC2_Health/CloudWatch/CFN/v1.0.0/dashboard
- -1.0.0.json. template-linux-macos -
Verifica che la regione selezionata sulla console sia la regione in cui sono in esecuzione le istanze. EC2
-
Per Nome dello stack, inserisci un nome per identificare questo stack, ad esempio
EC2HealthDashboardStack. -
Nella sezione Parametri, specifica il nome della dashboard sotto il DashboardNameparametro.
Per distinguere facilmente questo pannello di controllo da altri simili in Regioni diverse, consigliamo di includere il nome della Regione nel nome del pannello di controllo, ad esempio
EC2HealthDashboard-us-east-1. -
Riconosci le capacità di accesso per le trasformazioni nella sezione Capacità e trasformazioni. Tieni presente che CloudFormation non aggiunge alcuna risorsa IAM.
-
Esamina le impostazioni e quindi scegli Crea stack.
-
Una volta che lo stato dello stack è CREATE_COMPLETE, scegli la scheda Risorse sotto lo stack creato, quindi scegli il link in ID fisico per accedere al pannello di controllo. Puoi anche accedere alla dashboard nella CloudWatch console selezionando Dashboard nel riquadro di navigazione a sinistra della console e trovando il nome della dashboard in Dashboard personalizzate.
Se desideri modificare il file modello per personalizzarlo per qualsiasi scopo, puoi utilizzare l'opzione Carica un file modello in Procedura guidata creazione stack per caricare il modello modificato. Per ulteriori informazioni, consulta Creazione di uno stack sulla console. CloudFormation Puoi usare questo link per scaricare il modello: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/EC2_Health/CloudWatch/CFN/v1.0.0/dashboard- template-linux-macos
Inizia a usare la dashboard EC2 della soluzione Health
Ecco alcune attività che puoi provare con la nuova dashboard di EC2 monitoraggio. Queste attività ti consentono di verificare che la dashboard funzioni correttamente e di fornirti un'esperienza pratica nell'utilizzarla per monitorare le istanze. EC2 Provandole, acquisirai familiarità con la navigazione nel pannello di controllo e l'interpretazione delle metriche visualizzate.
- Monitoraggio delle varie metriche di utilizzo della CPU
-
Nella sezione CPU, esamina l'array di metriche sull'utilizzo della CPU. Queste forniscono informazioni su come le risorse della CPU vengono utilizzate in diverse attività come i processi utente, le attività di sistema e le operazioni. I/O Cerca le istanze con un utilizzo costantemente elevato o modelli insoliti, che potrebbero indicare la necessità di scalare o ottimizzare.
- Analisi dell'utilizzo del disco su dispositivi diversi
-
Vai alla sezione Disco per trovare le metriche sull'utilizzo dell'archiviazione e sulla disponibilità degli inode. Queste consentono di identificare le istanze che stanno esaurendo lo spazio di archiviazione o le risorse del file system. Presta attenzione a tutte le istanze che si avvicinano a livelli elevati di utilizzo del disco, poiché ciò potrebbe causare problemi di prestazioni o interruzioni del servizio.
- Analisi dei modelli di utilizzo della memoria
-
Nella sezione Memoria, osserva il grafico che riporta l'utilizzo della memoria nel corso del tempo. Questo mostra quanta memoria disponibile viene utilizzata da ciascuna istanza. Individua modelli o picchi nell'utilizzo della memoria che potrebbero essere correlati a momenti o eventi specifici. Un elevato utilizzo della memoria potrebbe indicare la necessità, ad esempio, di ridimensionamento o ottimizzazione delle applicazioni.
- Correlazione di modelli tra le principali metriche di utilizzo
-
Confronta e monitora i modelli di utilizzo correlati. Ad esempio, un carico di lavoro che esegue un processo di rotazione dei log potrebbe presentare aumenti regolari nell'utilizzo della CPU e della memoria, seguiti da una diminuzione dell'utilizzo del disco.
- Verifica dell'attività di rete
-
Nella sezione Rete, esamina le metriche del traffico di rete in entrata e in uscita, sia in termini di volume di dati che di numero di pacchetti. Questi forniscono informazioni dettagliate sull'attività di rete per le vostre EC2 istanze. Presta attenzione sia ai picchi regolari sia a quelli anomali nel traffico di rete, così come a squilibri tra dati in ingresso e in uscita.