在亚马逊实例上设置 Prometheus 主机 EC2 - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在亚马逊实例上设置 Prometheus 主机 EC2

此过程描述了如何使用 prometheus.yml 文件设置 Prometheus 主机。

  1. 将 Prometheus 服务器从https://prometheus.io/download/#prometheus下载到您的亚马逊实例。 EC2

  2. 将下载的文件解压缩到某个目录并转到该目录。

  3. 使用以下内容创建名为 prometheus.yml 的文件。

    # file: prometheus.yml # my global config global: scrape_interval: 60s # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'prometheus' static_configs: # 9090 is the prometheus server port - targets: ['localhost:9090'] - job_name: 'broker' file_sd_configs: - files: - 'targets.json'
  4. 使用该ListNodes操作获取集群的代理列表。

  5. 利用以下 JSON 创建名为 targets.json 的文件。将broker_dns_1broker_dns_2、和其余的代理 DNS 名称替换为您在上一步中为经纪商获取的 DNS 名称。包括您在上一步中获得的所有代理。Amazon MSK 对 JMX Exporter 使用端口 11001,对 Node Exporter 使用端口 11002。

    ZooKeeper mode targets.json
    [ { "labels": { "job": "jmx" }, "targets": [ "broker_dns_1:11001", "broker_dns_2:11001", . . . "broker_dns_N:11001" ] }, { "labels": { "job": "node" }, "targets": [ "broker_dns_1:11002", "broker_dns_2:11002", . . . "broker_dns_N:11002" ] } ]
    KRaft mode targets.json
    [ { "labels": { "job": "jmx" }, "targets": [ "broker_dns_1:11001", "broker_dns_2:11001", . . . "broker_dns_N:11001", "controller_dns_1:11001", "controller_dns_2:11001", "controller_dns_3:11001" ] }, { "labels": { "job": "node" }, "targets": [ "broker_dns_1:11002", "broker_dns_2:11002", . . . "broker_dns_N:11002" ] } ]
    注意

    要从 KRaft 控制器中抓取 JMX 指标,请在 JSON 文件中添加控制器 DNS 名称作为目标。例如:controller_dns_1:11001,将 controller_dns_1 替换为实际的控制器 DNS 名称。

  6. 要在您的 EC2 亚马逊实例上启动 Prometheus 服务器,请在解压 Prometheus 文件并保存的目录中运行以下命令。prometheus.yml targets.json

    ./prometheus
  7. 找到您在上 IPv4 一步中运行 Prometheus 的亚马逊 EC2 实例的公有 IP 地址。您在以下步骤中需要使用此公有 IP 地址。

  8. 要访问 Prometheus 网页用户界面,请打开可以访问您的 EC2亚马逊实例的浏览器,然后转Prometheus-Instance-Public-IP:9090到您在上一步中获得的公有 IP 地址Prometheus-Instance-Public-IP在哪里。