Prometheus

Prometheus it’s a service for metrics collection, it’s scrapes sources configured statically in configuration files or dynamically through service discovery systems like kubernetes and stores data in a time series format

The scrape operations happens using http as communication protocol and data are formatted with open telemetry (otel)

Prometheus federation

Prometheus allow to pull data from other prometheus istances using the /federation API endpoint, this allows prometheus to be deployed in federated environments:

Prometheus Federation can be configured in 2 ways:

--- title: Hierarchical federation --- flowchart TD subgraph Site1 A@{shape: rect, label: infrastructure1} B@{shape: rect, label: infrastructure2} C@{shape: rect, label: infrastructure site1} end subgraph Site2 F@{shape: rect, label: infrastructure site2} G@{shape: rect, label: infrastructure1} H@{shape: rect, label: infrastructure2} end E@{shape: rect, label: global infrastructure} C --> A & B F --> G & H E --> F & C
--- title: Cross service federation --- flowchart TD subgraph service_level direction LR A@{shape: rect, label: prometheus} B@{shape: rect, label: service1} C@{shape: rect, label: service2} end subgraph infrastructure_level D@{shape: rect, label: prometheus} end infrastructure_level ~~~ service_level D --> A

References

Link map