¿Cómo puedo ver una lista de mis instancias de Amazon EC2 que están conectadas a Amazon EFS?

6 minutos de lectura
0

Quiero ver una lista de mis instancias de Amazon Elastic Compute Cloud (Amazon EC2) que han montado un Amazon Elastic File System (Amazon EFS). ¿Cómo lo hago?

Descripción breve

Los registros de flujo de VPC se utilizan para realizar un seguimiento del tráfico en la interfaz de red elástica de cada destino de montaje de Amazon EFS. Los registros de flujo se pueden enviar a los registros de Amazon CloudWatch. Utilizando CloudWatch Logs Insights, se filtra el flujo de tráfico en la interfaz de red elástica del objetivo de montaje para proporcionar la lista de instancias de Amazon EC2 que han montado un Amazon EFS en una marca de tiempo específica.

Resolución

Nota: Si recibe errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de utilizar la versión más reciente de la AWS CLI.

Realice los siguientes pasos una vez. Tras completar estos pasos, cada vez que desee enumerar las direcciones IP de los clientes que montan Amazon EFS, ejecute una consulta para crear una lista actual.

Crear un grupo de registro

  1. Abra la consola de CloudWatch.
  2. En el panel de navegación, elija Logs, y a continuación elija grupos de registros.
  3. Seleccione Crear grupo de registro.
  4. Introduzca un nombre de grupo de registro, una Configuración de retención y un ARN de clave KMS opcional. También puede añadir Etiquetas aquí.
  5. Elija Crear.

Cree un rol de Identity and Access Management (IAM) con permiso para publicar registros de flujo en CloudWatch Logs

  1. Abra la consola de IAM.
  2. En el panel de navegación, en Administración de accesos, elija Roles.
  3. Elija Crear rol y cree un nuevo rol de IAM.
  4. La política de IAM que se adjunta a su rol de IAM debe incluir los permisos para publicar los registros de flujo de VPC en CloudWatch. Del mismo modo, debe tener una relación de confianza que permita que el servicio de registros de flujo asuma el rol.

Obtenga la lista de interfaces de red elásticas utilizadas por el destino de montaje de Amazon EFS

Nota: Amazon EFS tiene un destino de montaje diferente para cada Zona de disponibilidad.

  1. Abra la consola de Amazon EFS.
  2. En Sistemas de archivos, elija el Amazon EFS específico y, a continuación, elija Ver detalles.
  3. Haga clic en Red, y anote el ID de interfaz de red de cada destino de montaje.

Crear los registros de flujo

  1. Abra la consola de Amazon EC2.
  2. Elija Red y seguridad y, a continuación elija, Interfaces de red.
  3. Elija todas las interfaces de red elásticas que utiliza el objetivo de montaje.
  4. En el menú Acciones, seleccione Crear registro de flujo. Utilice los siguientes valores al crear el registro de flujo:
  • Nombre: Opcional
  • **Filtro:**Seleccione Todo
  • Intervalo máximo de agregación: Elija entre los predeterminados10 minutos o 1 minuto
  • Destino: Seleccione Enviar a registros de CloudWatch
  • Grupo de registro de destino: Elija el grupo de registro que creó
  • Rol de IAM: Elija el rol de IAM que ha creado
  • Formato de registro: Elija entre el formato predeterminado de AWS o el formato personalizado.
  • Etiqueta: Opcional
  1. Elija Crear.
  2. Supervise el estado del registro de flujo eligiendo la interfaz de red elástica específica para la que creó un registro de flujo. En la parte inferior de la pantalla, seleccione Registros de flujo. Compruebe que el estado esté activo.
  3. El primer registro de flujo se envía a CloudWatch Logs después de unos 10 minutos.

Compruebe que los registros de flujo estén en CloudWatch Logs

  1. Abra la consola de CloudWatch y, a continuación, seleccione Logs.
  2. Elija los grupos de registro creados en el paso 1.
  3. Compruebe que ahora aparezcan todos los flujos de registro que creó. Cada interfaz de red elástica tiene un flujo de registro diferente.

Ejecutar una consulta

Para ejecutar una consulta en CloudWatch Logs Insights:

  1. En la consola de CloudWatch, elija Logs y, a continuación elija Logs Insights.
  2. Elija los grupos de registro que creó en el menú desplegable.
  3. Elija la duración en la que desea revisar los registros de flujo (5 m, 30 m, 1 hora, 3 h, 12 o personalizado).
  4. Introduzca la consulta a continuación:
fields @timestamp, @message | filter dstPort="2049" | stats count(*) as FlowLogEntries by srcAddr | sort FlowLogEntries desc

Nota: Esta consulta revisa todos los registros de flujo generados para todos los objetivos de montaje. Filtra los registros que tienen un puerto de destino establecido en Port=2049 (los clientes de Amazon EFS se conectan para montar los destinos en el puerto NFS 2049). Recupera todas las IP de origen únicas (IP de cliente de Amazon EFS) y las ordena según las conexiones de cliente más activas. La actividad se determina por el número de entradas del registro de flujo.

  • Elija Ejecutar consulta. El resultado contiene la lista de IP privadas de todas las instancias de Amazon EC2 en las que ha montado Amazon EFS.

A continuación se muestra un ejemplo del resultado de la consulta:

#          srcAddr              FlowLogEntries
1      111.22.33.44                 78
2      111.55.66.77                36
3      111.88.99.000                33

Ejecute una consulta mediante la AWS CLI<br>

Para ejecutar una consulta desde la AWS CLI, siga estos pasos:

  1. Una vez configurado el registro de flujo de VPC, puede utilizar un comando de la AWS CLI para ejecutar la consulta.
  2. Compruebe que la AWS CLI esté actualizada a la versión más reciente:
$ pip install --upgrade awscli
  • Compruebe que jq esté instalado:
yum install -y jq
  • Utilice la siguiente consulta de la AWS CLI con estos parámetros de consulta:
  • log-group-name: Introduzca el nombre del grupo de registro que creó.
  • start-time / end-time: Estos valores están expresados en la hora de Unix/Epoch. Utilice el convertidor de época para convertir las marcas de tiempo legibles por humanos a la hora de Unix/Epoch.
  • test.json: Si lo desea, puede cambiar el nombre del archivo json cada vez que ejecute este comando. Al cambiar el nombre, se garantiza que la salida anterior no se fusione con la nueva salida.
  • sleep: Este valor (en segundos) se utiliza como retraso mientras se lleva a cabo la consulta de CloudWatch Logs Insights. El valor introducido depende del tiempo que desee revisar los registros de flujo. Si quiere revisar los registros durante más tiempo, por ejemplo, semanas, aumente el tiempo de espera.
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

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años