Amazon Elastic Container Service (ECS) è un servizio di orchestrazione dei container fornito da Amazon Web Services (AWS). È una soluzione sviluppata da AWS per gestire grandi cluster di container.
Perché usare ECS?
Esistono altri strumenti di orchestrazione dei container, ognuno con i propri meriti, ma ECS è fatto per AWS e fornisce un’integrazione senza soluzione di continuità nell’ecosistema AWS. Puoi usarlo con AWS Elastic Load Balancer (ELB), AWS Identity and Access Management (IAM), AWS CloudTrail, memorizzare dati persistenti in AWS Elastic Block Store o monitorarlo con AWS CloudWatch.
Puoi anche usarlo con AWS Fargate, che è un motore di calcolo serverless che fornisce container completamente gestiti.
Cos’è il monitoraggio?
Il monitoraggio è il processo di tracciamento e osservazione delle prestazioni, della disponibilità e della salute complessiva delle tue risorse, servizi e applicazioni. Questo aiuta a rilevare e risolvere i problemi prima che impattino sugli utenti, migliorare l’affidabilità e la disponibilità dell’applicazione, ottimizzare l’utilizzo delle risorse e migliorare la sicurezza delle tue applicazioni.
È solo un modo per assicurarsi che tutta l’infrastruttura funzioni come dovrebbe. Ti aiuta anche a sapere quanto traffico sta ricevendo la tua app se è un’app web o un sito web, e cosa sta realmente accadendo con essa.
Ci sono diversi aspetti del monitoraggio, alcuni dei quali includono:
-
Monitoraggio delle prestazioni: Qui, tracciamo e monitoriamo le metriche delle prestazioni dell’infrastruttura, come l’uso della CPU, il consumo di memoria, il disco, l’I/O e le reti, e così via.
-
Monitoraggio degli errori e dei log: qui, raccogliamo e analizziamo i log e i messaggi di errore.
-
Monitoraggio dell’affidabilità: ci assicuriamo che i sistemi siano in funzione.
-
Monitoraggio della sicurezza: inoltre, tracciiamo e monitoriamo gli eventi e le attività relative alla sicurezza per rispondere a minacce potenziali e vulnerabilità. Il monitoraggio può aiutarvi a rilevare cose come un attacco DoS identificando schemi insoliti nel traffico in entrata.
Cosa monitorate su ECS?
Nel monitoraggio in cloud, le metriche sono usate per monitorare la salute e le prestazioni dell’infrastruttura. Vengono utilizzate insieme alle dimensioni. Le metriche sono i punti dati raccolti e monitorati per misurare la prestazione, la salute e l’utilizzo delle risorse e servizi cloud.
Le dimensioni sono attributi e caratteristiche che aiutano a filtrare, categorizzare e fornire contesto alle metriche. Vengono rappresentate nella forma di coppie chiave/valore.
Amazon ECS fornisce varie metriche per il monitoraggio delle risorse. Alcuni di essi comprendono:
-
CPUReservation:
Questo è il percentile di unità CPU riservate dalle attività in esecuzione.
-
MemoryReservation: Percentuale di memoria riservata dalle attività in esecuzione.
-
CPUUtilization: Questo è il percentile di unità CPU utilizzate dalle attività in esecuzione.
-
MemoryUtilization: Questo è il percentile di memoria utilizzata dalle attività in esecuzione.
-
ContainerInstances: Questo è il numero di istanze del contenitore nel cluster.
-
RunningTasksCount: Il numero di attività che sono in esecuzione nel cluster in questo momento.
Amazon ECS fornisce anche dimensioni, alcune delle quali sono:
-
ContainerName: Il nome del contenitore.
-
ClusterName: Il nome del cluster ECS.
-
NomeServizio: Il nome del servizio
-
NamespaceServizio: Il namespace utilizzato per raggruppare un insieme di servizi in un cluster.
-
TipoIstanza: questo si riferisce al tipo di istanza EC2 utilizzata. Ad esempio: t2.micro, c4.large, r5.xlarge, e così via.
-
TaskID: L’identificatore univoco assegnato a ciascuna task.
In AWS ECS, è possibile monitorare le risorse a differenti livelli. Ad esempio, a livello di cluster, è possibile osservare cose come CPUUtilization, CPUReservation, MemoryUtilization e MemoryReservation. A livello di servizio, è possibile vedere cose come CPUUtilization e MemoryUtilization.
Come Monitorare ECS**?**
Puoi farlo utilizzando:
Amazon CloudWatch: Questo è un servizio di monitoraggio di AWS che ti consente di raccogliere, analizzare e visualizzare dati dai tuoi risorse AWS. Permette anche di impostare allarmi e ricevere notifiche quando viene raggiunto un limite.
Pannello di amministrazione AWS: È anche possibile visualizzare direttamente i metriche del cluster o del servizio sul pannello di amministrazione.
L’API ECS: L’API ECS fornisce accesso programmatico al servizio ECS, permettendoti di creare, modificare e monitorare cluster e risorse al di fuori di AWS.
Strumenti di terze parti: Esistono strumenti di terze parti come Datadog, Prometheus e altri che possono essere utilizzati per monitorare queste metriche. Alcuni di essi funzioneranno senza problemi con AWS, altri richiederanno l’installazione di un agente.
Per il monitoraggio di ECS su istanze EC2, hai accesso diretto alle istanze EC2 sottostanti e puoi utilizzare strumenti di monitoraggio server tradizionali per monitorare le metriche sul sistema operativo. Tuttavia, per ECS su Fargate, non hai accesso alle istanze EC2.
Come monitorare i cluster ECS con AWS CloudWatch
Con AWS CloudWatch, puoi monitorare i tuoi cluster ECS in molti modi, dalle metriche ai log fino alla configurazione di allarmi. In questa guida, ti mostrerò come utilizzare le Dashboard Automatiche per visualizzare le metriche del cluster ECS. Per farlo, segui questi passaggi:
- Dalla Console di gestione AWS, apri CloudWatch e vai su Dashboard nella barra laterale.
- Fai clic sulla scheda Dashboard Automatiche.
- Fai clic su ECS Cluster. Questo ti porterà alla dashboard dove vedrai le metriche preconfigurate per i tuoi cluster ECS.
Puoi anche espandere le singole metriche.
In conclusione
In questo articolo, hai imparato a monitorare ECS. Hai imparato le diverse metriche che puoi monitorare e come monitorarle.
Infine, hai imparato come monitorare i cluster ECS utilizzando AWS CloudWatch.
LinkedIn or follow me on X.
Si può collegare con me su LinkedIn o seguirmi su X.
Source:
https://www.freecodecamp.org/news/ecs-monitoring-explained-with-examples/