biqiq-discovery a Prometheus service discovery for F5 BigIQ management platform
Overview
biqiq-discovery is a Prometheus service discovery for F5 devices managed through BigIQ management platform.
Labels naming (since 0.2.0)
All labels are returned prefixed as __meta_bigip_
Configuration
Example:
bigiq:
host: www.bigiq.io
port: 443
username: user
password: password
Environment variables
- BIGIQ_DISCOVERY_CONFIG - the path to the above config file, default is
./config.yml - BIGIQ_DISCOVERY_PROMETHEUS_SD_FILE_DIRECTORY - the output directory for the file discovery files used in your Prometheus configuration. Each adom will have its own file.
- BIGIQ_DISCOVERY_LOG_LEVEL - the log level, default
WARNING - BIGIQ_DISCOVERY_LOG_FILE - the log file, default
stdout - BIGIQ_DISCOVERY_HOST - the ip to expose the exporter on, default
0.0.0.0- only applicable if running in server mode - BIGIQ_DISCOVERY_PORT - the port to expose the exporter on, default
9694 - BIGIQ_DISCOVERY_BASIC_AUTH_ENABLED - use basic auth if set to anything, default
false - BIGIQ_DISCOVERY_BASIC_AUTH_USERNAME - the username
- BIGIQ_DISCOVERY_BASIC_AUTH_PASSWORD - the password
- BIGIQ_DISCOVERY_CACHE_TTL - the ttl in seconds to keep the result from Fortimanager in cache, default
60
Run
File service discovery
pip install temp-discovery
BIGIQ_DISCOVERY_CONFIG=config.yml
BIGIQ_DISCOVERY_PROMETHEUS_SD_FILE_DIRECTORY=/etc/prometheus/file_sd/fortigate
python -m bigiq_discovery
Http service discovery
pip install temp-discovery
BIGIQ_DISCOVERY_CONFIG=config.yml
BIGIQ_DISCOVERY_BASIC_AUTH_ENABLED=true
BIGIQ_DISCOVERY_BASIC_AUTH_USERNAME=foo
BIGIQ_DISCOVERY_BASIC_AUTH_PASSWORD=bar
BIGIQ_DISCOVERY_LOG_LEVEL=INFO
python -m temp_discovery --server
Test discovery by curl
curl -ufoo:bar localhost:9694/prometheus-sd-targets
Prometheus job configuration
Example using the discovery with blackbox exporter
- job_name: 'f5-cluster-ping'
metrics_path: /probe
params:
module: [icmp]
http_sd_configs:
- url: http://localhost:9694/prometheus-sd-targets
refresh_interval: 60s
basic_auth:
username: foo
password: bar
relabel_configs:
- source_labels:
- __meta_bigip_platform
action: replace
target_label: product
- source_labels:
- __meta_bigip_version
action: replace
target_label: version
- source_labels:
- __meta_bigip_clustered
action: replace
target_label: clustered
- source_labels:
- __meta_bigip_virtual
action: replace
target_label: virtual
- source_labels: [ __address__ ]
regex: '(.+):.*'
target_label: __param_target
- source_labels: [ __param_target ]
target_label: instance
- target_label: __address__
replacement: 'localhost:9115'
Metadata
Release files for bigiq-discovery 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| bigiq-discovery-0.2.0.tar.gz | 24.3 kB | Without provenance | Details for bigiq-discovery-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bigiq_discovery-0.2.0-py3-none-any.whl | Python 3 | none | any | Details for bigiq_discovery-0.2.0-py3-none-any.whl |
Total release size: 55.3 kB
Release files / bigiq-discovery-0.2.0.tar.gz
| Download URL | bigiq-discovery-0.2.0.tar.gz |
|---|---|
| Size | 24.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce1bdcabd501e8f793829906d5ea1b09f0e3fb27ec50187a12b4758d07869470
|
|
BLAKE2b-256 checksum How to use checksums |
1010a39e39e8c022c59a2c9a30b4863aa4f694151b8b50ccaccf4f1e45774799
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / bigiq_discovery-0.2.0-py3-none-any.whl
| Download URL | bigiq_discovery-0.2.0-py3-none-any.whl |
|---|---|
| Size | 31.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7f0adf2606c9eb2ee0443e67c10801b9d80311dc51fee4cfc8cfa43314922429
|
|
BLAKE2b-256 checksum How to use checksums |
c1f7ad4e80201a4c86a334455151987b6a0af453853f5886d17cf5fa6d65dfd6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Security for bigiq-discovery 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.