---
title: "家庭监控方案：Prometheus + Grafana + Node Exporter + cAdvisor + Blackbox"
type: source
tags: [monitoring, prometheus, grafana, docker]
date: 2025-12-29
---

## Source File
- [[raw/Home Office/家庭监控方案：Prometheus + Grafana + Node Exporter + cAdvisor +Blackbox.md]]

## Summary
- 核心主题：家庭监控方案，使用开源监控组件实现主机、容器、服务可用性的全方位监控
- 问题域：监控工具部署、指标采集、可视化展示、告警通知
- 方法/机制：Prometheus 拉取模式采集指标，Grafana 可视化，Alertmanager 分发告警
- 结论/价值：通过 Docker 一键部署完整监控栈，覆盖主机/容器/网络/服务监控面

## Key Claims
- Prometheus 适合作为主观测时序库和告警引擎
- node_exporter + cAdvisor + blackbox_exporter 可覆盖主机、容器、服务可用性三大监控面
- Grafana 支持多数据源仪表盘和告警通知
- 合成监控（Uptime Kuma + blackbox_exporter）可实现内外网健康探测

## Key Concepts
- [[Prometheus]]：开源时序数据库和监控系统，支持 PromQL 查询和告警规则
- [[Grafana]]：开源可视化平台，支持多数据源仪表盘和告警
- [[Alertmanager]]：Prometheus 告警分发组件，支持抑制、分组和多样化通知
- [[node_exporter]]：Prometheus 主机指标采集器，采集 CPU/内存/磁盘/网络等指标
- [[cAdvisor]]：Google 容器指标采集器，采集容器资源使用和性能数据
- [[Blackbox_exporter]]：Prometheus 黑盒探测组件，支持 HTTP/TCP/ICMP/HTTPS 探测
- [[Uptime Kuma]]：自托管可用性监控工具，类似 Uptime Robot
- [[时序数据库]]：专门存储时间序列数据的数据库，适合监控指标存储

## Key Entities
- [[Docker]]：容器化平台，用于部署所有监控组件
- [[Portainer]]：Docker 可视化管理工具

## Connections
- [[Prometheus]] ← scrapes ← [[node_exporter]]
- [[Prometheus]] ← scrapes ← [[cAdvisor]]
- [[Prometheus]] ← scrapes ← [[Blackbox_exporter]]
- [[Grafana]] ← visualizes ← [[Prometheus]]
- [[Alertmanager]] ← receives_alerts ← [[Prometheus]]

## Contradictions
- （暂无）

## Architecture Components
- **观测层**：Prometheus（采集 + 告警）、Alertmanager（告警分发）
- **可视化层**：Grafana（仪表盘 + 告警）、Loki（日志聚合，可选）
- **采集层**：node_exporter（主机）、cAdvisor（容器）、Blackbox_exporter（网络探测）
- **合成监控**：Uptime Kuma（可用性探针）

## Monitoring Coverage
1. 主机层：CPU / 内存 / 磁盘 / 网络 / I/O / inode
2. 容器层：容器状态、重启次数、资源限制、镜像版本
3. 服务层：HTTP(S) 可用性、响应码、延迟、错误率、TLS 证书
4. 日志层：应用错误/异常（可选 Loki）

## Alert Rules Examples
- 磁盘空间 < 10%
- CPU 使用率 > 85%（持续 2 分钟）
- 可用内存 < 15%
- 容器重启次数 > 0（1 小时内）
- HTTP 探测失败（连续 3 次）
- TLS 证书剩余 < 14 天