如果我理解正确的话,为了从PMAPI获取指标,首先需要创建一个新的上下文,然后在查询URL中使用上下文ID。有没有办法解决这个问题,即。通过使用具有预定义ID的静态上下文?
我之所以问这个问题,是因为我想用Prometheus来监控我的CentOS 7服务器。CentOS 7上的PCP套件的版本(最多)为4.3。我能够安装所有的包并运行pmwebd。我可以连接Grafana来绘制来自目标主机的实时指标,但我也想使用Prometheus进行主动监控检查。在Prometheus配置文件中,我将此作业定义为:
- job_name: 'pcp'
file_sd_configs:
- files: ['hosts/*.yml']
metrics_path: '/pmapi/399165479/metrics'
params:
target: ['kernel', 'mem', 'disk', 'network', 'proc']其中399165479是我从以下位置获得的上下文编号:
> wget localhost:44323/pmapi/context?hostname=localhost因此,获取上下文号并将其插入到配置文件中是一个适合沙箱设置的手动过程,但在生产中是不可行的,因为它很难自动化。
任何关于这个问题的建议(除了PCP升级到v.5)都将非常感谢。
发布于 2020-06-25 13:21:21
显然,可以使用pmwebd的--context命令行参数来设置静态上下文号。它必须与-L参数一起使用。要在CentOS 7的守护程序模式下启用这些设置,需要向/etc/pcp/pmwebd/pmwebd.options添加以下行
OPTIONS="$OPTIONS -L --context=1"也可以使用1以外的任何整数。在systemctl restart pmwebd之后,所有查询都可以发送到/pmapi/1/metrics端点,因此在Prometheus配置中,擦除定义可能如下所示:
- job_name: 'pcp'
file_sd_configs:
- files: ['hosts/*.yml']
metrics_path: '/pmapi/1/metrics'
params:
target: ['kernel', 'mem', 'disk', 'network', 'proc']https://stackoverflow.com/questions/62560498
复制相似问题