

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

# Accesso ad Amazon EKS
<a name="logging"></a>

La registrazione è un aspetto fondamentale della gestione e della manutenzione delle applicazioni eseguite su Amazon EKS. Le pratiche di registrazione efficaci negli ambienti Amazon EKS aiutano gli sviluppatori, i team operativi e gli amministratori di sistema a ottenere informazioni preziose sul comportamento, le prestazioni e lo stato delle loro applicazioni containerizzate e dell'infrastruttura sottostante.

L'implementazione di una solida strategia di registrazione in Amazon EKS è essenziale per diversi motivi:
+ **Risoluzione dei problemi**: i log aiutano a identificare e diagnosticare rapidamente i problemi, riducendo i tempi di inattività e migliorando l'affidabilità complessiva del sistema.
+ **Conformità**: molti settori richiedono una registrazione completa per scopi di controllo e regolamentazione.
+ **Sicurezza**: l'analisi dei log può aiutarvi a rilevare e indagare su potenziali minacce o violazioni della sicurezza.
+ **Ottimizzazione delle prestazioni**: i log forniscono informazioni dettagliate sulle prestazioni delle applicazioni e dei sistemi, in modo da identificare i punti deboli e ottimizzare l'utilizzo delle risorse.
+ **Monitoraggio e avvisi**: i dati di registro possono essere utilizzati per configurare sistemi di monitoraggio e attivare avvisi per eventi o condizioni specifici.

**Topics**
+ [Tipi di registrazione](log-types.md)
+ [Best practice](logging-best-practices.md)
+ [Considerazioni importanti](logging-considerations.md)

# Tipi di registrazione in Amazon EKS
<a name="log-types"></a>

