Prometheus: postavljanje API ključa cilja s http_headers i proxy_url
Kombinirajte http_headers pri scrapanju s proxy_url i držite API zaglavlja izvornog poslužitelja odvojeno od CONNECT zaglavlja poslanih posredniku.
Kada HTTPS krajnja točka metrika zahtijeva API ključ, a Prometheus mora koristiti unaprijedni proxy, postavite zaglavlje na sam zahtjev za scrape. Za verziju Prometheusa koja podržava http_headers:
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']
Datoteka sadrži predviđeni API ključ cilja i mora biti čitljiva u izvršnom okruženju Prometheusa. U kontejneru je osigurajte na toj putanji s kontejnerske strane.
http_headers stavlja X-API-Key na zahtjev prema metrics.example. Kroz uobičajeni HTTPS CONNECT tunel to zaglavlje putuje unutar TLS-a odredišta. Posrednik osigurava povezanost i mora dopustiti tunel. Za javno dostupnu krajnju točku metrika gdje su javni posrednici dopušteni, popis HTTP proxyja nudi kandidate za proxy_url bez računa; zadržite API ključ na zahtjevu prema odredištu.
proxy_connect_header ima drugo odredište: posrednik prima ta zaglavlja pri CONNECT-u. Stavljanje API ključa cilja tamo ne dostavlja ga poslužitelju metrika kao zaglavlje HTTPS zahtjeva.
Zadržite stvarno ime hosta i putanju metrika u konfiguraciji scrapanja. Prometheus također štiti zaglavlja koja sam postavlja od proizvoljnog prepisivanja, pa za ovaj API ključ koristite podržana polja prilagođenih zaglavlja.