zabbix监控哪些东西_运维必知必会的监控知识体系全梳理 (下)

护航小编接着上次《运维必知必会的监控知识体系全梳理(上)》继续为大家带来精彩内容~

六、监控指标

上面了解了监控方法、目标、流程、也了解了监控有哪些工具,可能有人会疑惑,我们具体要监控些什么东西,在这里我进行了分类整理,包含硬件监控、系统监控、应用监控、网络监控、流量分析、日志监控、安全监控、API监控、性能监控、业务监控。

1、硬件监控

早期我们通过机房巡检的方式,查看硬件设备灯光闪烁情况判断是否故障,这样非常浪费人力,并且是重复性无技术含量的工作,大家懂得。

8b1ff4741a488e1a96a541590f35c6d6.png

当然我们现在可以通过IPMI对硬件详细情况进行监控,并对CPU、内存、磁盘、温度、风扇、电压等设置报警设置报警阈值(自行对监控报警内容编写合理的报警范围) 。

IPMI监控硬件服务参考资料:Zabbix IPMI Interface

b7f1de9c8a37ea7b17ffba1444d11663.png

2、系统监控

中小型企业基本全是Linux服务器,那么我们肯定是要监控起系统资源的使用情况,系统监控是监控体系的基础。

监控主要对象:

8126a106a6e03ccd48685935f1e596c8.png

CPU有几个重要的概念:上下文切换、运行队列和使用率。这也是我们CPU监控的几个重点指标。

通常情况,每个处理器的运行队列不要高于3,CPU 利用率中用“户态/内核态”比例维持在70/30,空闲状态维持在50%,上下文切换要根据系统繁忙程度来综合考量。

针对CPU常用的工具有:htop、top、vmstat、mpstat、dstat、glances。Zabbix提供系统监控模板:Zabbix Agent Interface。

41f6bfca40659552784f9eb7a3d54fa0.png

CPU整体状态

a5257521bd788a3cb34351f46a268217.png

上下文切换

bb2f6f2e2db26604bea890b9b1618aa7.png

负载状态

内存:通常我们需要监控内存的使用率、SWAP使用率、同时可以通过Zabbix描绘内存使用率的曲线图形发现某服务内存溢出等。

针对内存常用的工具有:free、top、vmstat、glances。

b3b9d1ceaaf5f5862bca9556ab820542.png

内存使用率

IO分为磁盘IO和网络IO。除了在做性能调优我们要监控更详细的数据外,日常监控只关注磁盘使用率、磁盘吞吐量、磁盘写入繁忙程度,网络也是监控网卡流量即可。常用工具有:iostat、iotop、df、iftop、sar、glances。

3a38cd1f6beee2c3df156e29598df401.png

磁盘使用率

cc4663f85e6f4862b0689498a9dd4694.png

磁盘读/写吞吐

104e6d9bb06b7e3ec2c4a6ba899bd965.png

网卡进出口流量

4775047d14e60dd7bb820c20fd9d07c2.png

TCP11种状态信息

其它系统监控还有运行的进程端口、进程数、登陆用户、Open File等(详细查看Zabbix自带OS Linux模板)。

6bcfaed1fc40edfabf74e7df1776b4b8.png

其它相关监控

3、应用监控

把硬件监控和系统监控研究明白后,我们进一步操作是需要登陆到服务器上查看服务器运行了哪些服务,都需要监控起来。

应用服务监控也是监控体系中比较重要的内容,例如:
LVS、HAProxy、Docker、Nginx、PHP、Memcached、Redis、MySQL、RabbitMQ等,相关的服务都需要使用zabbix监控起来。

85cf3427a9e087a515c4fc00ff56175d.png

nginx_status

761d04e6463c9c6d0e98e84b87f3a791.png

PHP-FPM_status

7cb5431c6c0c57927520bdf8cbc1f094.png

Redis_status

e43eedc9a16bf505ec63e9c1675006b9.png

JVM监控

笔者之前写过服务监控详细的操作过程,这里就不一一展示,详情访问:Zabbix监控各种应用服务。

  • Zabbix提供应用服务监控:Zabbix Agent UserParameter

  • Zabbix提供的Java监控:Zabbix JMX Interface

  • Percona提供MySQL数据库监控:percona-monitoring-plulgins

4、网络监控

作为一个针对全国用户的电商网站,时刻掌握各地到机房的网络状态也是必须的。

网络监控是我们构建监控平台是必须要考虑的,尤其是针对有多个机房的场景,各个机房之间的网络状态,机房和全国各地的网络状态都是我们需要重点关注的对象,那如何掌握这些状态信息呢?我们需要借助于网络监控工具Smokeping。

