Logging del piano di controllo di Amazon EKS - Amazon EKS

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

Logging del piano di controllo di Amazon EKS

La registrazione del piano di controllo di Amazon EKS fornisce log di audit e diagnostica direttamente dal piano di controllo di Amazon CloudWatch EKS ai log del tuo account. Questi log consentono di semplificare la protezione e l'esecuzione dei cluster. Puoi selezionare i tipi di log esatti di cui hai bisogno e i log vengono inviati come flussi di log a un gruppo per ogni cluster Amazon EKS in cui opera. CloudWatch Per ulteriori informazioni, consulta Amazon CloudWatch logging.

É possibile iniziare a utilizzare il piano di controllo Amazon EKS scegliendo quali tipi di log che si desidera abilitare per ogni cluster Amazon EKS nuovo o esistente. È possibile abilitare o disabilitare ogni tipo di log in base al cluster utilizzando la AWS Management Console AWS CLI (versione 1.16.139 o superiore) o tramite l'API Amazon EKS. Se abilitato, i log vengono inviati automaticamente dal cluster Amazon CloudWatch EKS ai log nello stesso account.

Quando si utilizza la registrazione del piano di controllo Amazon EKS, viene addebitato il prezzo Amazon EKS standard per ogni cluster eseguito. Ti vengono addebitati i costi standard di inserimento e archiviazione dei dati di CloudWatch Logs per tutti i log inviati a Logs dai tuoi cluster. CloudWatch Inoltre, vengono addebitati i costi delle risorse AWS, ad esempio istanze Amazon EC2 o volumi Amazon EBS, di cui si effettua il provisionig come parte del cluster.

Sono disponibili i seguenti tipi di log del piano di controllo (control plane) del cluster. Ogni tipo di log corrisponde a un componente del piano di controllo di Kubernetes. Per ulteriori informazioni su questi componenti, consulta Componenti di Kubernetes nella documentazione di Kubernetes.

Server API (api)

Il server API del cluster è il componente del piano di controllo (control-plane) che espone l'API di Kubernetes. Se abiliti i log del server API quando avvii il cluster o poco dopo, questi log includono i flag del server API utilizzati per l'avvio del server API. Per ulteriori informazioni, consulta kube-apiserver e la policy di audit nella documentazione di Kubernetes.

Audit (audit)

I log di audit di Kubernetes forniscono un record dei singoli utenti, amministratori o componenti di sistema che hanno interessato il cluster. Per ulteriori informazioni, consulta Controllo nella documentazione di Kubernetes.

Autenticatore (authenticator)

I log dell'autenticatore sono univoci per Amazon EKS. Questi log rappresentano il componente del piano di controllo utilizzato da Amazon EKS per l'autenticazione del controllo degli accessi basati sui ruoli (RBAC) di Kubernetes utilizzando credenziali IAM. Per ulteriori informazioni, consulta Gestione dei cluster.

Gestore controller (controllerManager)

Il gestore controller gestisce i loop di controllo principali inviati con Kubernetes. Per ulteriori informazioni, consulta kube-controller-manager nella documentazione Kubernetes.

Pianificatore (scheduler)

Il componente pianificatore gestisce quando e dove eseguire i Pods nel cluster. Per ulteriori informazioni, consulta kube-scheduler nella documentazione di Kubernetes.

Abilitazione e disabilitazione dei log del piano di controllo

Per impostazione predefinita, i log del piano di controllo del cluster non vengono inviati ai Logs. CloudWatch È necessario abilitare ogni tipo di registro singolarmente per inviare i log per il cluster. CloudWatch Le tariffe di inserimento dei log, archiviazione, archiviazione e scansione dei dati si applicano ai log del piano di controllo abilitati. Per ulteriori informazioni, consulta la pagina dei prezzi. CloudWatch

Per aggiornare la configurazione di registrazione del piano di controllo (control-plane), Amazon EKS richiede fino a cinque indirizzi IP disponibili in ciascuna sottorete. Quando abiliti un tipo di registro, i log vengono inviati con un livello di dettaglio dei log di 2.

AWS Management Console
Per abilitare o disabilitare i log del piano di controllo con la AWS Management Console
  1. Aprire la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters.

  2. Scegliere il nome del cluster per visualizzare le informazioni sul cluster.

  3. Scegli la scheda Osservabilità.

  4. Nella sezione Registrazione del piano di controllo, scegli Gestisci registrazione.

  5. Per ogni singolo tipo di log, scegli se il tipo di log deve essere attivato o disattivato. Per impostazione predefinita, i tipi di log sono disattivati.

  6. Scegliere Salva le modifiche per terminare.

