AWS CNI Metrics
10,217,807 5.0 (1 reviews)

Created 3/31/2022
Updated 4/1/2022
Revision 1
Categories
AWS
Grafana Version >=8.3.2
Datasources
Prometheus

The AWS VPC CNI, found on EKS, exposes metrics that can be collected in Prometheus. This is not the case by default, AWS favoring CloudWatch, so you'll have to add a podMonitor matching the aws-node daemonset:

apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
  name: aws-cni-metrics
  namespace: kube-system
spec:
  jobLabel: k8s-app
  namespaceSelector:
    matchNames:
    - kube-system
  podMetricsEndpoints:
  - interval: 30s
    path: /metrics
    port: metrics
  selector:
    matchLabels:
      k8s-app: aws-node

The dashboard displays

  • the ENI / IP usage (saturation of IPs in the allocated ENIs, saturation of ENI on the nodes),
  • the latency related to the different AWS API calls
  • the errors on the API calls and the IPAM operations
Get Dashboard
Download
Copy to Clipboard
Source Grafana.com

Used Metrics 17

  • awscni_eni_max

  • kube_node_labels

  • kube_pod_info

  • awscni_eni_allocated

  • awscni_ip_max

  • awscni_assigned_ip_addresses

  • awscni_total_ip_addresses

  • value

  • awscni_add_ip_req_count

  • awscni_del_ip_req_count

  • awscni_force_removed_enis

  • awscni_force_removed_ips

  • awscni_aws_api_error_count

  • awscni_aws_api_latency_ms_sum

  • awscni_aws_api_latency_ms_count

  • awscni_ipamd_action_inprogress

  • awscni_reconcile_count