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.

Povezani članci