云原生监控系统Prometheus——Jobs 和 Instances

Jobs 和 Instances

  在 Prometheus 中,任何被采集的目标,即每一个暴露监控样本数据的 HTTP 服务都称为一个实例(Instance),通常对应于单个进程。而具有相同采集目的的实例集合(比如为可伸缩性或可靠性而复制的流程)称为作业(Job)。

  例如:以下四个复制实例的 API 服务器作业。

job: api-server
   instance 1:	1.2.3.4:5671
   instance 2:	1.2.3.4:5672
   instance 3:	1.2.3.4:5673
   instance 4:	1.2.3.4:5674
   instance 5:	1.2.3.4:5675

  也可以从 NodeExporter 暴露的服务器中采集监控数据的内容:

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]

  在上面的 Job 中,采用静态配置方式定义被监控目标,在当前主机上运行的 NodeExporter 监控的程序被称为一个实例(Instance),而具有相同目的这些实例,或者是同一个监控进程的多副本进程则通过每一个作业(Job)进程管理。除了静态配置每个 Job 采集实例地址外,Prometheus 还可以从自动发现的实例上采集监控数据。

  • Job:配置目标所属的 job 名称。
  • instance:被采样目标 URL 中的 <host>:<port> 部分。
posted @ 2022-07-14 21:30  左扬  阅读(825)  评论(0编辑  收藏  举报
levels of contents