Configurazione della CloudWatch Agente per istanze EC2 e server locali - AWS Guida prescrittiva

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

Configurazione della CloudWatch Agente per istanze EC2 e server locali

Molte organizzazioni eseguono carichi di lavoro sia su server fisici che su macchine virtuali (VM). Questi carichi di lavoro in genere vengono eseguiti su sistemi operativi diversi che hanno requisiti di installazione e configurazione specifici per l'acquisizione e l'acquisizione di metriche.

Se si sceglie di utilizzare le istanze EC2, è possibile avere un alto livello di controllo sulla configurazione dell'istanza e del sistema operativo. Tuttavia, questo livello superiore di controllo e responsabilità richiede di monitorare e regolare le configurazioni per ottenere un utilizzo più efficiente. È possibile migliorare l'efficacia operativa stabilendo standard per la registrazione e il monitoraggio e applicando un approccio standard di installazione e configurazione per l'acquisizione e l'acquisizione di log e metriche.

Organizations che migrano o estendono i loro investimenti IT alAWSIl cloud può sfruttare CloudWatch per ottenere una soluzione unificata di registrazione e monitoraggio. CloudWatch il pricing significa che paghi in modo incrementale le metriche e i log che desideri acquisire. È inoltre possibile acquisire registri e metriche per i server locali utilizzando uno strumento simile CloudWatch processo di installazione dell'agente come quello per Amazon EC2.

Prima di iniziare l'installazione e la distribuzione di CloudWatch, assicurati di valutare le configurazioni di registrazione e metrica per i sistemi e le applicazioni. Assicurati di definire i log e le metriche standard che devi acquisire per il sistema operativo che desideri utilizzare. I registri e le metriche di sistema sono la base e lo standard per una soluzione di registrazione e monitoraggio perché sono generati dal sistema operativo e sono diversi per Linux e Windows. Sono disponibili metriche e file di registro importanti nelle distribuzioni Linux, oltre a quelli specifici di una versione o distribuzione Linux. Questa varianza si verifica anche tra diverse versioni di Windows.

Configurazione della CloudWatch agente

CloudWatch acquisisce parametri e log per Amazon EC2 e da server locali utilizzandoAgenti CloudWatch e file di configurazione dell'agenteche sono specifici per ogni sistema operativo. Si consiglia di definire la configurazione standard della metrica e dell'acquisizione dei log dell'organizzazione prima di iniziare l'installazione CloudWatch agente su larga scala nei tuoi account.

Puoi combinare più CloudWatch configurazioni agente per formare un composito CloudWatch configurazione dell'agente. Un approccio consigliato è quello di definire e dividere le configurazioni per i log e le metriche a livello di sistema e applicazione. Il seguente diagramma illustra come è possibile combinare più tipi di file di configurazione di CloudWatch per requisiti diversi per formare una configurazione composita di CloudWatch:

Più di uno CloudWatch la configurazione per esigenze diverse viene combinata per formare un composito CloudWatch configurazione

Questi log e metriche possono anche essere ulteriormente classificati e configurati per ambienti o requisiti specifici. Ad esempio, è possibile definire un sottoinsieme più piccolo di log e metriche con una precisione inferiore per gli ambienti di sviluppo non regolamentati e un set più ampio e completo con maggiore precisione per gli ambienti di produzione regolamentati.

Configurazione dell'acquisizione dei log per le istanze EC2

Per impostazione predefinita, Amazon EC2 non monitora o acquisisce i file di registro. Invece, i file di log vengono catturati e acquisiti in CloudWatch Registri del CloudWatch software Agente installato sull'istanza EC2,AWSAPI oAWS Command Line Interface(AWS CLI). Si consiglia di utilizzare CloudWatch agente in cui acquisire i file di log CloudWatch Registri per Amazon EC2 e server locali.

È possibile cercare e filtrare i log, estrarre le metriche ed eseguire l'automazione basata sull'applicazione di patch dei pattern dai file di log in CloudWatch. CloudWatch supporta opzioni di sintassi di filtro e pattern formattati in formato JSON, con log formattati in formato JSON che offrono la massima flessibilità. Per aumentare le opzioni di filtraggio e analisi, è necessario utilizzare un output di log formattato anziché testo normale.

La CloudWatch agent utilizza un file di configurazione che definisce i log e le metriche da inviare a CloudWatch. CloudWatch quindi acquisisce ogni file di registro come aflusso di loge raggruppa questi flussi di log in agruppo di registri. Ciò consente di eseguire operazioni tra i log delle istanze EC2, ad esempio la ricerca di una stringa corrispondente.

