共计 991 个字符,预计需要花费 3 分钟才能阅读完成。
监控零碎是撑持咱们运维工作的基石之一,它可能帮忙咱们剖析零碎的长期趋势,在产生故障时发送报警,甚至主动修复故障,同时也是咱们剖析零碎性能和问题的第一手资料,所以监控零碎的部署和优化是必不可少的。
监控准则
- 监控有分级 。能够通过监控项一旦产生故障产生的影响来分级,不致命的监控告警尽量优化,不要占用 SRE 的 on-call 工作工夫。否则紧急告警太频繁会让 SRE 进入“狼来了”的状态,开始狐疑报警的有效性,以致于疏忽了真正危险的告警
- 监控要尽量简化 。监控项及报警规定要容易了解,可能代表一个清晰的故障场景,监控模板要常更新,去除无用监控项
- 监控景象 ,景象是指产生了什么,例如 cpu 利用率 100%,提早超过 2s,探针返回 404 错误码等,实时抓取第一手数据,每个人对监控到的景象的了解是不一样的。如何剖析监控数据是另一个零碎的事,所以监控项尽量不要加本人的剖析逻辑
监控形式:
白盒监控:
依附业务零碎外部裸露的一些指标进行监控,如日志接口,java 虚拟机监控接口,或业务零碎外部本人开发的 http 申请统计接口。白盒监控要求对业务零碎外部架构十分相熟,可能监控数据,预测趋势
黑盒监控:
通过测试某种内部用户可见的零碎行为进行监控。例如监控一个商城零碎,不须要理解零碎外部架构。只须要模仿内部用户的下单行为,发送一个 HTTP 申请给零碎,如果零碎返回的数据正确则认为零碎是失常的。
监控精度和阀值:
对于可用性较高的业务零碎须要设置更高的监控精度,例如 cpu 每分钟检测 1 次。但对于一些低可用性非重要零碎,监控频率能够调低到 1 小时 1 次。因为监控零碎自身会耗费服务器资源和存储资源,不合理的精度会导致服务器累赘减轻,影响本机运行的业务。
监控时大多数人偏向于监控平均值并设置阀值,但对于稳定比拟大的监控项是显著不适合的。例如监控 HTTP 申请提早,950 个申请提早是 10ms,50 个申请提早是 10s。这显著是有问题的,如果依照平均值计算会认为提早失常从而疏忽这个问题。 咱们能够通过高百分位或者直方图的形式来监控稳定率大的指标 。例如 90% 的申请提早小于 30ms,99.9% 的申请提早小于 60ms,以此来示意指标的散布状况
监控指标:
典型的有以下四类,残余的均是在此四类指标上的拓展
- 提早:服务解决某个申请须要的工夫
- 流量:QPS, 网络 i /o,磁盘 i /o
- 谬误:申请失败的数量和速率
- 饱和度:服务容量的使用率,如 CPU, 内存,存储等使用率
正文完