登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

2023年06月出版新書

2023年05月出版新書

2023年04月出版新書

2023年03月出版新書

『簡體書』Prometheus云原生监控:运维与开发实战

書城自編碼: 3558987
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作者: 朱政科
國際書號(ISBN): 9787111667834
出版社: 机械工业出版社
出版日期: 2020-10-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 534

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
经纬度丛书·巴勒斯坦人的故事:流亡者的悲情、绝望与抗争
《 经纬度丛书·巴勒斯坦人的故事:流亡者的悲情、绝望与抗争 》

售價:NT$ 493.0
改变世界的哲学家们
《 改变世界的哲学家们 》

售價:NT$ 493.0
将军
《 将军 》

售價:NT$ 269.0
墓志的生成及其在唐代的衍变研究
《 墓志的生成及其在唐代的衍变研究 》

售價:NT$ 549.0
理解中国经济:在大变局中读懂新机遇
《 理解中国经济:在大变局中读懂新机遇 》

售價:NT$ 252.0
饥饿与国家:苏丹的饥荒、奴隶制和权力(1883~1956)
《 饥饿与国家:苏丹的饥荒、奴隶制和权力(1883~1956) 》

售價:NT$ 386.0
管好你的钱:人人都要懂的财富传承(一本书带你了解财富传承的7种方式)
《 管好你的钱:人人都要懂的财富传承(一本书带你了解财富传承的7种方式) 》

售價:NT$ 381.0
新质生产力:中国创新发展的着力点与内在逻辑
《 新质生产力:中国创新发展的着力点与内在逻辑 》

售價:NT$ 442.0