Smokeping 是rrdtool的作者Tobi Oetiker的作品,是用Perl写的,主要是监视网络性能,www服务器性能,DNS查询性能等,使用rrdtool绘图,而且支持分布式,直接从多个agent进行数据的汇总。

同时,由于自己监控点比较少,还可以借助很多商业的监控工具,比如监控宝、基调、博瑞等。同时这些服务提供商还可以帮助你监控CDN的状态。

ba727bea36678363261ea2e9d3d21dce.png

smokeping

b7d2bb8cbb22b58cd9e8f4bdc7f44ae5.png

560d108b07d1375f8538fa56b3543060.png

监控宝

5、流量分析

网站流量分析对于运维人员来说,更是一门必须掌握的知识了。比如对于一家电商公司来说:通过对订单来源的统计和分析,可以了解我们在某个网站上的广告投入有没有收到预期的效果。 可以区分不同地区的访问人数、甚至商品交易额等。百度统计、Google分析、站长工具等,只需要在页面嵌入一个js即可。

但是,数据始终是在对方手中,个性化定制不方便,于是Google出一个叫Piwik的开源分析工具。

8d77b9957cd54a8f2f94a3b2dd97deb6.png

piwik

394c8ee9166b2305b105e5a255d93215.png

百度统计

6、日志监控

通常情况下,随着系统的运行,操作系统会产生系统日志,应用程序会产生应用程序的访问日志、错误日志,运行日志,网络日志,我们可以使用ELK来进行日志监控。

对于日志监控来说,最见的需求就是收集、存储、查询、展示,开源社区正好有相对应的开源项目:Logstash(收集)+ElasticSearch(存储+搜索)+Kibana(展示)。

我们将这三个组合起来的技术称之为ELK Stack,所以说ELK Stack指的是Elasticsearch、Logstash、Kibana技术栈的结合。

如果收集了日志信息,部署更新有异常出现,可以立即在Kibana上看到。

ffbc4c16c1641d3c694a35de5e6f6c05.png

ELK日志展示

当然也可以通过Zabbix过滤错误日志来进行告警。

92ff3630e2d973f0a74a1587500ef86f.png

Zabbix日志展示

7、安全监控

虽然Linux开源的安全产品不少,比如四层iptables,七层WEB防护Nginx+Lua实现WAF,最后将相关的日志都收至ELkstack,通过图形化进行不同的攻击类型展示。但是始终是一件比较耗费时间,并且个人效果并不是很好。这个时候我们可以选择接入第三方服务厂商。

2e782d4771c4b24d5c1dd0c68081de26.png

6fbd5642ed7da0d3f872630accafa6af.png

ed698d868fc0fc7c2d37c37bad645412.png

某某三方安全

三方厂商提供全面的漏洞库,涵盖服务、后门、数据库、配置检测、CGI、SMTP等多种类型。

全面检测主机、Web应用漏洞自主挖掘和行业共享相结合第一时间更新0-day漏洞,杜绝最新安全隐患。

8、API监控

由于API变得越来越重要,很显然我们也需要这样的数据来分辨我们提供的 API是否能够正常运作。

监控API接口GET、POST、PUT、DELETE、HEAD、OPTIONS的请求。可用性、正确性、响应时间为三大重性能指标。

7061e6f1a0d8d64586b17a97541a525b.png

API监控

c30c27e878c1234e6c0c9f150f467664.png

三方API监控

9b1f28d5dacd54360351a92bf4d67e83.png

81c3065671867e20e070b7d9da19640a.png

响应时间

9、性能监控

全面监控网页性能,DNS响应时间、HTTP建立连接时间、页面性能指数、响应时间、可用率、元素大小等。Zabbix提供URL监控:Zabbix Web 监控。

d5bc3c509368a5eb02f9676950438dea.png

Zabbix站点监控

b8215d70d3da284e9d6e97635ff153f0.png

651072dfba4f0e9216b90b7169fd43ff.png

57d2d8fd6c154c1bbfd506511e6c2fa5.png

3e8997d545b7eef819f758c4bf22ab60.png

终端响应时间

第三方监控监控大盘。各类图表一目了然,全面体现网页性能健康状况。

10、业务监控

没有业务指标监控的监控平台,不是一个完善的监控平台,通常在我们的监控系统中,必须将我们重要的业务指标进行监控,并设置阈值进行告警通知。比如电商行业:

