Калі HTTPS-кропка метрык патрабуе ключ API, а Prometheus павінен выкарыстоўваць прамы проксі, задайце загаловак у самім запыце сканіравання. Для версіі Prometheus, якая падтрымлівае 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']

Файл змяшчае патрэбны ключ API мэты і павінен чытацца ў асяроддзі выканання Prometheus. У кантэйнеры размясціце яго па гэтым шляху ў кантэйнеры.

http_headers дадае X-API-Key да запыту да metrics.example. Праз звычайны тунэль HTTPS CONNECT гэты загаловак ідзе ўнутры TLS прызначэння. Пасярэднік забяспечвае злучэнне і павінен дазваляць тунэль. Для публічна даступнай кропкі метрык, дзе дазволены публічныя пасярэднікі, спіс HTTP-проксі дае кандыдатаў для proxy_url без уліковага запісу; трымайце ключ API у запыце да прызначэння.

proxy_connect_header мае іншае прызначэнне: пасярэднік атрымлівае гэтыя загалоўкі падчас CONNECT. Калі змясціць ключ API мэты там, ён не перадасца серверу метрык як загаловак HTTPS-запыту.

Трымайце фактычныя імя хоста і шлях метрык у канфігурацыі сканіравання. Prometheus таксама абараняе ўласныя загалоўкі ад адвольнага перазапісу, таму для гэтага ключа API выкарыстоўвайце падтрыманыя палі ўласных загалоўкаў.

Падобныя артыкулы