Метрики мережі

Налаштування OBI для спостереження за мережевими метриками між точками.

Інструментування OpenTelemetry eBPF може бути налаштоване для надання мережевих метрик між різними кінцевими точками. Наприклад, між фізичними вузлами, контейнерами, подами Kubernetes, сервісами тощо.

Початок роботи

Щоб почати використовувати мережеві метрики OBI, ознайомтеся з документацією швидкого налаштування, а для розширеної конфігурації ознайомтеся з документацією конфігурації.

Метрики мережі

OBI надає метрики потоку байтів і пакетів, а також міжзональну метрику байтів:

Метрики потоку: захоплюють байти, надіслані та отримані між різними точками доступу з точки зору програми.

  • obi.network.flow.bytes, якщо експортується через OpenTelemetry.
  • obi_network_flow_bytes_total, якщо експортується через точку доступу Prometheus.
  • Щоб увімкнути його, додайте опцію network до OTEL_EBPF_METRICS_FEATURES configuration option.

Метрики потоку пакетів: підраховують пакети, надіслані та отримані між точками доступу.

  • obi.network.flow.packets, якщо експортується через OpenTelemetry.
  • obi_network_flow_packets_total, якщо експортується через точку доступу Prometheus.
  • Щоб увімкнути його, додайте опцію network_flow_packets до OTEL_EBPF_METRICS_FEATURES.

Метрики між зонами: захоплюють байти, надіслані та отримані між різними зонами доступності з точки зору програми.

  • obi.network.inter.zone.bytes, якщо експортується через OpenTelemetry.
  • obi_network_inter_zone_bytes_total, якщо експортується через точку доступу Prometheus.
  • Щоб увімкнути його, додайте опцію network_inter_zone до OTEL_EBPF_METRICS_FEATURES.

За стандартом, для метрик потоку байтів звітуються лише такі атрибути: k8s.src.owner.name, k8s.src.namespace, k8s.dst.owner.name, k8s.dst.namespace та k8s.cluster.name.

Для метрики міжзональних байтів стандартними атрибутами є k8s.cluster.name, src.zone та dst.zone.

Атрибути метрик

Мережеві метрики маркуються наступними атрибутами:

АтрибутОпис
directioningress для вхідного трафіку, egress для вихідного трафіку
dst.addressIP-адреса призначення (віддалена для виходу, локальна для входу)
dst.cidrCIDR призначення (якщо налаштовано)
dst.nameНазва сервісу призначення (визначена за допомогою виявлення сервісів)
dst.portПорт призначення (віддалений для виходу, локальний для входу)
dst.zone / dst_zoneНазва хмарної зони доступності призначення
ifaceНазва мережевого інтерфейсу
k8s.cluster.name / k8s_cluster_nameНазва кластера Kubernetes. OBI перевіряє мітки вузлів, метадані інфраструктури OpenShift, Google Cloud, Microsoft Azure та Amazon Web Services. Щоб перевизначити виявлення, встановіть OTEL_EBPF_KUBE_CLUSTER_NAME.
k8s.dst.name / k8s_dst_nameНазва podʼа призначення
k8s.dst.namespace / k8s_dst_namespaceНазва простору імен призначення
k8s.dst.node.ip / k8s_dst_node_ipIP-адреса вузла призначення
k8s.dst.node.name / k8s_dst_node_nameІмʼя вузла призначення
k8s.dst.owner.name / k8s_dst_owner_nameІмʼя власника робочого навантаження призначення
k8s.dst.owner.type / k8s_dst_owner_typeТип власника робочого навантаження призначення: replicaset, deployment, statefulset, daemonset, job, cronjob, node
k8s.dst.type / k8s_dst_typeТип робочого навантаження призначення: pod, replicaset, deployment, statefulset, daemonset, job, cronjob, node
k8s.src.name / k8s_src_nameНазва podʼа джерела
k8s.src.namespace / k8s_src_namespaceНазва простору імен джерела
k8s.src.node.ip / k8s_src_node_ipIP-адреса вузла джерела
k8s.src.node.name / k8s_src_node_nameІмʼя вузла джерела
k8s.src.owner.name / k8s_src_owner_nameІмʼя власника робочого навантаження джерела
k8s.src.owner.type / k8s_src_owner_typeТип власника робочого навантаження джерела: replicaset, deployment, statefulset, daemonset, job, cronjob, node
k8s.src.type / k8s_src_typeТип робочого навантаження джерела: pod, replicaset, deployment, statefulset, daemonset, job, cronjob, node
network.protocol.name / network_protocol_nameНазва мережевого протоколу (наприклад, http або https)
network.type / network_typeТип мережі (наприклад, ipv4 або ipv6)
obi.ip / obi_ipЛокальна IP-адреса екземпляра OBI, який надіслав метрику
service.nameЛокальна назва сервісу, повʼязана з інструментованою точкою доступу
service.namespaceЛокальна назва простору імен сервісу, повʼязана з інструментованою точкою доступу
service.peer.nameНазва віддаленого сервісу, повʼязана з кінцевою точкою призначення
service.peer.namespaceПростір імен віддаленого сервісу, повʼязаний з кінцевою точкою призначення
src.addressIP-адреса джерела (локальна для виходу, віддалена для входу)
src.cidrCIDR джерела (якщо налаштовано)
src.nameНазва сервісу джерела (визначена за допомогою виявлення сервісів)
src.portПорт джерела (локальний для виходу, віддалений для входу)
src.zone / src_zoneНазва хмарної зони доступності джерела
transportТранспортний протокол: tcp, udp

