Installa gli agenti per le istanze Kubernetes autogestite - Amazon CloudWatch

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

Installa gli agenti per le istanze Kubernetes autogestite

Segui i passaggi di questa sezione per installare gli agenti Network Flow Monitor per i carichi di lavoro su cluster Kubernetes autogestiti. Dopo aver completato i passaggi, i pod degli agenti di Network Flow Monitor verranno eseguiti su tutti i nodi del cluster Kubernetes autogestiti.

Se utilizzi Amazon Elastic Kubernetes Service (Amazon EKS), i passaggi di installazione da seguire sono riportati nella sezione seguente:. Installa il componente aggiuntivo EKS AWS Network Flow Monitor Agent

Prima di iniziare

Prima di iniziare il processo di installazione, segui i passaggi di questa sezione per assicurarti che il tuo ambiente sia configurato per installare correttamente gli agenti sui cluster Kubernetes corretti.

Assicurati che la tua versione di Kubernetes sia supportata

L'installazione dell'agente Network Flow Monitor richiede la versione 1.25 di Kubernetes o una versione più recente.

Assicurati di aver installato gli strumenti necessari

Gli script utilizzati per questo processo di installazione richiedono l'installazione dei seguenti strumenti. Se gli strumenti non sono già installati, consulta i collegamenti forniti per ulteriori informazioni.

Assicuratevi di disporre di variabili di ambiente valide e configurate correttamente KubeConfig

L'installazione dell'agente Network Flow Monitor utilizza lo strumento Helm package manager, che utilizza la variabile kubeconfig$HELM_KUBECONTEXT, per determinare i cluster Kubernetes di destinazione con cui lavorare. Inoltre, tieni presente che quando Helm esegue gli script di installazione, per impostazione predefinita, fa riferimento al file standard. ~/.kube/config È possibile modificare le variabili dell'ambiente di configurazione, utilizzare un file di configurazione diverso (mediante aggiornamento$KUBECONFIG) o definire il cluster di destinazione con cui si desidera lavorare (aggiornando). $HELM_KUBECONTEXT

Crea uno spazio dei nomi Kubernetes di Network Flow Monitor

L'applicazione Kubernetes dell'agente Network Flow Monitor installa le proprie risorse in uno spazio dei nomi specifico. Lo spazio dei nomi deve esistere affinché l'installazione abbia successo. Per garantire che lo spazio dei nomi richiesto sia attivo, puoi effettuare una delle seguenti operazioni:

  • Create lo spazio dei nomi predefinito prima di iniziareamazon-network-flow-monitor.

  • Crea uno spazio dei nomi diverso, quindi definiscilo nella variabile di $NAMESPACE ambiente quando esegui l'installazione per creare obiettivi.

Scarica i grafici Helm e installa gli agenti

È possibile scaricare i grafici Helm dell'agente Network Flow Monitor dall'archivio AWS pubblico utilizzando il comando seguente. Assicurati di autenticarti prima con il tuo account. GitHub

git clone https://github.com/aws/network-flow-monitor-agent.git

Nella ./charts/amazon-network-flow-monitor-agent directory, puoi trovare i grafici Helm e Makefile dell'agente Network Flow Monitor che contengono le destinazioni make di installazione utilizzate per l'installazione degli agenti. Gli agenti per Network Flow Monitor vengono installati utilizzando il seguente target Makefile: helm/install/customer

Se lo desideri, puoi personalizzare l'installazione, ad esempio, effettuando le seguenti operazioni:

# Overwrite the kubeconfig files to use KUBECONFIG=<MY_KUBECONFIG_ABS_PATH> make helm/install/customer # Overwrite the Kubernetes namespace to use NAMESPACE=<MY_K8S_NAMESPACE> make helm/install/customer

Per verificare che i pod delle applicazioni Kubernetes per gli agenti Network Flow Monitor siano stati creati e distribuiti correttamente, verifica che lo stato sia. Running Puoi controllare lo stato degli agenti eseguendo il seguente comando: kubectl get pods -o wide -A | grep amazon-network-flow-monitor