每分钟产生多少订单、每分钟注册多少用户、每天有多少活跃用户、每天有多少推广活动、推广活动引入多少用户、推广活动引入多少流量、推广活动引入多少利润等,重要指标都可以加入Zabbix上,然后通过Screen展示。

注:由于业务监控图表,涉及到隐私的数据太多,就不截图了。

七、监控报警

故障报警通知的方式有很多种,当然最常用的还是短信和邮件。

a80b65e75208fd3a03f03f1dae2606aa.png

7ba757b5c4f4fb0e6444d4e354f831e8.png

短信报警

8b0fe2652fdae78d716cde77519ac24b.png

邮件报警

八、报警处理

一般报警后故障如何处理,首先我们可以通过告警升级机制先自动处理,比如Nginx服务down了,可以设置告警升级自动启动Nginx。

但是如果一般业务出现了严重故障,我们通常根据故障的级别、业务,来指派不同的运维人员进行处理。

当然不同业务形态、不同架构、不同服务可能采用的方式都不同,这个没有一个固定的模式套用。

ec37ce0b6068e248dc07a160f1a4c5da.png

九、面试监控

在运维面试中,常常会被问题监控相关的问题,这个问题到底该如何来回答,我针对本文给大家提供了一个简单的回答思路

1、硬件监控

通过SNMP来进行路由器交换机的监控(这些可以跟一些厂商沟通来了解如何做)、服务器的温度以及其它,可以通过IPMI来实现。当然如果没有硬件全都是云,直接跳过这一步骤。

2、系统监控

如CPU的负载,上下文切换、内存使用率、磁盘读写、磁盘使用率、磁盘inode使用率。当然这些都是需要配置触发器,因为默认太低会频繁报警。

3、服务监控

比如公司用的LNMP架构,Nginx自带Status模块、PHP也有相关的Status、MySQL的话可以通过Percona官方工具来进行监控。Redis这些通过自身的info获取信息进行过滤等。方法都类似。要么服务自带。要么通过脚本来实现想监控的内容,以及报警和图形功能。

4、网络监控

如果是云主机又不是跨机房,那么可以选择不监控网络。当然你说我们是跨机房以及如何如何,推荐使用smokeping来做网络相关的监控,或者直接交给你们的网络工程师来做,因为术业有专攻。

5、安全监控

如果是云主机可以考虑使用自带的安全防护。当然也可以使用iptables。如果是硬件,那么推荐使用硬件防火墙。使用云可以购买防DDOS,避免出现故障导致down机一天。如果是系统,那么权限、密码、备份、恢复等基础方案要做好。Web同时也可以使用Nginx+Lua来实现一个Web层面的防火墙。当然也可以使用集成好的OpenResty。

6、Web监控

Web监控的话题其实还是很多。比如可以使用自带的Web监控来监控页面相关的延迟、js响应时间、下载时间、等等。这里我推荐使用专业的商业软件监控宝或听云来实现。毕竟人家全国各地都有机房(如果本身是多机房那就另说了)。

7、日志监控

如果是Web的话可以使用监控Nginx的50x、40x的错误日志,PHP的ERROR日志。其实这些需求无非是,收集、存储、查询、展示,我们其实可以使用开源的ELKStack来实现。Logstash(收集)、Elasticsearch(存储+搜索)、Kibana(展示)。

8、业务监控

上面做了那么多,其实最终还是保证业务的运行。这样我们做的监控才有意义。所以业务层面这块的监控需要和开发以及总监开会讨论,监控比较重要的业务指标,(需要开会确认)然后通过简单的脚本就可以实现,最后设置触发器即可 。

9、流量分析

平时我们分析日志都是拿awk sed xxx一堆工具来实现。这样对我们统计IP、PV、UV不是很方便。那么可以使用百度统计、Google统计、商业,让开发嵌入代码即可。为了避免隐私也可以使用Piwik来做相关的流量分析。

10、可视化

通过Screen以及引入一些第三方的库来美化界面,同时我们也需要知道,订单量突然增加、突然减少。或者说突然来了一大波流量,这流量从哪儿来,是不是推广了,还是被攻击了。可以结合监控平来梳理各个系统之间的业务关系。

11、自动化监控

如上我们做了那么多的工作,当然不能是一台一台的来加key实现。可以通过Zabbix的主动模式以及被动模式来实现。当然最好还是通过API来实现。

0cc10a6b9aa9d9044334a53c65c806e9.gif

8f80c7166fb7611169cebdd15faf511b.png

护航科技——值得信赖的IT服务合作伙伴

立足专业化IT服务与全球企业共同发展

专注 | 安全 | 可信赖

6223b6da8eef83e802fd5987800a83b3.png

  • 6
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值