Quan un punt final de mètriques HTTPS requereix una clau API i Prometheus ha d'utilitzar un proxy directe, configura la capçalera a la mateixa sol·licitud de recollida. Per a una versió de Prometheus que admet 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']

El fitxer conté la clau API d'objectiu prevista i ha de ser llegible a l'entorn d'execució de Prometheus. En un contenidor, proporciona-la en aquest camí del costat del contenidor.

http_headers col·loca X-API-Key a la sol·licitud cap a metrics.example. A través d'un túnel HTTPS CONNECT normal, aquesta capçalera viatja dins del TLS de destinació. L'intermediari proporciona connectivitat i ha de permetre el túnel. Per a un punt final de mètriques accessible públicament on es permeten intermediaris públics, la llista de proxys HTTP ofereix candidats per a proxy_url sense compte; manté la clau API a la sol·licitud de destinació.

proxy_connect_header té una altra destinació: l'intermediari rep aquestes capçaleres en el CONNECT. Posar-hi una clau API d'objectiu no la lliura com a capçalera de sol·licitud HTTPS al servidor de mètriques.

Manté el nom d'amfitrió i el camí reals de les mètriques a la configuració de recollida. Prometheus també protegeix les capçaleres que estableix ell mateix de substitucions arbitràries, així que per a aquesta clau API utilitza els camps de capçalera personalitzada admesos.

Articles relacionats