Prometheus: nastavení API klíče cíle pomocí http_headers a proxy_url
Zkombinujte http_headers při scrapování s proxy_url a držte API hlavičky zdrojového serveru oddělené od hlaviček CONNECT posílaných prostředníkovi.
Když HTTPS koncový bod metrik vyžaduje API klíč a Prometheus musí použít dopředný proxy, nastavte hlavičku přímo na požadavku scrapování. Pro verzi Promethea, která podporuje 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']
Soubor obsahuje zamýšlený cílový API klíč a musí být čitelný v prostředí, kde Prometheus běží. V kontejneru jej zajistěte na této cestě na straně kontejneru.
http_headers umísťuje X-API-Key na požadavek na metrics.example. Běžným tunelem HTTPS CONNECT tato hlavička putuje uvnitř TLS cíle. Prostředník zajišťuje konektivitu a musí tunel povolit. Pro veřejně dostupný koncový bod metrik, kde jsou veřejní prostředníci povoleni, nabízí seznam HTTP proxy kandidáty pro proxy_url bez účtu; API klíč ponechte na požadavku na cíl.
proxy_connect_header má jiné určení: prostředník dostává tyto hlavičky při CONNECT. Umístění cílového API klíče tam jej nedoručí serveru metrik jako hlavičku HTTPS požadavku.
Skutečné jméno hostitele a cestu metrik ponechte v konfiguraci scrapování. Prometheus také chrání hlavičky, které nastavuje sám, před svévolným přepsáním, proto pro tento API klíč použijte podporovaná pole vlastních hlaviček.