基础设施监控报警

监控指标

系统要素指标

  • CPU
  • 内存
  • 磁盘

网络要素指标

  • 带宽
  • 网络 IO
  • CDN
  • DNS
  • 安全策略
  • 负载策略

监控工具

第三方工具

  • ZABBIX
  • folcon
  • Prometheus -> 系统要素指标、大部分网络要素指标、开箱即用的容器监控

运营商高防 IP、CDN、DNS 监控平台 -> 网络攻击、网络加速等

报警策略

时间维度 -> 采集频率(分钟、秒)
报警级别 -> 紧急,重要,一般
阈值设定 -> 绝对值 / 占比

自身状态监控报警

监控指标

  • 流量
  • 耗时
  • 错误
  • 心跳
  • 客户端数
  • 连接数

image.png

监控工具

  • CAT
  • SkyWalking
  • Pinpoint
  • Zipkin
  • 自研

报警策略

监控粒度:项目、单机、接口
AIOps:根据报警级别自动处理

  • 流量报警 -> Kors
  • 稳定性问题 -> 单机下负载,迁移

依托第三方存储服务的监控报警

存储服务

  • DB
  • ES
  • Mongod
  • Redis
  • MQ

监控指标

  • 集群、节点和分片信息
  • 存储数据信息

本质也是集群服务,微服务监控的它也要监控

监控工具的方法论

数据采集

客户端收集

  • 方式:操作服务端之前加入代码进行统计
  • 缺点:干扰客户端代码

代理层收集

  • 方式:建设中间层,收集和上报数据
  • 例如:微服务的网关层,存储服务的代理层
  • 缺点:开发维护成本高,增加链路节点(风险提高)

服务端自带命令或 API

  • 例如:Redis info, mongostat, mongotop
  • 缺点:粒度较细时浪费服务端流量,影响可用性及性能

服务端日志

  • 例如:微服务自身的日志
  • 缺点
    • 存储服务为保证性能而使用异步写入支持,延迟较高
    • 第三方服务的特殊日志格式,提高采集门槛

在故障发生前

研发质量

代码质量

测试质量

黑盒测试
白盒测试
自动化测试
压力测试

个人能力

业务深度、广度
技术深度、广度