Adora Laura Kalb
0887112c44
All checks were successful
ci/woodpecker/push/golang-test Pipeline was successful
68 lines
2.3 KiB
Markdown
68 lines
2.3 KiB
Markdown
# ntppool.org Exporter
|
|
|
|
This exporter is @adoralaura s try to display server scores from servers in [ntppool.org](https://www.ntppool.org) in a format which [Prometheus](https://prometheus.io/) can ingest.
|
|
|
|
# Usage
|
|
|
|
## Installation
|
|
|
|
Pre-built docker images can be found at [Docker Hub](https://hub.docker.com/r/lauralani/ntppool-exporter). A sample `docker-compose.yml` can be [found here](docker-compose.yml).
|
|
|
|
Binaries can be built by cloning this repository and run `go build main.go` with [Golang](https://go.dev/) installed.
|
|
|
|
## Running
|
|
|
|
Start `ntppool-exporter` as a daemon or from CLI:
|
|
|
|
```sh
|
|
./ntppool-exporter
|
|
```
|
|
|
|
Visit <http://localhost:43609/metrics?target=192.0.0.8> where `192.0.0.8` is the IP
|
|
of the NTP server you want to get the score from.
|
|
|
|
## Prometheus Configuration
|
|
|
|
The URL parameter `target` can be controlled through relabelling.
|
|
|
|
Example config:
|
|
```YAML
|
|
scrape_configs:
|
|
- job_name: 'ntppool'
|
|
static_configs:
|
|
- targets:
|
|
- 192.168.1.2
|
|
- 2003:db8::1
|
|
relabel_configs:
|
|
- source_labels: [__address__]
|
|
target_label: __param_target
|
|
- source_labels: [__param_target]
|
|
target_label: instance
|
|
- target_label: __address__
|
|
replacement: 127.0.0.1:43609 # The ntppool exporter's real hostname:port.
|
|
```
|
|
|
|
Similarly to [blackbox_exporter](https://github.com/prometheus/blackbox_exporter),
|
|
`ntppool-exporter` is meant to run on a few central machines and can be thought of
|
|
like a "Prometheus proxy".
|
|
|
|
### TLS and basic authentication
|
|
|
|
The ntppool Exporter does **not** support TLS and basic authentication yet.
|
|
This may be added in a future release.
|
|
|
|
## Scaling
|
|
|
|
A single instance of `ntppool-exporter` should be able to query for a lot of servers. However, rate limits for upstream `ntppool.org` API endpoints may interfere.
|
|
Furthermore, as this project is in its early stage, issues may currently prevent it from scaling.
|
|
|
|
# Once you have it running
|
|
|
|
It can be opaque to get started with all this. To make it
|
|
easier for others, please consider contributing back your configurations to
|
|
us.
|
|
|
|
# Contributing
|
|
If you have any ideas, enhancements, bug reports or general questions, please don't hesitate to [create a new issue](https://gitlab.com/adoralaura/ntppool-exporter/-/issues/new).
|
|
|
|
If you want to contribute to this project, please read the [Contribution Guidelines](CONTRIBUTING.md)
|