AWS CLI
Per abilitare o disabilitare i log del piano di controllo con la AWS CLI
  1. Controllare la versione della AWS CLI con il seguente comando.

    aws --version

    Se la versione della AWS CLI è precedente alla 1.16.139, dovrai prima eseguire l'aggiornamento alla versione più recente. Per installare o aggiornare il AWS CLI, consultare Installazione di AWS Command Line Interface nella AWS Command Line Interface Guida per l'utente.

  2. Aggiornare la configurazione di esportazione dei log del piano di controllo del cluster con il comando della AWS CLI seguente. Sostituisci my-cluster con il nome del cluster e specifica i valori desiderati per l'accesso all'endpoint.

    Nota

    Il comando seguente invia tutti i tipi di log disponibili a CloudWatch Logs.

    aws eks update-cluster-config \ --region region-code \ --name my-cluster \ --logging '{"clusterLogging":[{"types":["api","audit","authenticator","controllerManager","scheduler"],"enabled":true}]}'

    Di seguito viene riportato un output di esempio:

    {
        "update": {
            "id": "883405c8-65c6-4758-8cee-2a7c1340a6d9",
            "status": "InProgress",
            "type": "LoggingUpdate",
            "params": [
                {
                    "type": "ClusterLogging",
                    "value": "{\"clusterLogging\":[{\"types\":[\"api\",\"audit\",\"authenticator\",\"controllerManager\",\"scheduler\"],\"enabled\":true}]}"
                }
            ],
            "createdAt": 1553271814.684,
            "errors": []
        }
    }
  3. Monitorare lo stato di aggiornamento della configurazione del log con il comando seguente utilizzando il nome del cluster e l'ID di aggiornamento restituiti dal comando precedente. L'aggiornamento è completo quando lo stato viene visualizzato come Successful.

    aws eks describe-update \ --region region-code\ --name my-cluster \ --update-id 883405c8-65c6-4758-8cee-2a7c1340a6d9

    Di seguito viene riportato un output di esempio:

    {
        "update": {
            "id": "883405c8-65c6-4758-8cee-2a7c1340a6d9",
            "status": "Successful",
            "type": "LoggingUpdate",
            "params": [
                {
                    "type": "ClusterLogging",
                    "value": "{\"clusterLogging\":[{\"types\":[\"api\",\"audit\",\"authenticator\",\"controllerManager\",\"scheduler\"],\"enabled\":true}]}"
                }
            ],
            "createdAt": 1553271814.684,
            "errors": []
        }
    }

Visualizzazione dei log del piano di controllo del cluster

Dopo aver abilitato uno qualsiasi dei tipi di log del piano di controllo per il tuo cluster Amazon EKS, puoi visualizzarli sulla CloudWatch console.

Per ulteriori informazioni sulla visualizzazione, l'analisi e la gestione dei log in CloudWatch, consulta la Amazon CloudWatch Logs User Guide.

Per visualizzare i log del piano di controllo del cluster sulla console CloudWatch
  1. Apri la CloudWatch console. Questo link apre la console e mostra i gruppi di log disponibili correnti e li filtra con il prefisso /aws/eks.

  2. Scegliere il cluster per il quale si intende visualizzare i log. Il formato del nome del gruppo di log è /aws/eks/my-cluster/cluster.

  3. Scegliere il flusso di log da visualizzare. L'elenco seguente descrive il formato del nome del flusso di log per ogni tipo di registro.

    Nota

    Al crescere della quantità di dati del flusso di log, i nomi del flusso di log vengono ruotati. Quando esistono più flussi di log per un determinato tipo di log, puoi visualizzare l'ultimo flusso di log cercando il nome del flusso di log con Last event time (Ora ultimo evento) più recente.

    • Log dei componenti del server API Kubernetes (api) - kube-apiserver-1234567890abcdef01234567890abcde

    • Controllo (audit)kube-apiserver-audit-1234567890abcdef01234567890abcde

    • Autenticatore (authenticator)authenticator-1234567890abcdef01234567890abcde

    • Gestore controller (controllerManager)kube-controller-manager-1234567890abcdef01234567890abcde

    • Pianificatore (scheduler)kube-scheduler-1234567890abcdef01234567890abcde

  4. Esamina gli eventi del flusso di log.

    Ad esempio, dovresti vedere i flag iniziali del server API del cluster quando visualizzi la parte iniziale di kube-apiserver-1234567890abcdef01234567890abcde.

    Nota

    Se i log del server API non vengono visualizzati all'inizio del flusso di log, è probabile che il file di log del server API sia stato ruotato sul server prima di abilitare la registrazione del server API sul server. I file di log che vengono ruotati prima dell'attivazione della registrazione del server API non possono essere esportati in. CloudWatch

    Tuttavia, potrai creare un nuovo cluster con la stessa versione di Kubernetes e abilitare la registrazione del server API quando si crea il cluster. I cluster con la stessa versione della piattaforma hanno gli stessi flag abilitati, quindi i flag devono corrispondere ai flag del nuovo cluster. Al termine della visualizzazione dei flag relativi al nuovo cluster CloudWatch, è possibile eliminare il nuovo cluster.