Commonly used Prometheus exporters and their recommended ports: Difference between revisions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
= Prometheus Exporter Port Allocation Standard = | = Prometheus Exporter Port Allocation Standard = | ||
This document defines the '''official internal standard''' for Prometheus exporter port assignments within our infrastructure. The primary goal is to create a cohesive | This document defines the '''official internal standard''' for Prometheus exporter port assignments within our infrastructure. The primary goal is to create a single, cohesive, and maintainable port scheme that prevents conflicts and is easy to understand and extend. | ||
== Guiding Principles == | == Guiding Principles == | ||
* ''' | * '''One List, One Standard''': This page is the single source of truth. All services that expose a Prometheus metrics endpoint '''must''' be included in this list with a unique port. | ||
* ''' | * '''Internal Consistency is Priority''': This list overrides external community standards or vendor defaults if they conflict with our internal, sequential scheme. | ||
* '''Logical Grouping''': Ports are allocated in logical, contiguous blocks, making the scheme predictable and easy to manage. | * '''Logical Grouping''': Ports are allocated in logical, contiguous blocks, making the scheme predictable and easy to manage. | ||
* '''Documentation First''': Before deploying a new exporter, it '''must''' be added to this list with an assigned port. | * '''Documentation First''': Before deploying a new exporter, it '''must''' be added to this list with an assigned port. | ||
| Line 11: | Line 11: | ||
---- | ---- | ||
== | == Observability & Core Infrastructure (9100-9119) == | ||
This block covers the foundational layer of our stack, from the observability agent itself to the hosts and orchestration platforms. | |||
This block covers the foundational layer of our stack, from the | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 29: | Line 20: | ||
! Assigned Port | ! Assigned Port | ||
! Notes | ! Notes | ||
|- | |||
| '''Grafana Alloy''' | |||
| `9100` | |||
| For exposing Alloy's '''own internal metrics''' to be scraped by Prometheus. Its separate management UI runs on port `12345`. | |||
|- | |- | ||
| '''Node Exporter''' | | '''Node Exporter''' | ||
| ` | | `9101` | ||
| Linux/Unix host metrics | | Linux/Unix host metrics. | ||
|- | |- | ||
| '''Windows Exporter''' | | '''Windows Exporter''' | ||
| ` | | `9102` | ||
| Windows host metrics. | | Windows host metrics. | ||
|- | |- | ||
| '''Blackbox Exporter''' | | '''Blackbox Exporter''' | ||
| ` | | `9103` | ||
| Probing endpoints (ICMP/HTTP/TCP) for availability. | | Probing endpoints (ICMP/HTTP/TCP) for availability. | ||
|- | |- | ||
| '''cAdvisor''' | | '''cAdvisor''' | ||
| ` | | `9104` | ||
| Container-level resource usage metrics. | | Container-level resource usage metrics. | ||
|- | |- | ||
| '''kube-state-metrics''' | | '''kube-state-metrics''' | ||
| ` | | `9105` | ||
| Kubernetes API object state metrics. | | Kubernetes API object state metrics. | ||
|- | |- | ||
| '''Proxmox VE Exporter''' | | '''Proxmox VE Exporter''' | ||
| ` | | `9106` | ||
| Proxmox hypervisor, VM, and container metrics. | | Proxmox hypervisor, VM, and container metrics. | ||
|- | |- | ||
| '''eBPF Exporters''' | | '''eBPF Exporters''' | ||
| ` | | `9107` | ||
| For advanced Linux kernel telemetry. | | For advanced Linux kernel telemetry. | ||
|- | |- | ||
| '''Process Exporter''' | | '''Process Exporter''' | ||
| ` | | `9108` | ||
| For detailed metrics on specific Linux processes. | | For detailed metrics on specific Linux processes. | ||
|} | |} | ||
Latest revision as of 16:22, 27 August 2025
Prometheus Exporter Port Allocation Standard
This document defines the official internal standard for Prometheus exporter port assignments within our infrastructure. The primary goal is to create a single, cohesive, and maintainable port scheme that prevents conflicts and is easy to understand and extend.
Guiding Principles
- One List, One Standard: This page is the single source of truth. All services that expose a Prometheus metrics endpoint must be included in this list with a unique port.
- Internal Consistency is Priority: This list overrides external community standards or vendor defaults if they conflict with our internal, sequential scheme.
- Logical Grouping: Ports are allocated in logical, contiguous blocks, making the scheme predictable and easy to manage.
- Documentation First: Before deploying a new exporter, it must be added to this list with an assigned port.
Observability & Core Infrastructure (9100-9119)
This block covers the foundational layer of our stack, from the observability agent itself to the hosts and orchestration platforms.
| Exporter | Assigned Port | Notes |
|---|---|---|
| Grafana Alloy | `9100` | For exposing Alloy's own internal metrics to be scraped by Prometheus. Its separate management UI runs on port `12345`. |
| Node Exporter | `9101` | Linux/Unix host metrics. |
| Windows Exporter | `9102` | Windows host metrics. |
| Blackbox Exporter | `9103` | Probing endpoints (ICMP/HTTP/TCP) for availability. |
| cAdvisor | `9104` | Container-level resource usage metrics. |
| kube-state-metrics | `9105` | Kubernetes API object state metrics. |
| Proxmox VE Exporter | `9106` | Proxmox hypervisor, VM, and container metrics. |
| eBPF Exporters | `9107` | For advanced Linux kernel telemetry. |
| Process Exporter | `9108` | For detailed metrics on specific Linux processes. |
Databases & Caching (9120-9139)
Data stores, caches, message queues, and related proxies.
| Exporter | Assigned Port | Notes |
|---|---|---|
| PostgreSQL Exporter | `9120` | For PostgreSQL databases. |
| MySQL Exporter | `9121` | For MySQL and MariaDB databases. |
| Redis Exporter | `9122` | For Redis in-memory databases. |
| MongoDB Exporter | `9123` | For MongoDB document databases. |
| Elasticsearch Exporter | `9124` | For Elasticsearch / OpenSearch clusters. |
| RabbitMQ Exporter | `9125` | For RabbitMQ message brokers. |
| Kafka Exporter | `9126` | For Apache Kafka cluster metrics. |
| Memcached Exporter | `9127` | For Memcached key-value stores. |
| Oracle DB Exporter | `9128` | For Oracle Database instances. |
| SQL Exporter | `9129` | For running generic SQL queries against various databases. |
| ClickHouse Exporter | `9130` | For ClickHouse columnar database. |
Applications & Web Services (9140-9159)
Web servers, application servers, and specific software platforms.
| Exporter | Assigned Port | Notes |
|---|---|---|
| JMX Exporter | `9140` | For any JVM-based application (e.g., Tomcat, custom Java apps). |
| Apache Exporter | `9141` | For Apache HTTPD servers. |
| NGINX Exporter | `9142` | For NGINX web servers and reverse proxies. |
| HAProxy Exporter | `9143` | For HAProxy load balancers. |
| PHP-FPM Exporter | `9144` | For PHP FastCGI Process Manager. |
| GitLab | `9145` | For the main GitLab application metrics. |
| GitLab Runner | `9146` | For GitLab Runner agents. |
| Consul Exporter | `9147` | For HashiCorp Consul service mesh. |
| Nomad Exporter | `9148` | For HashiCorp Nomad cluster orchestrator. |
Networking, Security & Miscellaneous (9160-9189)
Exporters for network devices, protocols, security tools, and other utilities.
| Exporter | Assigned Port | Notes |
|---|---|---|
| SNMP Exporter | `9160` | For network gear (switches, routers) and other hardware via SNMP. |
| Script Exporter | `9161` | For wrapping arbitrary shell scripts as a metrics endpoint. |
| CloudWatch Exporter | `9162` | For fetching metrics from AWS CloudWatch. |
| Azure Exporter | `9163` | For fetching metrics from Azure Monitor. |
| Stackdriver Exporter | `9164` | For fetching metrics from Google Cloud Platform. |
| BIND Exporter | `9165` | For BIND DNS server metrics. |
| WireGuard Exporter | `9166` | For WireGuard VPN tunnel metrics. |
| OpenVPN Exporter | `9167` | For OpenVPN server metrics. |
| DHCPD Leases Exporter | `9168` | For monitoring DHCP server leases. |