Skip to main content

How Metric Collections Works

Integration connects with the Openshift metrics-server using the Metrics API (API group metrics.k8s.io). It collects CPU and used memory for nodes, pods, and containers. CPU and used memory are aggregated at cluster, namespace, replica set, deployment, and service layers. Node free memory is derived from node capacity minus used memory. Node ephemeral storage capacity and uptime come from the Openshift API, not from Prometheus.

When a Prometheus hostname is configured, the integration also collects the following metrics from Prometheus. These metrics are not returned by the Metrics API.

  • Nodes (node_disk_*, node_memory_*, node_network_*)

    • Storage throughput: bytes read and written, read and write operations, and read and write latency

    • Memory advanced: active memory, free swap, and used swap

    • Network link layer: bytes, packets, errors, and drops received and sent; collisions sent; carrier loss sent; and link speed

  • Pods (container_network_*, summed by pod)

    • Network link layer: bytes, packets, errors, and drops received and sent

  • Virtual machines (KubeVirt kubevirt_vmi_*). Nothing is collected for virtual machines from the Metrics API.

    • CPU: total, system, and user CPU time

    • Memory: used and free

    • Guest OS process memory: swap in, swap out, available memory, resident set size, major faults, and minor faults

    • VM disk storage throughput: bytes, operations, and latency read and write

    • VM volume storage capacity: total and used usable capacity

    • VM network adapter link layer: bytes, packets, errors, and drops received and sent

The complete list of metrics for this integration is available in a separate guide.