- Introduction
- 作者
- 版本变更历史
- 第一章 天降奇兵
- Prometheus是什么
- Prometheus的核心组件 * Prometheus Server * Exporters * AlertManager * PushGateway * Pull Vs Push
- Prometheus简介 * 前世今生 * 适用场景 * 百里挑一 * Prometheus Vs Graphite * Prometheus Vs InfluxDB * Prometheus Vs OpenTSDB * Prometheus Vs Nagios
- 在Linux环境下安装Prometheus * 安装Prometheus Server * 安装NodeExporter采集主机信息 * 配置Prometheus采集主机信息 * 验证部署过程 * 启用Basic Auth认证
- 在Docker环境下安装Prometheus * 使用Docker容器启动Prometheus * 使用Docker Compose启动Prometheus
- 小结
- 第二章 探索PromQL
- 什么是Metrics和Lables
- Prometheus Query Language
- Metrics类型 * Counter * Gauges * Histograms * Summaries
- 新的存储层
- 最佳实践
- 小结
- 第三章 Prometheus告警处理
- AlertManaer简介
- 部署AlertManager * 使用二进制包部署AlertManager * 使用容器部署AlertManager
- 自定义Prometheus告警规则
- 基于Label的动态告警处理 * ��通知对象Receivers * 告警路由�规则Route�
- �抑制机制� inhibit
- 告警模板
- 第三方集成
* 与邮件系统集成
* 与Slack集成
* 与Webhook集成
* 示例:基于Webhook创建自定义扩展
- 小结
- 第四章 可视化一切
- Grafana简介
- 安装Grafana * 使用二进制包安装Grafana * 使用容器安装Grafana
- 使用Prometheus数据源
- 创建监控Dashboard * 自定义Panel * 共享你的仪表盘
- 基于Grafana的告警配置
- 小结
- 第五章 扩展Prometheus
- 常用Exporter * 使用NodeExporter采集主机数据 * 使用MysqlExporter采集Mysql Server数据 * 使用RabbitMQExporter采集RabbitMQ数据 * 使用Cadvisor采集容器数据
- 使用Java创建自定义Metrics
- 使用Golang创建自定义Metrics
- 扩展Spring Boot应用支持应用指标采集
- 小结
- 第六章 Prometheus服务发现
- 基于文件的服务发现 * 创建文件 * 配置Prometheus使用基于文件的动态发现 * 定义刷新时间
- 基于Consul的服务发现 * Consul介绍 * Consul的安装和使用 * 注册Exporter到Consul * 配置Prometheus使用Consul动态发现
- 小结
- 第七章 运行和管理Prometheus
- 第八章 Kubernetes监控实战
- Kubernetes简介
- 搭建Kubernetes本地测试环境
- Prometheus Vs Heapster
- 在Kubernetes下部署Prometheus
- 采集Kubelet�状态
- 采集集群状态
- �采集应用�资源用量
- 采集集群节点状态指标
- 使用Grafana创建可视化仪表盘
- 基于Prometheus实现�应用的弹性伸缩
- 总结
- 参考资料