部署 Prometheus 和 Grafana 以进行服务器监控是一项非常实用的任务,它们可以帮助你收集和可视化系统性能数据。以下是一个详细的步骤指南,帮助你在 Linux 服务器上部署 Prometheus 和 Grafana,进行监控配置。
1. 安装 Prometheus
1.1 下载并安装 Prometheus
-
下载适合你的操作系统和架构的 Prometheus 二进制文件。
- 例如,Linux 64 位系统:
prometheus-2.x.x.linux-amd64.tar.gz
。
- 例如,Linux 64 位系统:
-
解压文件并进入目录:
bashtar -xvzf prometheus-*.tar.gz cd prometheus-*
-
你会看到
prometheus
和promtool
两个文件,它们是 Prometheus 的主要工具。
1.2 配置 Prometheus
-
编辑
prometheus.yml
配置文件来添加要监控的目标。- 配置示例:
bashglobal: scrape_interval: 15s # 每15秒抓取一次数据 scrape_configs: - job_name: 'node' static_configs: - targets: ['localhost:9100'] # 监控本机的 Node Exporter
1.3 启动 Prometheus
-
在命令行启动 Prometheus:
bash./prometheus --config.file=prometheus.yml
默认情况下,Prometheus 会运行在 http://localhost:9090。
2. 安装 Node Exporter(用于服务器监控)
Node Exporter 是一个 Prometheus 导出器,用于收集操作系统和硬件的各种性能指标。
2.1 安装 Node Exporter
-
下载并解压 Node Exporter:
bashwget https://github.com/prometheus/node_exporter/releases/download/v1.x.x/node_exporter-1.x.x.linux-amd64.tar.gz tar -xvzf node_exporter-*.tar.gz cd node_exporter-*
-
启动 Node Exporter:
bash./node_exporter
默认情况下,Node Exporter 会运行在
http://localhost:9100
,它将暴露服务器的各种硬件和系统指标。
2.2 配置 Prometheus 监控 Node Exporter
在 prometheus.yml
配置文件中添加 Node Exporter 作为抓取目标:
bash
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100'] # 指向 Node Exporter
3. 安装 Grafana
3.1 下载并安装 Grafana
- 访问 Grafana 官方下载页面。
- 选择合适的操作系统并下载安装包。
- 安装 Grafana:
-
对于 debian 系统,可以通过以下命令安装:
bashsudo apt-get install -y software-properties-common sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main" sudo apt-get update sudo apt-get install grafana
-
3.2 启动 Grafana
-
启动并设置 Grafana 为系统服务:
bashsudo systemctl start grafana-server sudo systemctl enable grafana-server
-
默认情况下,Grafana 会运行在
http://localhost:3000
,并且默认的登录用户名和密码是admin
。
4. 配置 Grafana 与 Prometheus 集成
4.1 登录到 Grafana
- 打开浏览器,访问
http://localhost:3000
。 - 使用默认的
admin
用户名和密码登录,并按提示修改密码。
4.2 添加 Prometheus 数据源
- 在 Grafana 仪表板左侧,点击 齿轮图标 (Configuration) -> Data Sources。
- 点击 Add data source。
- 选择 Prometheus 数据源。
- 在 URL 字段输入 Prometheus 的地址(通常是
http://localhost:9090
)。 - 点击 Save & Test 测试连接是否成功。
4.3 创建 Grafana 仪表盘
以下是这两个模板的简要说明:
-
在左侧菜单选择 Create -> Dashboard。
-
点击 Add new panel。
-
在 Query 中选择 Prometheus 数据源,并编写查询。例如,要显示 CPU 使用率,可以使用以下查询:
bashnode_cpu_seconds_total{mode="idle"}
-
配置其他面板设置,例如图表类型、标题等,最后点击 Save 保存仪表盘。
-
在 Grafana 中,你可以使用社区提供的模板来快速搭建监控仪表盘。对于 Prometheus + Node Exporter 的服务器监控,常用的模板编号是 1860 和 8919。这些模板已经包含了许多常见的系统性能指标,如 CPU、内存、磁盘使用率和网络流量等。
如何导入模板
-
登录 Grafana 并点击左侧菜单中的 + 图标,然后选择 Import。
-
在 Import via grafana.com 输入框中输入模板编号(例如,
1860
或8919
),然后点击 Load。 -
在数据源下拉菜单中选择你的 Prometheus 数据源,然后点击 Import。
-
1860 - Node Exporter Full:一个完整的 Node Exporter 仪表盘,提供全面的系统监控信息。
-
8919 - Node Exporter for Prometheus Dashboard:这是一个更现代化的模板,提供了经过优化的性能监控图表。
5. 完成配置
现在你已经完成了 Prometheus 和 Grafana 的安装和配置,系统的各种性能指标(如 CPU、内存、磁盘等)应该已经可以通过 Grafana 仪表盘进行监控。
6. 高级配置(可选)
- 报警设置:你可以在 Grafana 中设置报警,以便当某些指标超过阈值时收到通知。
- 安全设置:为 Grafana 配置 HTTPS,启用用户认证等。
- 自动化部署:使用 Docker 或 Kubernetes 等容器化工具,方便在多个服务器上部署 Prometheus 和 Grafana。