新書推薦:
《
美丽与哀愁:第一次世界大战个人史
》
售價:NT$
653.0
《
国家豁免法的域外借鉴与实践建议
》
售價:NT$
857.0
《
大单元教学设计20讲
》
售價:NT$
347.0
《
儿童自我关怀练习册:做自己最好的朋友
》
售價:NT$
316.0
《
高敏感女性的力量(意大利心理学家FSP博士重磅力作。高敏感是优势,更是力量)
》
售價:NT$
286.0
《
元好问与他的时代(中华学术译丛)
》
售價:NT$
398.0
《
汽车传感器结构·原理·检测·维修
》
售價:NT$
500.0
《
怪谈百物语:不能开的门(“日本文学史上的奇迹”宫部美雪重要代表作!日本妖怪物语集大成之作,系列累销突破200万册!)
》
售價:NT$
296.0
|
編輯推薦: |
如何时刻了解私有云、公有云等数据中心及其上的应用整体运行情况?是所有数字化转型企业都非常关注的。Prometheus的出现,帮助我们揭开云的神秘面纱,云及在云上的应用运行情况变得透明,完美的仪表盘和即时告警机制分担了运维人员的压力。本书全面系统地介绍Prometheus的原理架构以及应用场景,并结合了作者多年的经验进行了深入的解读,是全方位学习Prometheus的一本好书。
|
內容簡介: |
本书系统化介绍云原生监控系统Prometheus的基本概念和使用方法。本书从基础内容讲起,由浅入深,分析了监控系统的主要功能和运维原则。主要内容包括三大部分,第壹部分“入门基础篇”介绍初识Prometheus云监控的基本点和主要方向,Prometheus架构及核心组件,监控指标与Labels,常用Exporter探测器等;第二部分“技术提高篇”介绍服务发现、告警处理、PromQL数据查询、可视化、Pushgateway等;第三部分“应用实践篇”介绍监控方向,如监控Docker与cAdvisor、Kubernetes、业务程序,编写Exporter探测器和日志监控指标,生产部署,云业务监控平台搭建等。
|
關於作者: |
陈金窗
资深运维技术专家,曾就职于太极、普天、姬慕石、金山软件、中国电信等多家国内外著名企业。从事IT基础设施建设、运维与技术管理20多年,建设、维护超过100个大、中型IT项目和产品,既对服务器、存储、网络、系统、中间件等IT技术有丰富的实践经验,又对ITIL、DevOps、PMP等运维管理有落地经验,特别是对云计算环境中维护管理的相关开源技术有深刻理解,牵头著有《Ansible自动化运维技术与最佳实践》。
刘政委
资深运维技术与管理人员,大型在线游戏和手游自动化运维老兵;对自动化运维和监控技术有着丰富的实践经验,善于互联网技术团队的建设和管理; 深耕IT基础运维规划和建设,对私有云项目实施有一定的实践经验,曾合著《Ansible自动化运维技术与最佳实践》一书。
郑少斌陈金窗
资深运维技术专家,曾就职于太极、普天、姬慕石、金山软件、中国电信等多家国内外著名企业。从事IT基础设施建设、运维与技术管理20多年,建设、维护超过100个大、中型IT项目和产品,既对服务器、存储、网络、系统、中间件等IT技术有丰富的实践经验,又对ITIL、DevOps、PMP等运维管理有落地经验,特别是对云计算环境中维护管理的相关开源技术有深刻理解,牵头著有《Ansible自动化运维技术与最佳实践》。
刘政委
资深运维技术与管理人员,大型在线游戏和手游自动化运维老兵;对自动化运维和监控技术有着丰富的实践经验,善于互联网技术团队的建设和管理; 深耕IT基础运维规划和建设,对私有云项目实施有一定的实践经验,曾合著《Ansible自动化运维技术与最佳实践》一书。
郑少斌
长期从事云计算相关产品、研发、运维等工作,具备丰富的理论及实践经验,主持国家专项1个,获得已授权专利6个,并曾在通信协会担任数据中心联盟可信云工作组核心专家、通信网络安全服务能力评定技术专家。
张其栋
中国电信云公司软件工程师,主要负责私有容器云平台的研发工作。一直从事云计算、SDN领域的研究与实践,对Docker、Kubernetes、Prometheus、Mesos等技术有丰富的实战经验。
|
目錄:
|
前 言
第一部分 概述
第1章 云计算时代的监控系统2
1.1 云计算时代的应用系统2
1.1.1企业“IT云化”实现数字化转型3
1.1.2 云计算时代的IT架构特点3
1.1.3 云计算时代的IT管理变革4
1.2 云计算监控的目标和挑战5
1.2.1 云计算监控目标5
1.2.2 云计算监控挑战7
1.3 云计算监控的范围和架构8
1.3.1 监控管理的范围8
1.3.2 监控系统的基本架构9
1.4 百花齐放的开源监控软件工具10
1.4.1 监控系统成熟度11
1.4.2 Zabbix11
1.4.3 OpenTSDB12
1.5 Prometheus监控系统13
1.5.1 应运而生,茁壮成长13
1.5.2 功能完善、监控所有层级指标15
1.5.3开放、高效、易用的完整解决方案16
1.6 本章小结18
第2章Prometheus基本概念及部署19
2.1 Prometheus架构19
2.2 Prometheus快速部署20
2.2.1 使用二进制文件快速部署21
2.2.2 使用Docker快速安装25
2.2.3 Prometheus Web UI26
2.3 Prometheus相关概念29
2.3.1 数据模型29
2.3.2 Metric的四种类型30
2.3.3 Jobs 和 Instances32
2.4 Prometheus核心组件34
2.5 本章小结35
第二部分 Prometheus技术基础
第3章 Exporter38
3.1 概述38
3.1.1 Exporter类型38
3.1.2 文本数据格式39
3.1.3 获取Exporter40
3.2 主机监控42
3.2.1 Linux主机监控42
3.2.2 Windows主机监控52
3.3 数据库监控53
3.3.1 MySQL Server exporter54
3.3.2 Redis exporter60
3.4 Nginx监控62
3.5 Prometheus之黑盒监控64
3.5.1 软件安装与部署65
3.5.2 配置文件67
3.6 本章小结71
第4章 服务发现73
4.1 基于文件的服务发现74
4.2 基于Consul的服务发现78
4.2.1 Consul体验应用信息80
4.2.2 软件下载与部署80
4.2.3 服务注册发现83
4.2.4 与Prometheus集成85
4.3 基于DNS的服务发现87
4.3.1自建DNS服务SRV记录设置87
4.3.2阿里云域名解析SRV记录设置88
4.4 Relabelling89
4.5 本章小结93
第5章 PromQL94
5.1 时序数据库94
5.2 PromQL简介96
5.2.1 数据模型与数据类型96
5.2.2 时间序列选择器97
5.3 PromQL聚合操作100
5.4 PromQL运算符102
5.4.1 算术运算符102
5.4.2 关系运算符103
5.4.3 向量匹配105
5.4.4 逻辑运算符107
5.4.5 运算符优先级108
5.5 PromQL函数108
5.5.1 数学函数108
5.5.2 时间函数109
5.5.3 标签操作函数110
5.5.4 Counter指标增长率111
5.5.5 Gauge指标趋势变化预测111
5.6 PromQL查询分析112
5.6.1 指标分析112
5.6.2 PromQL操作分析113
5.7 本章小结113
第6章 告警处理115
6.1 概述115
6.2 Alertmanager部署116
6.2.1 Alertmanager机制116
6.2.2 使用二进制文件方式安装117
6.2.3 使用Docker安装120
6.3 Alertmanager配置120
6.3.1 global120
6.3.2 templates122
6.3.3 route122
6.3.4 receivers124
6.3.5 inhibit_rules125
6.4 Prometheus告警规则126
6.4.1 与Alertmanager关联126
6.4.2 告警规则127
6.4.3 使用模板132
6.5 告警接收器133
6.5.1 Email接收告警133
6.5.2 企业微信接收告警136
6.5.3基于Webhook的钉钉接收告警142
6.5.4 告警通知模板146
6.6 告警临时静默147
6.7 本章小结148
第7章 可视化149
7.1 概述149
7.2 Grafana安装150
7.2.1 在CentOS上安装151
7.2.2 在Windows上安装154
7.2.3 使用Docker安装155
7.3 Grafana基本概念156
7.4 Prometheus数据源158
7.4.1 数据源添加158
7.4.2 页面UI说明160
7.5 仪表盘导入161
7.5.1 Node Exporter仪表盘161
7.5.2 Windows Node仪表盘164
7.5.3 MySQL仪表盘166
7.5.4 Redis仪表盘168
7.5.5 Nginx仪表盘168
7.5.6 Blackbox Exporter仪表盘169
7.6 定制监控图表171
7.6.1 定制仪表盘171
7.6.2 定制面板175
7.7 本章小结183
第8章 Pushgateway184
8.1 概述184
8.2 Pushgateway集成185
8.2.1 软件下载与部署186
8.2.2 Pushgateway UP状态187
8.3 Pushgateway数据管理187
8.3.1向Pushgateway发送和查看监控指标187
8.3.2删除Pushgateway中的监控标准189
8.3.3基于推送的Prometheus监控189
8.4 本章小结192
第三部分 监控综合实践
第9章 OpenStack云计算监控194
9.1 OpenStack监控架构194
9.2 OpenStack Exporter196
9.2.1 OpenStack Exporter部署197
9.2.2 OpenStack监控可视化199
9.3 OpenStack Helm监控200
9.3.1基于OpenStack Helm部署Prometheus200
9.3.2基于OpenStack Helm部署Grafana203
9.4 本章小结204
第10章 Docker容器监控205
10.1 Docker容器架构与监控205
10.1.1 Docker容器架构205
10
|
內容試閱:
|
从互联网、移动计算到云计算、大数据、人工智能,十多年来,信息技术的日新月异催生了不断涌现的互联网新业态,也推动了传统行业投身于数字化转型的创新浪潮。云计算是IT信息技术发展和服务模式创新的集中体现,是信息化发展的重大变革和必然趋势。特别是在开源云计算技术蓬勃发展的过程中,Kubernetes、容器、微服务、区块链、智能运维、大数据等技术和理念的融合应用,已经成为影响云计算发展格局的关键。不少企业已经在生产环境中大规模使用容器技术支撑微服务化的应用,获得了灵活、快速、弹性、高效所带来的收益。
云时代监控将面临四大挑战:
持续变更下的监控。
自下而上、自上而下以及在云环境中的监控都遇到难题。
监控微服务架构。
处理大容量的分布式(日志)数据。
因此,监控系统将成为云平台的重要工具。优秀的监控系统不仅需要兼容各种设备和环境,还需要具备高性能、高可靠、易运维等特性,Prometheus正是优秀的代表。伴随着容器等相关技术的兴起,Prometheus正逐步成为容器监控的标准,对于传统应用和设备也有很好的兼容性。Prometheus由Go语言编写而成,采用Pull方式获取监控信息,并提供了多维度的数据模型和灵活的查询接口。Prometheus不仅可以通过静态文件配置监控对象,还支持自动发现机制,能够通过Kubernetes、Consul、DNS等多种方式动态获取监控对象。借助Go语言的高并发特性,单机Prometheus可以采集数百个节点的监控数据,每秒可采集数百万个指标。
本书从运维(Ops)角度对Prometheus监控的各项功能进行详细介绍,对Prometheus的系统架构、Exporter、服务发现、PromQL数据查询、告警处理、Grafana可视化等进行了深入浅出的探讨。
本书主要分三部分:第一部分是概述,重点阐述云计算时代监控系统的特点及其面临的挑战,Prometheus监控的基本概念、组成、部署。第二部分是Prometheus技术基础,重点介绍Prometheus生态系统涉及的Exporter、服务发现、PromQL数据查询、告警处理、Grafana可视化、Pushgateway等监控组件,详细讲解各组件的相关概念、实现原理、具体使用等。第三部分是监控综合实践,从常用的监控需求出发,讲解OpenStack云计算监控、Docker容器监控、Kubernetes监控、微服务及业务监控、日志监控的设计与实现,最后讲解Prometheus在生产环境中部署的实践。
全书第1、9、10、12~14章由陈金窗和郑少斌编写,第2~8章由刘政委编写,第11章由张其栋编写,最后由陈金窗、刘政委共同进行修订。
下面介绍各章的主要内容。
第一部分包括第1~2章。
第1章从云计算时代的应用特点入手,分析云计算环境下监控面临的挑战,提出需要怎样的监控。接着简要介绍监控系统的基本架构及工具,最后重点介绍Prometheus的诞生及其解决方案的特点。
第2章讲解Prometheus的基本概念及部署,包括Prometheus技术架构、部署方式,最后介绍相关的基本概念。
第二部分包括第3~8章。
第3章对Exporter的类型、文本数据格式进行说明,讨论如何从官方的Exporter列表获取常用的Exporter,比如用于监控基础设施中服务器性能的node_exporter、wmi_exporter,用于监控数据库的mysqld_exporter和redis_exporter等。
第4章讲解如何使用服务发现来发现主机和服务,并将它们暴露给Prometheus。介绍Prometheus发现机制中基于文件、基于Consul和基于DNS的服务发现,使其能完美地解决当下云原生态场景下的各类服务监控项目。
第5章首先对时序数据库进行介绍,然后对PromQL进行详细说明,包括PromQL数据类型、时序选择器、聚合操作、各类运算符和函数。最后通过简单的示例对PromQL查询操作进行汇总分析。
第6章对Alertmanager组件的安装、配置进行详细说明,再介绍Prometheus告警规则的定义,最后使用Email、企业微信和基于Webhook的钉钉实现告警通知的接收。
第7章介绍Grafana可视化展示,阐述其中的基本概念,结合读者自己的应用环境生成理想的漂亮图表,最终完全熟练掌握它的各个管理组件。
第8章介绍Prometheus的核心组件Pushgateway,重点介绍Pushgateway实例部署以及场景应用。
第三部分包括第9~14章。
第9章首先介绍OpenStack云管平台及其监控架构,然后介绍两种Prometheus与OpenStack整合的监控解决方案——OpenStack Exporter和OpenStack Helm监控方式。
第10章介绍Docker相关的监控方法,特别讲解了Google 开源的容器度量收集工具cAdvisor的部署、使用、集成方案。最后对Docker容器的监控指标、cAdvisor架构进行深入的分析。
第11章介绍Prometheus如何监控Kubernetes,详细介绍Kubernetes部署Prometheus的两种方式,最后介绍服务配置、监控对象以及数据展现和告警。
第12章介绍Prometheus如何对微服务运行状态进行监控,重点讲解基于Spring Cloud构建微服务的技术体系,之后讲解业务运营指标以及如何构建运营指标体系,并结合Spring Boot介绍监控埋点、自定义监控指标以及具体应用。
第13章介绍如何使用日志条目来创建度量指标,然后由Prometheus来抓取数据并在Grafana中展示。
第14章介绍在生产环境中应用Prometheus应该考虑的问题以及解决的方法,包括支持高可用规模
|
|