SlideShare a Scribd company logo
1 of 41
Download to read offline
当我们在聊监控
@3D 2017-05-26
AGENDA
⽬目的
对象
⼿手段
实施
职责
⽬目的
印象中的监控
Zabbix
ELK
Zabbix 提供各种服务器器的 Load / CPU Usage / Alive

ELK 提供 Nginx 的⽇日志,http status code,Application Log

出现故障时候,会有报警通知,上线操作;

平⽇日⾥里里可以看到 ELK 花花绿绿的⼤大⾯面板,有各位领导来莅临检查
⽬目的
故障发⽣生时提供数据报警
提供分析原因数据
⽬目的
在故障发⽣生之前发现问题
告诉故障原因
故障警报处理理当然很重要,但是对于整站可⽤用性,根本问题是不不让问题出现,

或者在问题出现的早期就解除问题。前者是⾼高可⽤用范畴,后者就是监控的范畴。

考虑的视⻆角不不⼀一样,传统的考虑是 OPS,新的视⻆角是 SRE

SRE 考虑的是 Site Reliability。

监控的⽬目的是要将灾难消灭在襁褓⾥里里,并且在灾难即将出现或者发⽣生问题时,

直接告诉⼤大家根本的原因。

为了了达成这两个⽬目标,我们必须先明确

什什么是故障?哪些对象将发⽣生故障?他们的故障有相似之处么?
AGENDA
⽬目的
对象
⼿手段
实施
职责
对象
硬件
服务器器
⽹网络设备
软件
Application
Infrastructure
我们说监控的对象,其实说的是所需求的资源,

这些资源有哪些呢?

这些⾮非常粗粒度的描述,粗以⾄至于没有实⽤用价值。

那我们继续将其细化。
CPU
Memory
Network interface
Storage devices
Controllers
这是针对 Server 细粒度的对象

——

光知道要监控哪些对象还不不⾏行行,针对监控对象,

我们需要明确需要监控的指标,这些指标有专有名词,叫做 Service Level Indicator

基于 SLI 建⽴立的数字范围,称之为 Service Level Objectives
Service Level
Indicator
我给⼤大家看看做具体是哪些?
User-facing Service
Availability / Latency /
Throughput
Storage System
Latency / Throughput /
durability
将资源抽象为两种类型,⾯面向⽤用户的服务和存储系统,

上⾯面列列举了了这两种系统常⻅见的 SLI

——

光有 SLI 还不不够,我们还应该有⼀一些
AGENDA
⽬目的
对象
⼿手段
实施
职责
⼿手段
Principle
Reasonable
Quantifier
当某个系统出现问题时候,我们如果说 CPU ⾼高了了,内存爆了了,线程池炸了了。

那么可能会受到质疑,说这不不科学,

那什什么是科学的?古希腊哲学家在思考宇宙的时候,提出了了⼀一种⼼心智能⼒力力,

打开了了科学的窗⼦子,这就是 Reasonable,中⽂文名叫理理智。

使⽤用 Reasonable 探讨意味着探讨要深⼊入问题的本质。

但是光有 Reasonable 还不不⾏行行的,亚⾥里里⼠士多德的著作⾥里里⾯面,没有任何数据公式。

他对现象只有描述,只是定性分析。

这个状态到伽利利略略那⾥里里出现了了变化,

我们第⼆二个关键词是 Quantifier,量量化。

伽利利略略率先使⽤用定量量分析的⽅方法,运⽤用到动⼒力力学和天问学,开创了了近代科学。

我⽼老老婆学环境,⼀一直被化学⾏行行业诟病的⼀一点就是他们研究的范围太⼤大,量量化
QA
公司内部 QA 系统,定量量分析做得⾮非常不不做。

听说⼤大花也在做⼀一个基于 Jira 的定量量分析系统,我很⽀支持。
Service Level Objectives
2000 < QPS < 500
Latency < 500ms
Queen Waiting count < 500
USE Method
Brend Gregg
System Perfomance / dtrace / Netflix / SRE / flame graph
Utilization
Saturation
Error
Utilization:使⽤用率,CPU running percent,硬盘的 IO 

Saturation:饱和度,⼀一般偏存储型资源,内存使⽤用,硬盘使⽤用

Error:错误数

最容易易有歧义的是:低使⽤用率是否意味着低饱和度?

⾼高 load 的服务器器,是否意味着 CPU ⼀一定是繁忙的?为什什么?

