目录
●第1章 监控系统规划及原理 1
1.1 IT监控运维管理的发展历程 1
1.1.1 新兴的中国市场(1985―1994年) 2
1.1.2 运营商大建设期(1995―2000年) 2
1.1.3 多元化的监控运维系统(2001―2010年) 4
1.1.4 面向云和应用(2010年至今) 5
1.2 监控体系总体规划 5
1.2.1 IT运营体系的阶段性 5
1.2.2 监控体系建设的阶段性 7
1.3 监控系统的分类 12
1.4 监控系统工作原理 13
1.5 监控系统运行模式分类 16
1.5.1 主动/被动监控 16
1.5.2 有代理/无代理 18
1.6 监控事件总线 19
1.6.1 什么是集中监控事件总线 19
1.6.2 事件总线的市场格局 20
1.6.3 监控事件总线的功能设计 22
本章小结 25
第2章 计算机硬件设备监控 26
2.1 计算机的分类 26
2.2 数据中心常见的计算机种类 27
2.2.1 大型机 27
2.2.2 小型机、PC服务器 28
2.2.3 RISC、CISC 30
2.2.4 刀片机 31
2.3 计算机硬件设备监控 31
2.3.1 大型机设备监控 32
2.3.2 小型机设备监控 33
2.3.3 PC Server设备监控 41
2.3.4 刀片机设备监控 46
本章小结 47
第3章 虚拟机监控 48
3.1 虚拟化分类 48
3.1.1 硬件虚拟化 49
3.1.2 桌面虚拟化 49
3.1.3 应用程序虚拟化 49
3.1.4 网络虚拟化 49
3.2 ESXi虚拟化监控 50
3.2.1 ESXi虚拟化概述 50
3.2.2 ESXi架构图及监控入口 53
3.2.3 使用Zabbix监控ESXi 53
3.3 KVM虚拟化监控 60
3.3.1 KVM虚拟化概述 60
3.3.2 使用Zabbix监控KVM 61
本章小结 63
第4章 操作系统监控 64
4.1 操作系统的种类 64
4.1.1 类UNIX系统 64
4.1.2 Windows系统 65
4.2 操作系统功能模块 66
4.3 CPU监控 69
4.3.1 CPU相关概念 69
4.3.2 CPU状态 70
4.4 内存监控 72
4.4.1 内存相关概念 72
4.4.2 内存状态 74
4.5 进程监控 74
4.5.1 进程相关概念 74
4.5.2 进程状态监控 76
4.6 文件属性监控 78
4.6.1 Windows中的文件属性 78
4.6.2 类UNIX中的文件属性 78
4.7 文件系统监控 83
4.7.1 文件系统概念 83
4.7.2 文件系统状态 84
4.8 网络模块监控 85
4.8.1 网络流量监控 85
4.9 监控系统如何监控操作系统 87
4.9.1 Windows 87
4.9.2 Linux 90
本章小结 92
第5章 数据库监控 93
5.1 数据库分类 93
5.1.1 关系型数据库 94
5.1.2 非关系型数据库 94
5.2 数据库状态指标分类 94
5.3 当前连接数与优选允许连接数 95
5.3.1 连接数的相关概念 95
5.3.2 连接数指标实例 95
5.4 QPS/TPS 99
5.4.1 QPS/TPS的相关概念 99
5.4.2 QPS/TPS指标实例 99
5.5 慢查询 102
5.5.1 慢查询的相关概念 102
5.5.2 慢查询指标实例 102
5.6 磁盘I/O监控 108
5.6.1 磁盘I/O相关概念 108
5.6.2 磁盘I/O的获取 108
5.7 其他针对性指标 110
5.7.1 Mysql Binlog cache的相关概念 110
5.7.2 Mysql Binlog cache指标实例 111
5.7.3 Oracle表空间的概念 112
5.7.4 Oracle表空间指标实例 112
5.7.5 Mysql MHA高可用集群的概念 113
5.7.6 Mysql MHA高可用集群指标 115
5.7.7 Oracle集群的概念 117
5.7.8 Oracle集群指标实例 118
本章小结 126
第6章 中间件监控 127
6.1 Nginx监控 128
6.1.1 Nginx概述 128
6.1.2 Nginx服务的进程及端口 128
6.1.3 服务可用性监控 130
6.1.4 Nginx日志监控 131
6.1.5 Nginx状态页监控 134
6.2 Tomcat监控 136
6.2.1 Tomcat概述 136
6.2.2 请求吞吐量指标和延迟指标 137
6.2.3 线程池指标 140
6.2.4 Errors错误率指标 144
6.2.5 JVM内存使用情况指标 146
6.2.6 JVM监控工具 149
6.3 ActiveMQ监控 152
6.3.1 ActiveMQ概述 152
6.3.2 生产者数量监控 152
6.3.3 消费者数量监控 153
6.3.4 队列深度监控 154
6.3.5 ActiveMQ监控实践 155
本章小结 157
第7章 Docker容器监控 159
7.1 Docker容器运行状态 159
7.2 Docker容器性能指标 161
7.3 cAdvisor对容器监控 162
7.3.1 CPU的监控 164
7.3.2 内存的监控 165
7.3.3 磁盘的监控 165
7.3.4 网络的监控 165
7.4 Docker容器内的应用日志监控 166
本章小结 170
第8章 Kubernetes监控 171
8.1 Kubernetes简介 171
8.2 Prometheus简介 174
8.3 Prometheus部署 176
8.4 Kubernetes集群监控 186
8.4.1 宿主机监控 187
8.4.2 容器监控 196
8.4.3 集群资源监控 199
8.4.4 API Server监控 207
8.4.5 应用系统监控 209
本章小结 214
第9章 应用监控 215
9.1 应用性能管理概述 215
9.2 调用链路跟踪 217
9.2.1 Span的概念 218
9.2.2 Trace的概念 220
9.3 APM系统的设计与实现 222
9.3.1 APM系统通用架构 222
9.3.2 Span的创建及SpanContext的传递逻辑 223
9.3.3 TraceID和SpanID的生成方法 225
9.3.4 代码注入方法 227
9.3.5 APM系统性能优化 228
本章小结 231
第10章 日志监控 232
10.1 日志的基本概念 232
10.2 日志的作用 233
10.2.1 运维监控 233
10.2.2 资源管理 233
10.2.3 入侵检测 234
10.2.4 取证和审计 234
10.2.5 挖掘分析 235
10.3 常见日志类型及格式 235
10.3.1 W3C Extended Log File格式 236
10.3.2 Apache access log 237
10.3.3 Syslog 237
10.4 日志规范 239
10.4.1 应用日志打印规范 240
10.4.2 日志的轮转归档 241
10.4.3 日志的爆发抑制 242
10.5 日志监控基本原理 243
10.5.1 前置式日志监控 243
10.5.2 集中式日志监控 244
10.5.3 日志监控的基本过程 245
10.6 日志监控的常见场景 246
10.6.1 关键字监控 246
10.6.2 多节点日志监控 247
10.6.3 应用系统性能监控 248
10.6.4 应用系统业务量异常监控 250
10.6.5 安全监控与异常IP自动封禁 250
10.7 日志采集与传输 251
10.7.1 拉式采集(PULL) 252
10.7.2 推式采集(PUSH) 252
10.7.3 日志过滤 253
10.8 日志解析与日志监控策略 254
10.8.1 日志解析工具 254
10.8.2 正则表达式 258
10.8.3 日志监控策略 261
10.9 常见日志监控系统 262
10.9.1 基于ELK的日志监控 262
10.9.2 基于Splunk的日志监控 263
本章小结 265
第11章 智能监控 266
11.1 智能监控概述 267
11.1.1 Gartner AIOps 267
11.1.2 NoOps 267
11.1.3 智能监控实施路径 268
11.2 监控数据治理 269
11.2.1 大数据平台选型 269
11.2.2 大数据平台设计 270
11.2.3 监控运维数据治理 271
11.3 监控动态基线 273
11.3.1 动态阈值设计与计算 274
11.3.2 基于动态阈值异常检测 276
11.3.3 监控动态阈值案例 276
11.4 监控自愈 278
11.4.1 什么是自愈 278
11.4.2 自愈的优势 283
11.4.3 监控自愈模块设计 284
11.4.4 监控自愈案例分享 285
本章小结 286
参考文献 287
内容介绍
本书采用循序渐进的讲解方式,介绍了如何从零开始构建一个企业级监控平台的相关理论技术和实践方法。首先从监控系统总体设计原理出发,逐步介绍企业级监控系统的常用架构、各个组件模块作用、运行模式、监控体系的建设路线、监控信息的合并算法、监控颗粒度设置经验以及如何保障监控系统自身可靠性等内容;随后自底向上依次对硬件设备、操作系统、虚拟机、常用数据库和中间件、容器和容器编排、系统和应用日志以及应用链路等常见监控领域实施监控的技术原理、常用监控指标以及实现方式等内容作了介绍;最后对监控系统下阶段发展趋势也即智能监控作涉及相关技术原理及常用智能监控功能作了展望及介绍。通过对本书的系统学习,可以对计算机监控系统的基本原理、设计思想、实现方式等方面有全面而深入的了解。