編輯推薦:
这是一本指导初中级读者轻松搭建Prometheus监控系统并在实际工作中迅速用起来,以时刻掌握私有云、公有云、混合云等数据中心以及其上应用整体运行情况的Prometheus“百科全书”。从内容层面来说,书中不仅从系统机构和工作原理两个维度对Prometheus进行了深度剖析,还给出了大量实战案例和常见问题解决方案,同时以附录的形式给出了Prometheus端口列表、PromQL基础语法速查表、自监控指标等常用内容集结;从读者层面来说,本书不仅针对运维人员给出了Prometheus对接各种云原生应用,并实现事前预警、事中报警、事后提供翔实数据的方法,还是针对开发人员给出Prometheus主要组件的源码级分析及部分功能的二次开发实现。只有结合开发进行运维,才能真正确保业务稳定运行。
內容簡介:
本书主要围绕当前业界*流行的监控系统Prometheus展开,除了帮助读者快速了解Prometheus的概念、用途、环境搭建等系统性、宏观的认识,更多的让读者感受到Prometheus独孤九剑破众多技术壁垒的精彩。支持监控微服务、系统级监控、数据库监控、中间件监控、大数据监控等。
第1章主要介绍监控系统的相关概念。第2章介绍Prometheus的相关概念。第3章介绍SpringBoot如何集成Prometheus的实战案例。第4章介绍Prometheus中PromQL的相关概念。第5章继续介绍PromQL的更多高级用法。第6章介绍Prometheus的告警模块Alertmanager。第7章介绍Prometheus的exporter相关概念。第8章介绍Prometheus集成SpringBoot实战场景中的高级话题。第9章介绍Prometheus的集群实战。第10章介绍Prometheus的存储原理。第11章介绍Prometheus的其他相关技术。
關於作者:
作者简介
朱政科
架构师,十年IT老兵,对各种数据库连接池有深入的研究。
曾在阿里等一线互联网公司长期从事中间件的研发及团队管理工作,连续经历过3年“双11”大促,在大量的实践中积累了丰富的经验。
热爱开源,热爱新技术,对Apache ShardingSphere、Apache Skywalking等技术社区都做出过贡献。除了中间件技术,先后主导和参与了多个重要的物联网、人工智能等大型项目,对软件系统架构有深刻的积累和沉淀。
运营公众号《工匠人生》和知识星球《猪猪的架构师私密圈》。
目錄
赞誉
前言
第1章 监控之美1
1.1 监控:把握应用的脉搏2
1.2 监控架构分类6
1.3 MDD思想:从指标到洞察力10
1.3.1 MDD理念综述10
1.3.2 指导实践的3大监控方法论12
1.4 监控系统选型分析及误区探讨13
1.4.1 黑盒监控和白盒监控14
1.4.2 监控检查的两种模式—拉取和推送14
1.4.3 5种常见的监控系统15
1.4.4 监控系统的选型分析及误区探讨24
1.5 本章小结32
第2章 Prometheus入门33
2.1 Prometheus发展简史34
2.2 Prometheus的主要特点35
2.3 Prometheus架构剖析37
2.4 Prometheus的3大局限性43
2.5 快速安装并启动Prometheus43
2.6 本章小结49
第3章 Spring Boot可视化监控实战50
3.1 用Micrometer仪表化JVM应用50
3.2 在Spring Boot 2.x中集成Prometheus的方法53
3.2.1 引入Maven依赖54
3.2.2 application.properties配置56
3.2.3 通过MeterBinder接口采集和注册指标57
3.2.4 以埋点的方式更新指标数据58
3.2.5 效果展示59
3.3 针对Spring Boot 2.x采集并可视化相关数据61
3.4 第三方专业可视化工具—Grafana62
3.5 Grafana高级模板67
3.6 邮件告警的生成与扩展77
3.6.1 通过Alertmanager生成邮件告警77
3.6.2 邮件告警扩展:cc和bcc79
3.7 构建钉钉告警系统80
3.7.1 安装MacOS Docker80
3.7.2 安装Docker镜像81
3.7.3 钉钉接入设置83
3.7.4 钉钉告警功能验证84
3.8 本章小结86
第4章 PromQL让数据会说话87
4.1 初识PromQL87
4.1.1 PromQL的4种数据类型89
4.1.2 时间序列90
4.1.3 指标91
4.2 PromQL中的4大选择器94
4.2.1 匹配器95
4.2.2 瞬时向量选择器98
4.2.3 区间向量选择器99
4.2.4 偏移量修改器100
4.3 Prometheus的4大指标类型101
4.3.1 计数器101
4.3.2 仪表盘103
4.3.3 直方图104
4.3.4 摘要107
4.4 13种聚合操作109
4.5 Prometheus的3种二元操作符117
4.5.1 算术运算符118
4.5.2 集合逻辑运算符119
4.5.3 比较运算符120
4.5.4 优先级122
4.6 向量匹配122
4.6.1 一对一匹配122
4.6.2 一对多和多对一匹配123
4.6.3 多对多匹配124
4.7 本章小结124
第5章 PromQL高级实战125
5.1 Prometheus内置函数125
5.1.1 动态标签函数126
5.1.2 数学运算函数128
5.1.3 类型转换函数133
5.1.4 时间和日期函数133
5.1.5 多对多逻辑运算符函数137
5.1.6 排序函数138
5.1.7 Counter函数139
5.1.8 Gauge函数141
5.1.9 Histogram函数144
5.1.10 时间聚合函数145
5.2 HTTP API146
5.2.1 API响应格式148
5.2.2 表达式查询149
5.2.3 元数据管理150
5.2.4 其他拓展151
5.3 两种可定期执行的规则155
5.3.1 记录规则155
5.3.2 告警规则159
5.4 指标的抓取与存储160
5.4.1 用relabel_conf?igs抓取指标160
5.4.2 用metric_relabel_conf?igs存储指标163
5.5 通过调优解决PromQL耗尽资源问题166
5.6 本章小结166
第6章 Prometheus告警机制深度解析167
6.1 Alertmanager架构解析167
6.2 AMTool的安装与用法169
6.3 配置文件的编写与解读171
6.4 告警规则的定义177
6.5 关于告警的高级应用与问题处理180
6.5.1 Prometheus告警失灵180
6.5.2 出现告警轰炸的问题182
6.6 构建高可用告警集群184
6.7 本章小结186
第7章 Prometheus独孤九剑:通过定制Exporter监控一切187
7.1 Exporter概述187
7.2 Exporter的数据规范189
7.3 Exporter数据采集方式191
7.4 一个最简单的Exporter示例192
7.5 自己动手编写一个Exporter195
7.6 高质量Exporter的编写原则与方法198
7.6.1 分配合理的端口号198
7.6.2 设计落地页201
7.6.3 将软件版本信息提供给Prometheus的正确方法201
7.6.4 必备指标的梳理202
7.6.5 编写高质量Exporter的其他注意事项209
7.7 Node Exporter源码解析210
7.8 Exporter高级应用:开启TSL连接和Basic Auth认证214
7.8.1 准备证书214
7.8.2 支持TLS的配置方法214
7.8.3 支持Basic Auth的配置方法215
7.9 本章小结216
第8章 Spring Boot高级监控实战217
8.1 Controller监控实战217
8.2 业务代码监控实战218
8.3 通过注解进行监控的设置与实战221
8.4 Dubbo监控实战223
8.5 SPI机制原理解析225
8.6 SPI高级实战:基于Dubbo的分布式日志链路TraceID追踪228
8.7 集成Spring Boot时的常见问题及其解决方案231
8.8 关于Micrometer的两个常见问题及其解决方案234
8.8.1 极大值BUG问题235
8.8.2 Actuator内存溢出问题237
8.9 micrometer-spring-legacy源码解析242
8.9.1 spring.factories244
8.9.2 CompositeMeterRegistryAuto-Conf?iguration246
8.9.3 XX-Meter
內容試閱
为什么要写这本书
熟悉我的读者应该都知道,在这本书之前我写过一本书《HikariCP数据库连接池实战》。那本书解答了“HikariCP该如何监控”的问题,提出了HikariCP的主要监控指标,但是没有对Prometheus这项技术做专项分析。本书则弥补了那本书的遗憾,全面且系统地介绍了Prometheus这款监控产品,并将介绍对象由数据库连接池转移到监控产品本身。从HikariCP(光)到Prometheus(火),也展示了我对于技术的理解层层深入、渐入佳境的过程。
Prometheus是由SoundCloud开源的监控系统,是Google BorgMon监控系统的开源版本。Prometheus开源项目是继Kubernetes后第二个正式加入CNCF(Cloud Native Computing Foundation,云原生计算基金会)的项目,也是继Kubernetes之后第二个正式“毕业”的CNCF项目,是容器和云原生领域事实上的监控标准解决方案。
如今,Prometheus已经被全球众多企业广泛使用,它已经成为企业构建现代云原生架构的首选开源监控工具。近几年来,国内技术社区关于监控的讨论有很多,尤其是关于监控选型的讨论比较频繁,目前IT类公司有一个统一的趋势—使用Prometheus作为通用的监控系统解决方案。百度、京东、阿里、宜信、51信用卡等互联网公司都有专门的Prometheus研发及运维团队。
Prometheus既是一个监控系统,又是一个存储系统,可以说它提供了一个完备的监控生态。我和Prometheus有着不解之缘:早在2014年,我在阿里就职期间就接触过与TSDB时序数据库相关的技术;我后来研发的底层数据库中间件采用了HikariCP数据库连接池,数据库连接池的监控就依托于公司的Prometheus监控系统;2019年,我主导的项目Kubernetes+Prometheus一举拿下了公司年度最佳产研类项目,有10余人参与到这个项目中,通过项目室闭关的形式,用了半年多的时间将全公司的应用全部迁移到了Kubernetes集群上并接入了Prometheus监控。由于长期接触Prometheus,我也经常和一些使用者进行相关问题的讨论,这些经历帮我积累了宝贵的实战经验。
虽然Prometheus相关的书市面上有很多,但是大多都存在一些问题。首先,其中大多数书籍面向的群体仅是运维工程师,却忽略了开发者;其次,部分书籍专注于源码解析或者对Kubernetes技术进行介绍,却忽略了Prometheus本身的内容,比如PromQL是实战中非常重要的知识,但却少有书籍会通过理论联系实际的方式具体介绍;最后,一些书籍大量堆砌代码和概念,导致重点内容介绍不足和实战案例缺乏,这对实际工作不会有太多帮助。
本书在内容上深入浅出,注重实战性、实用性,兼顾开发者的诉求,可以让读者迅速对Prometheus形成闭环认知。书中还提炼了最佳实践以提升读者认知高度和实践能力。
读者对象
本书适合运维工程师和所有Java程序员阅读,尤其适合以下读者:
Java初中级开发者;
系统架构师;
中间件开发者;
运维工程师;
工作中使用Prometheus的公司与团队;
开设Prometheus相关课程的大专院校师生;
其他对Prometheus技术感兴趣的人员。
如何阅读本书
本书共分为11章,紧密围绕Prometheus的相关概念和技术展开介绍。
第1章主要介绍了监控系统的相关概念。本章首先介绍了监控的概念、监控的分类、MDD(指标驱动开发)的理念、Google四大黄金指标、USE方法、RED方法等知识;接着介绍了监控中的探针和内省、拉取和推送等常见手法;最后介绍了常见的监控系统Nagios、Zabbix、Ganglia、Open-Falcon、ZMon,以及进行监控系统选型时应该考虑的维度及误区。
第2章介绍了Prometheus的相关概念。从历史、特点、架构、局限性、快速开始这5个方面介绍了Prometheus是什么,它在监控领域有哪些使用场景,以及如何快速安装和启动Prometheus。
第3章介绍了在Spring Boot中如何集成Prometheus。本章通过介绍Micrometer的理论,辅以Spring Boot 2.x应用的案例,一步步教读者将Spring Boot 2.x应用数据传输到Prometheus监控系统中,再以可视化监控大盘的形式展现在Grafana仪表盘中。本章还介绍了当系统出现故障时,读者如何将Spring Boot 2.x应用的故障信息以告警的形式发送到邮箱或者钉钉中。本章内容对于广大开发者来说具有一定的实战指导作用。
第4章介绍了与PromQL相关的知识。PromQL是Prometheus实战的核心,是Prometheus
场景的基础,也是Prometheus的重中之重。本章用很大的篇幅,从时间序列、PromQL数据类型、指标类型、选择器、聚合操作、二元操作符、内置函数、最佳实践、性能优化等方面,通过理论联系实际的方式,全方位介绍了与PromQL相关的概念及其具体用法。
第5章介绍了PromQL的高级用法。首先介绍了39个PromQL内置函数,然后围绕HTTP API、记录规则、告警规则、metric_relabel_configs、relabel_configs等多个知识点,以理论联系实际、知识点结合案例的形式,全方位介绍了PromQL的高级用法和最佳实践。
第6章介绍了Prometheus的告警模块—Alertmanager。本章围绕Alertmanager告警的架构、工作原理、集群、触发的流程等展开介绍,接着拓展了告警分组、抑制、静默、延迟等众多知识点。读完本章,读者可以轻松理解告警是如何触发的,还可以分析、定位、解决告警轰炸、告警不准确等常见问题。
第7章介绍了Prometheus中与Exporter相关的概念。Exporter的来源主要有两个,一个是社区,另一个是用户自定义。本章从数据规范、数据采集方式、案例代码编写等方面一步步指导读者自定义Exporter。为了帮助读者提高编码水平和真正写好Exporter,本章还给出了写好Exporter的建议,并结合Node Exporter、Redis Exporter、MySQL Exporter、RocketMQ Exporter等的原理进行分析讲解。通过对本章的学习,读者可以掌握使用和定制Exporter的方法。
第8章介绍了与Spring Boot相关的高级话题,帮助读者了解Prometheus集成Spring Boot的原理、源码和解决方案。本章针对Prometheus监控RESTful、监控业务、通过注解进行监控、监控Dubbo这4个真实需求给出了源码级的技术指导方案。对Prometheus集成Spring Boot过程中可能产生的问题,如空指针、极大值、内存溢出等,本章也做了补充分析与解答。
第9章介绍了与Prometheus集群相关的实战内容。本章围绕Prometheus集群实战的架构问题,讨论了多种集群解决方案(简单HA、简单HA+远程存储、简单HA+远程存储+联邦集群)的理念、方法及优化手段,探究如何构建具有更高扩展性和可靠性的集群。本章是实战章节,在采集指标、推广Prometheus在企业中的部署等细节问题上都给出了指导。本章还通过搭建一个基于M3DB的简单HA+远程存储Prometheus K8S集群的真实案例,用步骤引导以及配置文件样例的形式,带领读者实际部署Prometheus集群。
第10章介绍了Prometheus的存储原理。Prometheus不仅是一个监控系统,还是一款优秀的时序数据库。本章主要围绕Prometheus 3.0版本的TSDB本地存储,对存储文件的格式、存储的原理、chunk、索引、block、WAL日志、tombstones、Checkpoint等相关知识点进行介绍,让读者清晰地了解Prometheus存储的运行机制。
第11章介绍了Prometheus的相关技术。本章首先介绍了Prometheus的伴侣—Thanos和M3DB,并对使用这些技术的过程中可能出现的一些问题给出了指导和建议;然后介绍了继承Prometheus理念的Loki,详细介绍了Loki、ELK等相关日志技术的原理和架构方案;最后,介绍了Operator模式和Prometheus Operator模式,以及在实战中针对压测、查找中间件(如Redis问题)等场景应该如何灵活运用Prometheus。
勘误和支持
由于作者的水平有限,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。为此,我在GitHub网站上专门建了一个Issue项目(https:github.comCharlesMasterPrometheusBookissues),你可以将书中的错误,以及你的疑问、改进建议以GitHub Issue的形式发布在Bug勘误表页面中,我将尽量在线上为你提供最满意的解答。当然,更希望大家通过Issue对Prometheus展开讨论,互相切磋和共同成长。
致谢
首先要感谢伟大的Prometheus,它是一款影响我整个人生的软件。
感谢曾经和我一起致力于研究Prometheus这项技术的领导、同事、朋友,你们投入的时间、精力和智慧为我提供了莫大的帮助。
感谢机械工业出版社华章公司的编辑杨福川老师和孙海亮老师,你们始终支持我的写作,你们的鼓励和帮助引导我顺利完成全部书稿。
最后感谢我的爸爸、妈妈、小姨、姨夫、爷爷、奶奶、外公、外婆,感谢你们将我培养成人,并时时刻刻给予我信心和力量!
谨以此书献给我最亲爱的家人,以及众多热爱Prometheus的朋友们!

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.