突发访问 / IO 卡死,CPU wait
举个🌰 - MySQL
前段时间做 MySQL HA ,设计了了 MySQL 的监控,那么请⼤大家思考⼀一下

针对 MySQL,我们要做哪些监控呢?
Business
Questions:语句句计总,Throughput
Slow_queries:慢查询计总,Error
Com_select:查询语句句计总,Throughput
Com_insert:插⼊入语句句计总,Throughput
Com_update:更更新语句句计总,
Throughput
Threads & Connections
Threads_connected:当前连接数,
Utilization
Threads_running:当前使⽤用中连接数,
Utilization
Aborted_connects:尝试连接失败数,Error
Connection_errors_max_connections:由于
连接数话从⽽而失败的连接数,Error
Buffer
Innodb_buffer_pool_pages_total:内存使⽤用
⻚页数,Utilization
Innodb_buffer_pool_read_requests:读请求
数计总,Utilization
AGENDA
⽬目的
对象
⼿手段
实施
职责
实施
Source
System Log / Application Log
Metrics
Application
RPC
VM(JVM)
Infrastructure
Dropwizard Metrics
提供了了 Gauge / Meter / Timer / Histograme / Counter 等利利器器。

直接 pump 应⽤用状态

提供了了 JVM 数据
Pipe
Logstash
Flume
Systemd
Graylog
Zabbix Agent
Graylog
谁掌握了了标准,谁就垄断
Storage
Document Storage
Elasticsearch
Time Series DB
Influxdb
Kariosdb
Graphite
MySQL*
Visualization
Grafana
Kibana
Graylog Server
Zabbix Server
AGENDA
⽬目的
对象
⼿手段
实施
职责
职责
Application Life Cycle
哪⾥里里耗时间最⻓长?
了了解程度
可操作空间
收益
考虑的因素
就是你了了,各位⼯工程师们。
Ref
http://www.brendangregg.com/
usemethod.html http://
www.brendangregg.com/sysperfbook.html
https://landing.google.com/sre/book/
index.html

More Related Content

Similar to 2017 05 monitoring-introducing

How to test cloud platform
How to test cloud platformHow to test cloud platform
How to test cloud platformDenny Zhang
 
Spring boot 简介
Spring boot 简介Spring boot 简介
Spring boot 简介宇帆 盛
 
安博士Asec 2010年4月安全报告
安博士Asec 2010年4月安全报告安博士Asec 2010年4月安全报告
安博士Asec 2010年4月安全报告ahnlabchina
 
從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung
從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung
從「會動就好」到「持續營運」[2023/06/24] @Agile.TaichungJason Cheng
 
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)National Cheng Kung University
 
信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressAppzhoujg
 
深入浅出复合事件处理(CEP)
深入浅出复合事件处理(CEP)深入浅出复合事件处理(CEP)
深入浅出复合事件处理(CEP)Dahui Feng
 
GlassFish特性介绍
GlassFish特性介绍GlassFish特性介绍
GlassFish特性介绍Jim Jiang
 
Head first in xmemcached yanf4j
Head first in xmemcached yanf4jHead first in xmemcached yanf4j
Head first in xmemcached yanf4jwavefly
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作maclean liu
 
03 -黄朝兴--腾讯游戏
03 -黄朝兴--腾讯游戏03 -黄朝兴--腾讯游戏
03 -黄朝兴--腾讯游戏勇浩 赖
 
(宇宏)Talend工具說明
(宇宏)Talend工具說明(宇宏)Talend工具說明
(宇宏)Talend工具說明Sonny Chen
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器Leyi (Kamus) Zhang
 
WebConf 2013「Best Practices - The Upload」
WebConf 2013「Best Practices - The Upload」WebConf 2013「Best Practices - The Upload」
WebConf 2013「Best Practices - The Upload」Orange Tsai
 
Linux运维趋势 第16期 cdn缓存系统
Linux运维趋势 第16期 cdn缓存系统Linux运维趋势 第16期 cdn缓存系统
Linux运维趋势 第16期 cdn缓存系统51CTO
 
DevSecOps-The Key of Continuous Security
DevSecOps-The Key of Continuous SecurityDevSecOps-The Key of Continuous Security
DevSecOps-The Key of Continuous Security4ndersonLin
 
91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOps91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOpsAndrew Wu
 
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引liu sheng
 

Similar to 2017 05 monitoring-introducing (20)