Il nome del flusso di log predefinito è lo stesso dell'ID istanza EC2 e il nome del gruppo di log predefinito è lo stesso del percorso del file di log. Il nome del flusso di log deve essere univoco all'interno del CloudWatch gruppo di log. È possibile utilizzareinstance_id,hostname,local_hostname, oppureip_addressper la sostituzione dinamica nel flusso di log e nei nomi dei gruppi di log, il che significa che è possibile utilizzare lo stesso CloudWatch file di configurazione dell'agente tra più istanze EC2.

Il seguente diagramma mostra un CloudWatch configurazione dell'agente per l'acquisizione dei registri. Il gruppo di log è definito dai file di log acquisiti e contiene flussi di log separati per ogni istanza EC2 perché{instance_id}la variabile viene utilizzata per il nome del flusso di log e gli ID di istanza EC2 sono univoci.

UN CloudWatch configurazione dell'agente per l'acquisizione dei registri.

I gruppi di log definiscono la conservazione, i tag, la protezione, i filtri delle metriche e l'ambito di ricerca per i flussi di log in essi contenuti. Il comportamento di raggruppamento predefinito basato sul nome del file di registro aiuta a cercare, creare metriche e avvisi sui dati specifici di un file di log tra istanze EC2 in un account e in una regione. È necessario valutare se è necessario un ulteriore perfezionamento del gruppo di log. Ad esempio, il tuo account potrebbe essere condiviso da più business unit e avere proprietari tecnici o operativi diversi. Ciò significa che è necessario perfezionare ulteriormente il nome del gruppo di log per riflettere la separazione e la proprietà. Questo approccio consente di concentrare l'analisi e la risoluzione dei problemi sull'istanza EC2 pertinente.

Se più ambienti utilizzano un account, è possibile separare la registrazione per i carichi di lavoro eseguiti in ciascun ambiente. Nella tabella seguente viene illustrata una convenzione di denominazione del gruppo di log che include la business unit, il progetto o l'applicazione e l'ambiente.

Nome del gruppo di log /<Business unit>/<Project or application name>/<Environment>/<Log file name>
Nome del flusso di log <EC2 instance ID>

È inoltre possibile raggruppare tutti i file di log per un'istanza EC2 nello stesso gruppo di log. Ciò semplifica la ricerca e l'analisi su un set di file di registro per una singola istanza EC2. Ciò è utile se la maggior parte delle istanze EC2 servono un'applicazione o un carico di lavoro e ogni istanza EC2 ha uno scopo specifico. Nella tabella seguente viene illustrato come è possibile formattare il nome del gruppo di log e del flusso di log per supportare questo approccio.

Nome del gruppo di log /<Business unit>/<Project or application name>/<Environment>/<EC2 instance ID>
Nome del flusso di log <Log file name>

Configurazione dell'acquisizione delle metriche per le istanze EC2

Per impostazione predefinita, le istanze EC2 sono abilitate per il monitoraggio base e aset standard di metriche(ad esempio, le metriche relative alla CPU, alla rete o allo storage) vengono automaticamente inviate a CloudWatch ogni cinque minuti. CloudWatch I parametri possono variare a seconda della famiglia di istanze, ad esempioistanze a prestazioni espandibilidispone di metriche per i crediti della CPU. Le metriche standard di Amazon EC2 sono incluse nel prezzo dell'istanza. Se abilitimonitoraggio dettagliatoPer le istanze EC2, puoi ricevere i dati in periodi di 1 minuto. La frequenza del periodo influisce sui costi di CloudWatch, quindi assicurati di valutare se è necessario un monitoraggio dettagliato per tutte o solo alcune istanze EC2. Ad esempio, è possibile abilitare il monitoraggio dettagliato dei carichi di lavoro di produzione ma utilizzare il monitoraggio di base per carichi di lavoro non di produzione.

I server locali non includono metriche predefinite per CloudWatch e deve utilizzare il plugin CloudWatch agente,AWS CLI, oppureAWSSDK per acquisire le metriche. Ciò significa che è necessario definire le metriche che si desidera acquisire (ad esempio, utilizzo della CPU) nel CloudWatch file di configurazione. Puoi creare un unico CloudWatch file di configurazione che include le metriche di istanza EC2 standard per i server locali e lo applica in aggiunta allo standard CloudWatch Configurazione di

