使用 Vector 收集系统指标(CPU、内存等)信息,Prometheus 主动从 Vector 拉取,最后通过 Grafana 接入 Prometheus 数据源进行查看
因为后续会进一步学习 Prometheus 相关知识,本篇文章作为先行的环境准备,记录以作备忘
安装 Vector
Vector 支持的输入输出类别很丰富,此处选择 Vector 作为 Agent
$ brew install vector
$ brew services start vector
配置 Vector 输出端点
配置文件路径:/opt/homebrew/etc/vector/vector.toml
这个路径定义在:~/Library/LaunchAgents/homebrew.mxcl.vector.plist (通过 Brew 安装)
[sources.host_metrics]
type = "host_metrics"
scrape_interval_secs = 15
[sinks.prometheus_exporter]
type = "prometheus_exporter"
inputs = ["host_metrics"]
address = "0.0.0.0:9598"
在配置文件内追加以上配置段,其定义了一个 host_metrics 类型的输入源,同时定义类型为 prometheus_exporter 的输出端
重启 Vector 使得配置生效
$ brew services restart vector
访问 http://localhost:9598/metrics,如果一切正常,可以看到一些指标数据,有 CPU、内存、磁盘等信息
安装 Prometheus
$ brew install prometheus
$ brew services start prometheus
配置 Prometheus 拉取
相关的配置文件为 /opt/homebrew/etc/prometheus.args 和 /opt/homebrew/etc/prometheus.yml,前者定义了配置文件、监听地址和数据存储位置的配置,后者是 Prometheus 配置文件
修改后的配置文件如下:
global:
scrape_interval: 15s
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: 'vector_metrics'
static_configs:
- targets: ['localhost:9598']
重启 Prometheus 使得配置生效
$ brew services restart prometheus
访问 http://localhost:9090/targets,可以看到已加载 vector_metrics 数据源
回到首页,输入指标名称:host_memory_available_bytes(指标名称可以在 Vector 的输出源指标中找到)
安装 Grafana
# 安装
$ brew install grafana
# 启动
$ brew services start grafana
默认访问地址:http://localhost:3000 默认用户密码:admin / admin (首次登录提示修改密码,本地测试可以跳过)
登陆后可以到右上角的个人资料设置时区、语言等,接下来添加 Prometheus 数据源,选择左侧的 "Connection" - "Data sources"
名称随意填写,地址即为刚部署的 Prometheus 地址:http://localhost:9090
点击测试并添加,添加完成后在侧边栏选择 Explore 或 Metrics 功能,输入指标名称就可以查看到数据
Grafana 图表和功能比 Prometheus 自带的 Web Console 要完善很多。
部署完成,本篇内容也先到这里。