How to test cloud platform
How to test cloud platformHow to test cloud platform
How to test cloud platform
 
Spring boot 简介
Spring boot 简介Spring boot 简介
Spring boot 简介
 
安博士Asec 2010年4月安全报告
安博士Asec 2010年4月安全报告安博士Asec 2010年4月安全报告
安博士Asec 2010年4月安全报告
 
從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung
從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung
從「會動就好」到「持續營運」[2023/06/24] @Agile.Taichung
 
Planet Lab
Planet LabPlanet Lab
Planet Lab
 
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
 
信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp
 
深入浅出复合事件处理(CEP)
深入浅出复合事件处理(CEP)深入浅出复合事件处理(CEP)
深入浅出复合事件处理(CEP)
 
GlassFish特性介绍
GlassFish特性介绍GlassFish特性介绍
GlassFish特性介绍
 
Head first in xmemcached yanf4j
Head first in xmemcached yanf4jHead first in xmemcached yanf4j
Head first in xmemcached yanf4j
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作
 
03 -黄朝兴--腾讯游戏
03 -黄朝兴--腾讯游戏03 -黄朝兴--腾讯游戏
03 -黄朝兴--腾讯游戏
 
(宇宏)Talend工具說明
(宇宏)Talend工具說明(宇宏)Talend工具說明
(宇宏)Talend工具說明
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器
 
WebConf 2013「Best Practices - The Upload」
WebConf 2013「Best Practices - The Upload」WebConf 2013「Best Practices - The Upload」
WebConf 2013「Best Practices - The Upload」
 
Linux运维趋势 第16期 cdn缓存系统
Linux运维趋势 第16期 cdn缓存系统Linux运维趋势 第16期 cdn缓存系统
Linux运维趋势 第16期 cdn缓存系统
 
Xpp
XppXpp
Xpp
 
DevSecOps-The Key of Continuous Security
DevSecOps-The Key of Continuous SecurityDevSecOps-The Key of Continuous Security
DevSecOps-The Key of Continuous Security
 
91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOps91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOps
 
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
 

More from Jingchao Di

2018 01 metrics-monitoring-system-v2
2018 01 metrics-monitoring-system-v22018 01 metrics-monitoring-system-v2
2018 01 metrics-monitoring-system-v2Jingchao Di
 
沪江去 Windows 实践 - 从 SQL Server 到 MySQL
沪江去 Windows 实践 - 从 SQL Server 到 MySQL沪江去 Windows 实践 - 从 SQL Server 到 MySQL
沪江去 Windows 实践 - 从 SQL Server 到 MySQLJingchao Di
 
Brief principle and principle of coding
Brief principle and principle of codingBrief principle and principle of coding
Brief principle and principle of codingJingchao Di
 
Mitmproxy usage v20141216
Mitmproxy usage v20141216Mitmproxy usage v20141216
Mitmproxy usage v20141216Jingchao Di
 
打造可维护的应用 20160704
打造可维护的应用 20160704打造可维护的应用 20160704
打造可维护的应用 20160704Jingchao Di
 
Window management v16.03.23
Window management v16.03.23Window management v16.03.23
Window management v16.03.23Jingchao Di
 
HTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuHTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuJingchao Di
 

More from Jingchao Di (7)

2018 01 metrics-monitoring-system-v2
2018 01 metrics-monitoring-system-v22018 01 metrics-monitoring-system-v2
2018 01 metrics-monitoring-system-v2
 
沪江去 Windows 实践 - 从 SQL Server 到 MySQL
沪江去 Windows 实践 - 从 SQL Server 到 MySQL沪江去 Windows 实践 - 从 SQL Server 到 MySQL
沪江去 Windows 实践 - 从 SQL Server 到 MySQL
 
Brief principle and principle of coding
Brief principle and principle of codingBrief principle and principle of coding
Brief principle and principle of coding
 
Mitmproxy usage v20141216
Mitmproxy usage v20141216Mitmproxy usage v20141216
Mitmproxy usage v20141216
 
打造可维护的应用 20160704
打造可维护的应用 20160704打造可维护的应用 20160704
打造可维护的应用 20160704
 
Window management v16.03.23
Window management v16.03.23Window management v16.03.23
Window management v16.03.23
 
HTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– ShiuHTML5 实战 WebApp 阅读应用– Shiu
HTML5 实战 WebApp 阅读应用– Shiu
 

2017 05 monitoring-introducing