Parametrinel CloudWatch sono definiti in modo univoco dal nome della metrica e da nessuna o più dimensioni e sono raggruppati in modo univoco in uno spazio dei nomi dei parametri. Metriche fornite da unAWSil servizio ha uno spazio dei nomi che inizia conAWS(ad esempio,AWS/EC2) e non-AWSI parametri sono considerati parametri personalizzati. Metriche che configuri e acquisisci con CloudWatch agent sono tutti considerati metriche personalizzate. Perché il numero di metriche create influisce sul tuo CloudWatch costi, è necessario valutare se ogni metrica è richiesta per tutte o solo alcune istanze EC2. Ad esempio, è possibile definire un set completo di metriche per i carichi di lavoro di produzione, ma utilizzare un sottoinsieme più piccolo di queste metriche per carichi di lavoro non di produzione.

CWAgentè lo spazio dei nomi predefinito per le metriche pubblicate dal CloudWatch agente. Analogamente ai gruppi di log, lo spazio dei nomi delle metriche organizza una serie di metriche in modo che possano essere trovate insieme in un'unica posizione. È necessario modificare lo spazio dei nomi per riflettere una business unit, un progetto o un'applicazione e un ambiente (ad esempio,/<Business unit>/<Project or application name>/<Environment>). Questo approccio è utile se più carichi di lavoro non correlati utilizzano lo stesso account. Puoi anche correlare la tua convenzione di denominazione dello spazio dei nomi con la tua CloudWatch convenzione di denominazione del gruppo di log.

Le metriche sono identificate anche dalle loro dimensioni, che consentono di analizzarle in base a un insieme di condizioni e sono le proprietà sulle quali vengono registrate le osservazioni. Amazon EC2 includeparametri separatiper le istanze EC2 conInstanceIdeAutoScalingGroupNamedimensioni. Riceverai anche le metriche conImageIdeInstanceTypedimensioni se si abilita il monitoraggio dettagliato. Ad esempio, Amazon EC2 fornisce una metrica di istanza EC2 separata per l'utilizzo della CPU conInstanceIddimensioni, oltre alla metrica di utilizzo della CPU separata per ilInstanceTypedimensione. Ciò consente di analizzare l'utilizzo della CPU per ogni istanza EC2 univoca, oltre a tutte le istanze EC2 di uno specificotipo di istanza.

L'aggiunta di più dimensioni aumenta la capacità di analisi, ma aumenta anche i costi complessivi, poiché ogni metrica e combinazione di valori di dimensione univoca si traduce in una nuova metrica. Ad esempio, se si crea una metrica per la percentuale di utilizzo della memoria rispetto alInstanceIddimension, quindi questa è una nuova metrica per ogni istanza EC2. Se l'organizzazione esegue migliaia di istanze EC2, ciò causa migliaia di metriche e si traduce in costi più elevati. Per controllare e prevedere i costi, assicurati di determinare la cardinalità della metrica e quali dimensioni aggiungono più valore. Ad esempio, è possibile definire un set completo di dimensioni per le metriche del carico di lavoro di produzione, ma un sottoinsieme più piccolo di queste dimensioni per carichi di lavoro non di produzione.

Puoi utilizzare il pluginappend_dimensionsproprietà per aggiungere dimensioni a una o tutte le metriche definite nel tuo CloudWatch Configurazione di È inoltre possibile aggiungere dinamicamente ilImageId,InstanceId,InstanceType, eAutoScalingGroupNamea tutte le metriche nella tua CloudWatch Configurazione di In alternativa, è possibile aggiungere un nome e un valore di dimensione arbitrari per metriche specifiche utilizzando ilappend_dimensionsproprietà su quella metrica. CloudWatch può anche aggregare statistiche sulle dimensioni metriche definite con ilaggregation_dimensionsproprietà.

Ad esempio, puoi aggregare la memoria utilizzata rispetto alInstanceTypedimensione per vedere la memoria media utilizzata da tutte le istanze EC2 per ogni tipo di istanza. Se utilizzit2.microistanze in esecuzione in una regione, è possibile determinare se i carichi di lavoro utilizzano ilt2.microclass sta sfruttando eccessivamente o sottoutilizzo della memoria fornita. Il sottoutilizzo potrebbe essere un segno di carichi di lavoro che utilizzano classi EC2 con una capacità di memoria non richiesta. Al contrario, l'utilizzo eccessivo potrebbe essere un segno di carichi di lavoro che utilizzano classi Amazon EC2 con memoria insufficiente.

Il seguente diagramma mostra un esempio CloudWatch configurazione delle metriche che utilizza uno spazio dei nomi personalizzato, dimensioni aggiunte e aggregazione perInstanceType.

Un campione CloudWatch configurazione delle metriche che utilizza uno spazio dei nomi personalizzato, dimensioni aggiunte e aggregazione perInstanceType.