Агрегування метрик

Для зменшення високої кардинальності метрик мережі, вони попередньо агрегуються на рівні процесу, щоб зменшити кількість метрик, що надсилаються до бекенду метрик.

Стандартно усі метрики агрегуються за такими атрибутами:

  • direction
  • transport
  • src.address
  • dst.address
  • src.port
  • dst.port

Ви можете вказати, які атрибути дозволені в конфігурації OBI, щоб агрегувати метрику за ними.

Наприклад, щоб агрегувати мережеві метрики за власником Kubernetes джерела та призначення (замість імен окремих podʼів), ви можете використовувати таку конфігурацію:

network:
  allowed_attributes:
    - k8s.src.owner.name
    - k8s.dst.owner.name
    - k8s.src.owner.type
    - k8s.dst.owner.type

Тоді еквівалентна метрика Prometheus буде такою:

obi_network_flow_bytes:
  k8s_src_owner_name="frontend"
  k8s_src_owner_type="deployment"
  k8s_dst_owner_name="backend"
  k8s_dst_owner_type="deployment"

В цьому прикладі значення obi.network.flow.bytes буде агрегуватися за імʼям та типом власника Kubernetes джерела та призначення, замість імен окремих podʼів.

Метрики, основані на CIDR

Ви можете налаштувати OBI для розподілу метрик за діапазонами CIDR. Це корисно для відстеження трафіку до конкретних мережевих діапазонів, таких як IP-діапазони постачальників хмарних послуг або внутрішній/зовнішній трафік.

Підрозділ cidrs у YAML-файлі network (або змінна середовища OTEL_EBPF_NETWORK_CIDRS) приймає список діапазонів CIDR та відповідні імена. Наприклад:

network:
  cidrs:
    - cidr: 10.0.0.0/8
      name: 'cluster-internal'
    - cidr: 192.168.0.0/16
      name: 'private'
    - cidr: 172.16.0.0/12
      name: 'container-internal'

Тоді еквівалентна метрика Prometheus буде такою:

obi_network_flow_bytes:
  src_cidr="cluster-internal"
  dst_cidr="private"

Вимірювання трафіку між зонами доступності хмари

Як виміряти мережевий трафік між різними зонами доступності хмари

Швидкий старт з отримання мережевих метрик OBI

Посібник для швидкого старту, щоб отримати мережеві метрики з Інструментації OpenTelemetry eBPF

Параметри конфігурації OBI Network Metrics

Дізнайтеся про параметри конфігурації, доступні для мережевих метрик OBI


Востаннє змінено July 12, 2026: [uk] Ukrainian documentation for OpenTelemetry (83a19542)