第1章 监控之美
监控是一门学问,也是一门艺术。
亚马逊副总裁、CTO Werner Voegls说过:“You build it,you run it,you monitor it.”(你构建了它,你运行它,你就有责任监控它。)爱尔兰第一代开尔文男爵Lord Kelvin[1]和现代管理学之父彼得·德鲁克[2]也曾说过:“If you can’t measure it,you can’t improve it.”(如果没有了如指掌,你就无法做出改进。)监控无处不在,对软硬件进行监控,并实现系统的可观察性是监控技术人员的必备技能。
近几年来,随着微服务、容器化、云原生等新架构思想的不断涌入,企业的IT架构逐渐从实体的物理服务器,迁移到以虚拟机为主的IaaS(Infrastructure-as-a-Service)云和以容器云平台为主的PaaS(Platform-as-a-Service)云上。日新月异的IT架构为监控系统带来了越来越多的挑战,也对技术人员提出了越来越高的要求。2019年阿里“双十一”期间,订单峰值达到54.4万笔/秒,创下了新的纪录。“双十一”期间的单日数据处理量也达到970PB。面对世界级流量洪峰,阿里巴巴实现了100%核心应用以云原生的方式上云,并交出了一份亮眼的成绩单:
1)“双十一”基础设施100%上云;
2)“双十一”在线业务容器规模达到200万;
3)采用基于神龙架构的弹性裸金属服务器,使计算性价比提升了20%。
阿里云在上万个Kubernetes(简称K8S)集群大规模实践中,保证了全球跨数据中心的可观测性,这正是基于Prometheus Federation的全球多级别监控架构实现的。
在正式介绍Prometheus之前,本章我们先来了解一些关于监控的基础知识。按照由浅入深的顺序,本章将依次讲解以下内容:监控的概念、监控的黄金指标、监控的手法、基于Metrics的MDD(Metrics-Driven-Development,指标驱动开发)思想、常见的监控技术产品及选型等。最后,补充一些后续章节会涉及的术语和概念。
[1] Lord Kelvin发明了Kelvin(又称热力学温标或绝对温标),这是国际单位制中的温度单位。此温标又称卡氏温标、开氏温标、克氏温标、凯氏温标。其零度称为绝对零度,标示为0K或零开,等于摄氏温标-273.15℃或华氏温标-459.67℉。
[2] 彼得·德鲁克(Peter F.Drucker,1909—2005),现代管理学之父,其著作影响了数代追求创新以及管理实践的学者和企业家,各类商业管理课程也都深受彼得·德鲁克思想的影响。