In Amazon EKS, la registrazione prevede l'acquisizione, l'archiviazione e l'analisi di vari tipi di dati di registro generati da diversi componenti del cluster [Kubernetes](https://kubernetes.io/), tra cui:
+ **Log di sistema**: informazioni sulle istanze o sui [nodi Amazon Elastic Compute Cloud (Amazon EC2](https://aws.amazon.com/pm/ec2/)) sottostanti [AWS Fargate](https://aws.amazon.com/fargate/)
+ **Log dei componenti Kubernetes: dati provenienti dai componenti principali di Kubernetes come** [https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/)
+ **Log di runtime del contenitore**[: informazioni dal runtime del contenitore, come [Docker](https://www.docker.com/blog/containerd-vs-docker/) o containerd](https://containerd.io/)
+ **Log delle applicazioni: output da applicazioni containerizzate**

Per gestire efficacemente i log nel tuo ambiente Amazon EKS, in genere utilizzi una combinazione di strumenti di Servizi AWS terze parti e best practice. Ciò potrebbe includere l'utilizzo di [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/), [Fluent Bit](https://fluentbit.io/), [Elasticsearch](https://www.elastic.co/elasticsearch), [Kibana](https://www.elastic.co/kibana) e altri strumenti di registrazione e analisi per raccogliere, archiviare e visualizzare i dati di registro.

Le seguenti sezioni esplorano vari aspetti della registrazione in Amazon EKS, tra cui best practice, strumenti e tecniche per implementare una strategia di registrazione completa nei cluster Kubernetes su. AWS

## Registri di sistema
<a name="system-logs"></a>

La registrazione per le istanze EC2 o i nodi Fargate sottostanti in Amazon EKS prevede approcci diversi a seconda del tipo di nodo.

Per implementare la registrazione per le istanze EC2 in Amazon EKS, puoi utilizzare i seguenti strumenti:
+ [CloudWatch agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-on-EC2-Instance.html): installa e configura l' CloudWatch agente sulle tue istanze EC2. Configuralo per raccogliere log di sistema come e. `/var/log/messages` `/var/log/secure` È possibile utilizzare script di dati utente o strumenti di gestione della configurazione per automatizzare questo processo.
+ [Fluent Bit](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-setup-logs-FluentBit.html): implementa Fluent Bit come strumento DaemonSet per raccogliere i log da tutti i nodi. Configuralo per inoltrare i log a Logs o ad altri sistemi di [CloudWatch registrazione centralizzati.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)
+ [Container Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContainerInsights.html): abilita Container Insights nel tuo cluster EKS per raccogliere automaticamente metriche e log dalle istanze EC2.
+ Script personalizzati: sviluppa script personalizzati per raccogliere log specifici e inviarli alla destinazione di registrazione preferita.
+ Agente [SSM: utilizza Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) (SSM AWS Systems Manager Agent) per raccogliere e inoltrare i log ai log. CloudWatch 

Per implementare la registrazione per i nodi Fargate in Amazon EKS, utilizza questi strumenti:
+ [Registrazione Fargate:](https://docs.aws.amazon.com/eks/latest/userguide/fargate-logging.html) Fargate raccoglie e registra automaticamente dai contenitori`stdout`. `stderr` Configura il tuo profilo Fargate per inviare questi log a Logs. CloudWatch 
+ [Fluent Bit for Fargate](https://github.com/aws/aws-for-fluent-bit) AWS : fornisce un'immagine Fluent Bit specifica per la registrazione Fargate. Utilizzalo come contenitore laterale nei tuoi pod Fargate per raccogliere e inoltrare i registri.
+ [Container Insights for Fargate](https://aws-otel.github.io/docs/getting-started/container-insights/eks-fargate): abilita Container Insights per raccogliere metriche e log dai nodi Fargate.

## Registri dei componenti Kubernetes
<a name="kubernetes-logs"></a>

La raccolta dei log dai componenti di Kubernetes come il server API, lo scheduler e il controller manager in Amazon EKS richiede un approccio leggermente diverso rispetto alla registrazione delle applicazioni. Questi componenti funzionano come parte del piano di controllo di Amazon EKS, gestito da AWS. Ecco come raccogliere e accedere a questi log:
+ **Abilita la registrazione del piano di controllo:** puoi abilitare la registrazione del piano di controllo per il tuo cluster EKS tramite strumenti Console di gestione AWS, [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) o Infrastructure as code (IaC) come Terraform. [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) Quando abiliti la registrazione del piano di controllo, i log vengono inviati ad Amazon CloudWatch Logs. Puoi visualizzarli nella CloudWatch console nel gruppo di log. `/aws/eks/<cluster-name>/cluster` All'interno di questo gruppo di log, ogni componente del piano di controllo ha il proprio flusso di log come segue:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/amazon-eks-observability-best-practices/log-types.html)

  Per visualizzare i log di un componente specifico, vai al gruppo di log del cluster e filtra in base al nome del flusso di log di destinazione.
+ **Usa CloudWatch Logs Insights**: puoi usare [CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) per eseguire query complesse sui tuoi log.
+ **Esportazione dei log su Amazon** [S3: per lo storage a lungo termine o per ulteriori analisi, puoi esportare i log in Amazon Simple [Storage](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) Service (Amazon S3).](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)
+ **Utilizza strumenti di terze parti**: puoi utilizzare strumenti come Fluent Bit per raccogliere questi log e inoltrarli ad altri sistemi di registrazione come Elasticsearch o Splunk.
+ **Utilizzo AWS CloudTrail**: il [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)servizio può fornire ulteriori informazioni sulle chiamate API effettuate al cluster EKS.

## Registri di runtime del contenitore
<a name="runtime-logs"></a>

La registrazione dei log di runtime dei container in Amazon EKS implica l'acquisizione e la gestione dei log dal runtime del contenitore, che in genere è per Amazon EKS. `containerd` Ecco come puoi affrontare la registrazione dei log di runtime dei container in Amazon EKS:
+ Accedi direttamente ai log sui nodi Amazon EC2. Per i nodi EC2 autogestiti, puoi accedere direttamente ai log di runtime dei container sull'host da queste posizioni:
  + `containerd`registri: `/var/log/containers/`
  + Log Docker (se stai usando il runtime Docker): `/var/log/docker.log`
+ Usa un file DaemonSet per la raccolta dei log.
+ Implementa un agente di raccolta dei log (come Fluent Bit) DaemonSet per raccogliere i log da tutti i nodi.
+ Configura l' CloudWatch agente per raccogliere i log di runtime dei contenitori.
+ Abilita Container Insights per raccogliere le metriche e i log di runtime dei container.
+ Usa Fargate. Per i nodi Fargate, i log di runtime dei container vengono raccolti automaticamente e sono accessibili tramite Logs. CloudWatch 
+ Implementa soluzioni di registrazione personalizzate utilizzando strumenti come Fluent Bit o Logstash. Imposta [CloudWatchallarmi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) o usa strumenti come Prometheus per monitorare modelli o problemi specifici nei log di runtime dei container. Prendi in considerazione l'utilizzo di soluzioni di registrazione di terze parti che si integrano bene con Kubernetes e Amazon EKS, come Datadog, Splunk o Elastic Stack (ELK Stack). Utilizza gli strumenti di aggregazione dei log per raccogliere i log da più fonti e inoltrarli a un sistema di registrazione centralizzato.

## Log di applicazioni
<a name="app-logs"></a>

I log delle applicazioni in Amazon EKS sono fondamentali per la manutenzione e la risoluzione dei problemi delle applicazioni. Per implementare la registrazione delle applicazioni in Amazon EKS, puoi scegliere tra queste opzioni:
+ Scrivi i log su`stdout`/`stderr`: il modo più semplice e nativo di Kubernetes per gestire i log delle applicazioni consiste nel scriverli su and. `stdout` `stderr` Kubernetes acquisisce automaticamente questi flussi.
+ Implementa l'aggregazione dei log: utilizza un aggregatore di log come Fluent Bit per raccogliere i log da tutti i tuoi pod.
+ Configura il routing dei log: configura l'aggregatore di log per indirizzare i log verso la destinazione desiderata (come Logs o Elasticsearch). CloudWatch 
+ Usa CloudWatch Container Insights: abilita Container Insights per la registrazione e il monitoraggio completi.

# Le migliori pratiche per la registrazione in Amazon EKS
<a name="logging-best-practices"></a>

Le seguenti best practice aiutano a creare un sistema di registrazione robusto, scalabile ed efficiente per il tuo ambiente Amazon EKS e forniscono una migliore risoluzione dei problemi, il monitoraggio e la gestione complessiva dei tuoi cluster Kubernetes.
+ **Centralizza la raccolta dei log**: utilizza una soluzione di registrazione centralizzata come CloudWatch Logs, Elasticsearch o un servizio di terze parti per aggregare i log di tutti i componenti. Ciò fornisce un unico punto di accesso per l'analisi dei log e semplifica la gestione.
+ **Implementa la registrazione strutturata**: utilizza formati di log strutturati come JSON in modo che i log possano essere analizzati e ricercati più facilmente. Includi metadati pertinenti come timestamp, livelli di registro e identificatori di origine.
+ **Usa i livelli di registro in modo appropriato**: implementa i livelli di registro appropriati (come`DEBUG`, `INFO``WARN`, e`ERROR`) nelle tue applicazioni. Configura gli ambienti di produzione in modo che registrino i livelli appropriati per evitare un numero eccessivo di registrazioni.
+ **Abilita la registrazione dei container**: configura i contenitori per accedere a `stdout` e. `stderr` Ciò consente a Kubernetes di acquisire e inoltrare questi log alla soluzione di registrazione prescelta.
+ **Abilita la registrazione delle applicazioni**: configura le applicazioni per scrivere i log su `stdout` e `stderr` anziché scrivere nei file di registro. Ciò segue la [metodologia delle app a 12 fattori](https://12factor.net/logs) e si allinea alle migliori pratiche native del cloud.
+ **Usa Kubernetes DaemonSets per la raccolta dei log: implementa agenti di raccolta** dei log (come Fluent Bit) DaemonSets per assicurarti che vengano eseguiti su ogni nodo del cluster.
+ **Implementa politiche di conservazione**: definisci e applica le politiche di conservazione dei log per rispettare le normative e gestire i costi di archiviazione.
+ **Dati di registro sicuri**: crittografa i log in transito e a riposo. Implementa controlli di accesso per limitare chi può visualizzare e gestire i log.
+ **Monitora l'inserimento dei log**: imposta avvisi per errori o ritardi nell'inserimento dei log per garantire la registrazione continua.
+ **Usa annotazioni ed etichette Kubernetes: utilizza le annotazioni e le etichette** Kubernetes per aggiungere metadati ai log, per migliorare la ricercabilità e il filtraggio.
+ **Implementa il tracciamento distribuito: utilizza strumenti di tracciamento** distribuito come o Jaeger per correlare i log tra i microservizi. [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
+ **Ottimizza il volume dei log**: sii selettivo su ciò che registri per evitare costi inutili e problemi di prestazioni. Utilizza il campionamento per log ad alto volume e di basso valore.
+ **Implementa l'aggregazione dei log**: utilizza strumenti come Logstash per aggregare i log provenienti da più fonti prima di inviarli al sistema di registrazione centrale.
+ **Utilizza Servizi AWS quando possibile**: servizi come CloudWatch Logs e Container Insights offrono una perfetta integrazione con altri. Servizi AWS
+ **Implementa l'analisi e la visualizzazione dei log**: utilizza strumenti come CloudWatch Logs Insights, Elasticsearch con Kibana o soluzioni di terze parti per l'analisi e la visualizzazione dei log.
+ **Implementa l'analisi automatizzata dei log**: utilizza strumenti di apprendimento automatico e basati sull'intelligenza artificiale per rilevare automaticamente anomalie e modelli nei log.
+ **Documenta la tua strategia di registrazione**: mantieni una documentazione chiara dell'architettura, delle pratiche e degli strumenti di registrazione per il tuo team.

# Considerazioni importanti per la registrazione in Amazon EKS
<a name="logging-considerations"></a>

Questa sezione illustra importanti considerazioni da tenere a mente quando si implementa la registrazione in Amazon EKS.
+ **Impatto sulle prestazioni**: una registrazione eccessiva può influire sulle prestazioni dell'applicazione. Prestate attenzione al volume e alla frequenza dei log generati.
+ **Gestione dei costi**: l'archiviazione e l'elaborazione dei log possono comportare costi significativi, soprattutto su larga scala. Implementa politiche di conservazione dei log e valuta la possibilità di utilizzare l'aggregazione dei log per ridurre i costi.
+ **Sicurezza e conformità**: assicurati che i log non contengano informazioni sensibili come password o dati personali. Implementa la crittografia per i log in transito e a riposo. Prendi in considerazione requisiti di conformità come il Regolamento generale sulla protezione dei dati (GDPR) o l'Health Insurance Portability and Accountability Act (HIPAA) quando gestisci i log.
+ **Scalabilità**: assicurati che la tua soluzione di registrazione sia scalabile in base alle dimensioni del cluster e al volume di log. Prendi in considerazione l'utilizzo del buffering e del batching per la trasmissione dei log.
+ **Conservazione dei log**: definisci e implementa periodi di conservazione dei log appropriati. Bilancia i requisiti di conformità con i costi di storage.
+ **Controllo degli accessi**: implementa ruoli e policy AWS Identity and Access Management (IAM) adeguati per l'accesso ai log. Segui il [principio del privilegio minimo](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_permissions_least_privileges.html) per la gestione dei log.
+ **Coerenza dei log**: utilizza formati di registro coerenti tra diverse applicazioni e servizi. Utilizza la registrazione strutturata per semplificare l'analisi e l'analisi.
+ **Sincronizzazione dell'ora**: sincronizza l'ora su tutti i nodi per ottenere timestamp coerenti nei log.
+ **Allocazione delle risorse**: alloca le risorse appropriate (come CPU e memoria) per gli agenti di registrazione. Monitora l'utilizzo delle risorse dei componenti di registrazione.
+ **Considerazioni su Fargate:** Fargate dispone di meccanismi di registrazione specifici che differiscono dai nodi basati su EC2. Comprendi i limiti e le funzionalità della registrazione [Fargate](https://docs.aws.amazon.com/eks/latest/userguide/fargate-logging.html).
+ **Cluster multi-tenant: negli ambienti multi-tenant, assicuratevi che i** log siano isolati correttamente tra i tenant.
+ Analisi e **analisi dei log: considera gli strumenti e le competenze necessari per un'analisi** efficace dei log. Implementa l'analisi dei log per l'estrazione strutturata dei dati.
+ **Monitoraggio del sistema di registrazione**: imposta il monitoraggio per l'infrastruttura di registrazione stessa. Genera avvisi per la registrazione di errori o arretrati del sistema.
+ **Impatto sulla rete**: fate attenzione alla larghezza di banda di rete utilizzata dalla trasmissione dei log. Prendi in considerazione l'utilizzo della compressione per i dati di registro.
+ Eventi **Kubernetes: non trascurare gli eventi** Kubernetes come fonte di informazioni importanti.
+ **Registrazione del piano di controllo**: comprendi le implicazioni e i costi dell'abilitazione della registrazione del piano di controllo.
+ **Funzionalità di debug**: assicurati che la tua soluzione di registrazione consenta di eseguire facilmente il debug e la risoluzione dei problemi.
+ **Integrazione con gli strumenti esistenti**: valuta in che modo la tua soluzione di registrazione Amazon EKS si integra con gli strumenti di monitoraggio e avviso esistenti.
+ **Test: verifica** regolarmente la configurazione di registrazione, soprattutto dopo gli aggiornamenti del cluster.
+ **Documentazione**: mantieni una documentazione chiara dell'architettura e delle pratiche di registrazione.
+ **Latenza di aggregazione dei log**: fai attenzione a qualsiasi latenza nell'aggregazione dei log e a come potrebbe influire sul monitoraggio in tempo reale.