Come posso visualizzare un elenco delle mie istanze Amazon EC2 connesse ad Amazon EFS?
Ho montato un file system Amazon EFS in Amazon Elastic File System (Amazon EFS) nella mia istanza Amazon Elastic Compute Cloud (Amazon EC2). Desidero vedere un elenco delle istanze Amazon EC2.
Breve descrizione
Per tracciare il traffico per l'interfaccia di rete di ciascuna destinazione di montaggio Amazon EFS, utilizza i log di flusso Amazon Virtual Private Cloud (Amazon VPC). Pubblica i log di flusso in Amazon CloudWatch Logs. Quindi utilizza CloudWatch Logs Insights per filtrare il flusso di traffico sull'interfaccia di rete della destinazione di montaggio. CloudWatch Logs Insights utilizza un timestamp specifico per identificare le istanze EC2 con file system EFS montati.
Risoluzione
Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
Crea un gruppo di log
Completa i seguenti passaggi:
- Apri la console Amazon CloudWatch.
- Nel pannello di navigazione, scegli Log, quindi scegli Gruppi di log.
- Scegli Crea gruppo di log.
In Nome del gruppo di Log, inserisci un nome.
In Impostazione di conservazione, inserisci un'impostazione di conservazione.
(Facoltativo) Aggiungi il nome della risorsa Amazon (ARN) di una chiave del Servizio AWS di gestione delle chiavi (AWS KMS) e tag. - Scegli Crea.
Crea un ruolo IAM con le autorizzazioni per pubblicare i log di flusso in CloudWatch Logs
Completa i seguenti passaggi:
- Apri la console AWS Identity and Access Management (AWS IAM).
- In Gestione degli accessi, scegli ** Ruoli**.
- Scegli Crea ruolo e Crea un nuovo ruolo IAM.
- Nella policy IAM del ruolo, aggiungi le autorizzazioni e includi una policy di attendibilità affinché il servizio assuma il ruolo.
Ottieni le interfacce di rete di destinazione di montaggio del file system Amazon EFS
Nota: Amazon EFS ha una destinazione di montaggio diversa per ciascuna zona di disponibilità.
Completa i seguenti passaggi:
- Apri la console EFS.
- Per File system, scegli il file system EFS, quindi seleziona Visualizza dettagli.
- Scegli Rete e annota l'ID dell'interfaccia di ogni destinazione di montaggio.
Crea il log di flusso
Completa i seguenti passaggi:
- Apri la console EC2.
- Scegli Rete e sicurezza, quindi seleziona Interfacce di rete.
- Scegli le interfacce di rete utilizzate dalla destinazione di montaggio.
- Nel menu Operazioni, scegli Crea log di flusso.
- Inserisci i seguenti valori:
(Facoltativo) In Nome, inserisci un nome per il log di flusso.
Per Filtro, scegli Tutti.
Per Intervallo di aggregazione massimo, scegli l'impostazione predefinita di 10 minuti o 1 minuto.
Per Destinazione, scegli Invia a CloudWatch Logs.
Per Gruppo di log di destinazione, scegli il gruppo di log.
Per Ruolo IAM, scegli il ruolo IAM.
Per Formato dei record di log, scegli Formato predefinito AWS o Formato personalizzato.
(Facoltativo) In Tag, aggiungi i tag. - Scegli Crea.
- Per monitorare lo stato del log di flusso, scegli l'interfaccia di rete, quindi seleziona Log di flusso. Verifica che lo Stato sia Attivo.
Nota: il sistema di log dei flussi pubblica il primo log in CloudWatch Logs dopo circa 10 minuti.
Verifica che i log di flusso sono in CloudWatch Logs
Completa i seguenti passaggi:
- Apri la console CloudWatch.
- Scegli Gruppi di log nel pannello di navigazione.
- Per Gruppi di log, scegli il gruppo di log.
- Verifica che vengano visualizzati tutti i flussi di log.
Nota: ogni interfaccia di rete ha un flusso di log diverso.
Utilizza CloudWatch Logs Insights per eseguire una query
Completa i seguenti passaggi:
- Apri la console CloudWatch.
- Nel pannello di navigazione, scegli Log, quindi seleziona Logs Insights.
- Scegli il gruppo di log.
- Scegli uno dei seguenti valori di durata: 5m, 30m, 1h, 3h, 12h o Personalizzato.
- Esegui questa query:
fields @timestamp, @message | filter dstPort="2049" | stats count(*) as FlowLogEntries by srcAddr | sort FlowLogEntries desc
La query precedente esamina tutti i log di flusso per tutte le destinazioni di montaggio. La query filtra i log con una porta di destinazione impostata su Port=2049. I client EFS si connettono per montare destinazioni sulla porta NFS 2049. La query recupera tutti gli indirizzi IP univoci dei client EFS e li ordina in base alle connessioni client più attive. Il numero di voci nel log di flusso determina il livello di attività.
L'output della query contiene l'elenco degli indirizzi IP privati per tutte le istanze con file system EFS montati.
Esempio di output della query:
# srcAddr FlowLogEntries1 111.22.33.44 782 111.55.66.77 36 3 111.88.99.000 33
Esegui il comando start-query
Verifica che jq sia installato:
yum install -y jq
Quindi esegui questo comando start-query:
aws logs start-query --log-group-name EFS-ENI-Flowlogs --start-time 1643127618 --end-time 1643128901 --query-string 'filter dstPort="2049" | stats count(*) as FlowLogEntries by srcAddr | sort FlowLogEntries desc' > test.json && sleep 10 && jq .queryId test.json | xargs aws logs get-query-results --query-id
Nel comando, imposta i seguenti parametri:
- Come log-group-name inserisci il nome del gruppo di log.
- Come start-time e end-time inserisci l'ora di inizio e di fine.
Nota: questi valori sono espressi in tempo Unix/Epoch. Per la conversione in timestamp leggibili, utilizza strumenti di conversione dei timestamp Epoch e Unix sul sito web Epochconverter. - (Facoltativo) Per test.json, puoi modificare il nome del file JSON ogni volta che esegui il comando. Quando modifichi il nome, l'output precedente non si fonde con il nuovo output.
- Per sleep specifica il tempo di ritardo in secondi per esaminare i log del flusso durante l'esecuzione della query.
Per visualizzare gli indirizzi IP dei client che attualmente montano i file system EFS, esegui una nuova query.
- Argomenti
- Storage
- Lingua
- Italiano
