Apabila titik akhir metrik HTTPS memerlukan kunci API dan Prometheus mesti menggunakan proksi hadapan, tetapkan pengepala pada permintaan scrape itu sendiri. Untuk versi Prometheus yang menyokong 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']

Fail itu mengandungi kunci API sasaran yang dimaksudkan dan mesti boleh dibaca dalam persekitaran pelaksanaan Prometheus. Dalam kontena, sediakannya pada laluan sebelah kontena itu.

http_headers meletakkan X-API-Key pada permintaan ke metrics.example. Melalui terowong HTTPS CONNECT biasa, pengepala itu bergerak di dalam TLS destinasi. Perantara menyediakan kesambungan dan mesti membenarkan terowong itu. Untuk titik akhir metrik yang boleh dicapai secara awam di mana perantara awam dibenarkan, senarai proksi HTTP menawarkan calon untuk proxy_url tanpa akaun; kekalkan kunci API pada permintaan destinasi.

proxy_connect_header mempunyai destinasi lain: perantara menerima pengepala itu semasa CONNECT. Meletakkan kunci API sasaran di sana tidak menyampaikannya sebagai pengepala permintaan HTTPS kepada pelayan metrik.

Kekalkan nama hos dan laluan metrik sebenar dalam konfigurasi scrape. Prometheus juga melindungi pengepala yang ditetapkannya sendiri daripada penggantian sewenang-wenangnya, jadi gunakan medan pengepala tersuai yang disokong untuk kunci API ini.

Artikel berkaitan