Monitorar um Elastic Fabric Adapter no Amazon EC2
É possível usar os seguintes recursos para monitorar a performance dos seus Elastic Fabric Adapters.
Tópicos
Métricas do driver do EFA para uma instância do Amazon EC2
O driver Elastic Fabric Adapter (EFA) publica, em tempo real, várias métricas das instâncias que têm interfaces EFA anexadas. É possível usar essas métricas para solucionar problemas de performance da aplicação e da rede, escolher o tamanho de cluster ideal para uma workload, planejar proativamente as atividades de escalação e comparar aplicações para determinar se elas maximizam a performance da EFA disponível em uma instância.
Métricas de driver do EFA disponíveis
O driver EFA publica as seguintes métricas para a instância em tempo real. Elas fornecem o número cumulativo de erros, eventos de conexão e pacotes ou bytes enviados, recebidos, retransmitidos ou descartados pelos dispositivos EFA anexados desde a inicialização da instância ou da última redefinição do driver.
| Métrica | Descrição | Tipos de instâncias compatíveis |
|---|---|---|
tx_bytes |
O número de bytes transmitidos. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
rx_bytes |
O número de bytes recebidos. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
tx_pkts |
O número de pacotes transmitidos. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rx_pkts |
O número de pacotes recebidos. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rx_drops |
O número total de pacotes recebidos e depois descartados. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
send_bytes |
O número de bytes enviados usando operações de envio. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
recv_bytes |
O número de bytes recebidos pelas operações de envio. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
send_wrs |
O número de pacotes enviados usando operações de envio. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
recv_wrs |
O número de pacotes recebidos pelas operações de envio. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rdma_write_wrs |
O número de operações de gravação de rdma concluídas. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rdma_read_wrs |
O número de operações de leitura de rdma concluídas. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rdma_write_bytes |
O número de bytes gravados nele por outras instâncias usando operações de gravação de rdma. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
rdma_read_bytes |
O número de bytes recebidos usando operações de leitura de rdma. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
rdma_write_wr_err |
O número de operações de gravação de rdma que tiveram erros locais ou remotos. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rdma_read_wr_err |
O número de operações de leitura de rdma que tiveram erros locais ou remotos. Unidade: contagem |
Todos os tipos de instâncias compatíveis com EFA |
rdma_read_resp_bytes |
O número de bytes enviados em resposta às operações de leitura de rdma. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
rdma_write_recv_bytes |
O número de bytes recebidos pelas operações de gravação de rdma. Unidade: bytes |
Todos os tipos de instâncias compatíveis com EFA |
retrans_bytes |
O número de bytes EFA SRD retransmitidos. Unidade: contagem |
Tipos de instância do Nitro v4 e posteriores que são compatíveis com EFA |
retrans_pkts |
O número de pacotes EFA SRD retransmitidos. Unidade: bytes |
Tipos de instância do Nitro v4 e posteriores que são compatíveis com EFA |
retrans_timeout_events |
O número de vezes que o tráfego de EFA SRD atingiu o tempo limite e resultou em uma alteração no caminho de rede. Unidade: contagem |
Tipos de instância do Nitro v4 e posteriores que são compatíveis com EFA |
impaired_remote_conn_events |
O número de vezes que as conexões EFA SRD entraram em um estado comprometido, resultando em um limite de taxa de throughput reduzido. Unidade: contagem |
Tipos de instância do Nitro v4 e posteriores que são compatíveis com EFA |
unresponsive_remote_events |
O número de vezes que uma conexão remota EFA SRD deixou de responder. Unidade: contagem |
Tipos de instância do Nitro v4 e posteriores que são compatíveis com EFA |
Para obter mais informações sobre os tipos de instâncias que são compatíveis com EFA, consulte Tipos de instâncias compatíveis.
Recupere as métricas do driver EFA para sua instância
É possível usar a ferramenta de linha de comando rdma-tool
$rdma -p statistic showlink rdmap0s31/1 tx_bytes 0 tx_pkts 0 rx_bytes 0 rx_pkts 0 rx_drops 0 send_bytes 0 send_wrs 0 recv_bytes 0 recv_wrs 0 rdma_read_wrs 0 rdma_read_bytes 0 rdma_read_wr_err 0 rdma_read_resp_bytes 0 rdma_write_wrs 0 rdma_write_bytes 0 rdma_write_wr_err 0 retrans_bytes 0 retrans_pkts 0 retrans_timeout_events 0 unresponsive_remote_events 0 impaired_remote_conn_events 0
Você também pode recuperar as métricas de cada interface do EFA anexada a uma instância dos arquivos sys usando o comando a seguir.
$more /sys/class/infiniband/device_number/ports/port_number/hw_counters/* | cat
Por exemplo
$more /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/* | cat:::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/lifespan :::::::::::::: 12 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_resp_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_wr_err :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_recv_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_wr_err :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/recv_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/recv_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_drops :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_pkts :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/send_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/send_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/tx_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/tx_pkts :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/retrans_bytes :::::::::::::: 0 /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/retrans_pkts :::::::::::::: 0 /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/retrans_timeout_events :::::::::::::: 0 /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/unresponsive_remote_events :::::::::::::: 0 /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/impaired_remote_conn_events :::::::::::::: 0
Logs de fluxo do Amazon VPC
É possível criar um log de fluxo da Amazon VPC para capturar informações sobre o tráfego de entrada e saída de um EFA. Os dados de log de fluxo podem ser publicados no Amazon CloudWatch Logs e no Amazon S3. Após criar um log de fluxo, será possível recuperar e visualizar seus dados no destino selecionado. Para obter mais informações, consulte Logs de fluxo da VPC no Guia do usuário da Amazon VPC.
Você cria um log de fluxo para um EFA da mesma forma como cria um log de fluxo para uma interface de rede elástica. Para mais informações, consulte Criar um log de fluxo no Guia do usuário da Amazon VPC.
Nas entradas do log de fluxo, o tráfego do EFA é identificado por srcAddress e destAddress, ambos formatados como endereços MAC, conforme mostrado no exemplo a seguir.
version accountId eniId srcAddress destAddress sourcePort destPort protocol packets bytes start end action log-status
2 3794735123 eni-10000001 01:23:45:67:89:ab 05:23:45:67:89:ab - - - 9 5689 1521232534 1524512343 ACCEPT OK
Amazon CloudWatch
Se você estiver usando o EFA em um cluster do Amazon EKS, poderá monitorar seus EFAs usando o CloudWatch Container Insights. O Amazon CloudWatch Container Insights é compatível com todas as métricas de driver EFA, exceto: retrans_bytes, retrans_pkts, retrans_timeout_events, unresponsive_remote_events e impaired_remote_conn_events.
Para obter mais informações, consulte Métricas do Amazon EKS e Kubernetes Container Insights no Guia do usuário do Amazon CloudWatch.