Prometheus: cél API-kulcs beállítása http_headers és proxy_url használatával
Kombinálja a scrape http_headers beállítását a proxy_url-lel, és tartsa külön a forráskiszolgáló API-fejléceit a közvetítőnek küldött CONNECT-fejlécektől.
Amikor egy HTTPS-metrikavégpont API-kulcsot igényel, és a Prometheusnak előremenő proxyt kell használnia, a fejlécet magán a scrape-kérésen állítsa be. A http_headers beállítást támogató Prometheus-verzióhoz:
scrape_configs:
- job_name: secured_metrics
scheme: https
metrics_path: /metrics
proxy_url: http://proxy.example:8080
http_headers:
X-API-Key:
files:
- /etc/prometheus/secrets/metrics-api-key
static_configs:
- targets: ['metrics.example:443']
A fájl tartalmazza a szándékolt cél API-kulcsot, és olvashatónak kell lennie a Prometheus futtatási környezetében. Konténerben ezen a konténeroldali útvonalon biztosítsa.
A http_headers az X-API-Key fejlécet a metrics.example felé irányuló kérésre teszi. Egy szokásos HTTPS CONNECT-alagúton ez a fejléc a cél TLS-én belül halad. A közvetítő biztosítja a kapcsolatot, és engedélyeznie kell az alagutat. Egy nyilvánosan elérhető metrikavégpont esetén, ahol a nyilvános közvetítők engedélyezettek, a HTTP-proxylista fiók nélküli jelölteket kínál a proxy_url számára; tartsa az API-kulcsot a cél felé irányuló kérésen.
A proxy_connect_header más célra szolgál: a közvetítő ezeket a fejléceket a CONNECT során kapja meg. Egy cél API-kulcs ott elhelyezve nem jut el HTTPS-kérésfejlécként a metrikakiszolgálóhoz.
Tartsa a tényleges metrikahosztnevet és -útvonalat a scrape-konfigurációban. A Prometheus a saját maga által beállított fejléceket is védi az önkényes felülírástól, ezért ehhez az API-kulcshoz a támogatott egyéni fejlécmezőket használja.