Configura le autorizzazioni per consentire agli agenti di fornire metriche

Dopo aver installato gli agenti per Network Flow Monitor, è necessario consentire agli agenti di inviare le metriche di rete all'ingestione di Network Flow Monitor. APIs Gli agenti in Network Flow Monitor devono disporre dell'autorizzazione per accedere all'ingestione di Network Flow Monitor APIs in modo da poter fornire le metriche del flusso di rete che hanno raccolto per ogni istanza. Concedi questo accesso implementando i ruoli IAM per gli account di servizio (IRSA).

Per consentire agli agenti di fornire metriche di rete a Network Flow Monitor, segui i passaggi di questa sezione.

  1. Implementa i ruoli IAM per gli account di servizio

    I ruoli IAM per gli account di servizio offrono la possibilità di gestire le credenziali per le applicazioni, in modo simile al modo in cui i profili di EC2 istanza Amazon forniscono le credenziali alle istanze Amazon EC2 . L'implementazione di IRSA è il modo consigliato per fornire tutte le autorizzazioni richieste dagli agenti di Network Flow Monitor per accedere correttamente all'ingestione di Network Flow Monitor. APIs Per ulteriori informazioni, consulta i ruoli IAM per gli account di servizio nella Amazon EKS User Guide.

    Quando configuri IRSA per gli agenti di Network Flow Monitor, utilizza le seguenti informazioni:

    • ServiceAccount: Quando definisci la policy di fiducia dei ruoli IAMServiceAccount, specifica aws-network-flow-monitor-agent-service-account for.

    • Namespace: pernamespace, specificare. amazon-network-flow-monitor

    • Distribuzione temporanea delle credenziali: quando configuri le autorizzazioni dopo aver distribuito i pod degli agenti di Network Flow Monitor e averli aggiornati ServiceAccount con il tuo ruolo IAM, Kubernetes non distribuisce le credenziali del ruolo IAM. Per garantire che gli agenti di Network Flow Monitor acquisiscano le credenziali del ruolo IAM che hai specificato, devi eseguire un riavvio di. DaemonSet Ad esempio, usa un comando come il seguente:

      kubectl rollout restart daemonset -n amazon-network-flow-monitor aws-network-flow-monitor-agent

  2. Verificare che l'agente Network Flow Monitor stia accedendo correttamente all'ingestione di Network Flow Monitor APIs

    È possibile verificare che la configurazione per gli agenti funzioni correttamente utilizzando i log HTTP 200 per i pod degli agenti di Network Flow Monitor. Innanzitutto, cerca un pod di agenti Network Flow Monitor, quindi cerca nei file di registro per trovare le richieste HTTP 200 riuscite. Ad esempio, puoi eseguire le operazioni seguenti:

    1. Individuate il nome del Pod dell'agente Network Flow Monitor. Ad esempio, puoi usare il seguente comando:

      RANDOM_AGENT_POD_NAME=$(kubectl get pods -o wide -A | grep amazon-network-flow-monitor | grep Running | head -n 1 | tr -s ' ' | cut -d " " -f 2)
    2. Recupera tutti i log HTTP per il nome del pod che hai individuato. Se hai cambiato il NAMESPACE, assicurati di utilizzare quello nuovo.

      NAMESPACE=amazon-network-flow-monitor kubectl logs $RANDOM_AGENT_POD_NAME -\-namespace ${NAMESPACE} | grep HTTP

    Se l'accesso è stato concesso con successo, dovresti vedere voci di registro simili alle seguenti:

    ... {"level":"INFO","message":"HTTP request complete","status":200,"target":"amzn_nefmon::reports::publisher_endpoint","timestamp":1737027525679} {"level":"INFO","message":"HTTP request complete","status":200,"target":"amzn_nefmon::reports::publisher_endpoint","timestamp":1737027552827}

    Tieni presente che l'agente Network Flow Monitor pubblica report sul flusso di rete ogni 30 secondi, richiamando l' APIsingestione di Network Flow Monitor.