如何在Prometheus.yml中配置带登录认证的采集目标?
Prometheus采集目标Basic Auth认证的正确配置
你之前的配置存在两个核心问题:
- 对
basic_auth的作用理解有误:Prometheus的basic_auth就是用来设置采集目标的HTTP Basic认证信息的,并非用于Prometheus自身的认证。 - 配置缩进错误:原配置中
basic_auth的缩进层级错误,属于static_configs的子项,导致Prometheus解析配置时出错,触发“INVALID is not a valid token”提示。
正确的配置如下,注意basic_auth要和job_name、metrics_path等配置项同级:
scrape_configs: - job_name: 'exporter_test' metrics_path: '/test/metrics/cpu' scheme: 'https' # 目标的Basic Auth认证配置,与job其他配置同级 basic_auth: username: 'target_login' password: 'pass_target' static_configs: - targets: ['10.10.1.2']
如果需要更安全地存储密码,推荐使用password_file替代明文的password,只需将密码写入一个文件,然后配置路径即可:
basic_auth: username: 'target_login' password_file: '/path/to/password/file'
内容的提问来源于stack exchange,提问作者Frederica
相关产品推荐
相关产品推荐

