阅读 81

运维监控体系总结

总结归纳运维工作中的监控内容。

监控目标

明白监控的重要性以及使用监控要实现的业务目标。

通常包括以下三点:

  • 对目标系统进行实时监控

  • 监控可以实时反馈目标系统的当前状态,目标系统硬件、软件、业务是否正常、目前处于何种状态

  • 保证目标系统可靠性,业务可以持续稳定运行,有问题第一时间反馈出来,便于运维人员处理


监控方法

  • 了解监控对象,例如:CPU如何工作

  • 性能基准指标,例如:CPU使用率、负载、用户态、内核态、上下文切换

  • 报警阈值定义,例如:CPU负载高的定义,内核态、用户态多少算高

  • 故障处理流程,如何更高效处理故障的流程


监控核心

  • 发现问题

  • 定位问题

  • 解决问题

  • 总结问题,对故障原因及问题防范进行归纳总结,避免以后重复出现


监控工具

  • 老牌监控

    • Cacti

    • Nagios

    • SmokePing

  • 流行监控

    • Zabbix

    • OpenFalcon

    • Prometheus+Grafana

    • 滴滴开源夜莺Nightingale

    • Smartping(专用于网络监控)

    • Lepus天兔(专用于监控数据库)

  • 自研

  • 第三方监控

    • 监控宝

    • 听云

    • New Relic


监控流程

  • 采集,通过SNMP、Agent、ICMP、SSH、IPMI等对系统进行数据采集

  • 存储,各类数据库服务,MySQL、PostgreSQL

  • 分析,提供图形及时间线情况信息,方便我们定位故障所在

  • 展示,指标信息、指标趋势展示

  • 报警,电话、邮件、微信、短信、报警升级机制

  • 处理,故障级别判定,找响应人员进行快速处理


监控指标

硬件监控

  • 机器硬件:CPU温度、物理磁盘、虚拟磁盘、主板温度、磁盘阵列

  • IPMI工具无法获取到硬件的状态,可以借助MegaCli工具探测Raid磁盘队列状态

  • https://www.ibm.com/developerw ... ipmi/


系统监控

  • 主机存活

  • CPU、内存、硬盘、使用率

  • inode

  • 负载

  • 网卡出入带宽

  • TCP连接数

  • 磁盘读写、只读


应用监控

  • MySQL

    • 服务可用性

    • 内存使用率

    • 磁盘使用

    • 主从不同步及延迟

    • 备份情况

    • 连接数

  • Redis、Redis Cluster

    • 负载

    • 内存使用率

    • 连接数量

    • QPS

  • Nginx

    • 状态码

    • 连接状态信息

  • RabbitMQ

  • PHP-FPM

  • OpenLDAP

    • 接入IP

    • 调用次数

  • Zimbra

  • OpenVPN

    • 版本信息、当前在线

    • 用户、分配IP、客户端连接IP、通过IP获取地址位置、接收发送流量 连接时间 时长 连接ID

  • ELK

  • Graylog

  • GitLab

  • Jenkins

  • MongoDB

  • HAproxy


网络监控

  • 网络质量

  • 公网出口

  • 专线带宽

  • 网络设备


流量分析

日志监控

安全监控

URL、API监控

  • https://github.com/brotandgames/ciao,简单易用

  • https://github.com/710leo/urlooker

  • 自研

  • 阿里云方案


性能监控(APM)Java|PHP|Go|Nodejs|分布式链路追踪

  • PinPoint

  • Zipkin

  • SkyWalking

  • CAT、Jaeger


业务监控

电商业务为例:

  • 每分钟产生多少订单

  • 每分钟注册多少用户

  • 每分钟多少活跃用户

  • 每天有多少推广活动

  • 推广活动引入多少用户

  • 推广活动引入多少流量

  • 推广活动引入多少利润


其他

  • SSL证书监控

  • 存活性 进程是否还在,端口监听、Log滚动

  • 健康指标 MQ消息堆积量

  • 接口监控 API成功率,延迟情况,QPS等等


监控报警

  • 邮件

  • 短信

  • 钉钉、微信、企业微信等其他即时通信软件

  • 电话


报警处理

故障自愈:服务器宕机自动启动。利用软件机制Supervisor,Systemd或者自定义脚本实现。

综合监控

硬件监控

通过SNMP来进行路由器交换机的监控、其他内容使用IPMI实现。如果都是公有云,可以忽略这部分内容。案例:Open-Falcon监控H3C-ER3260G2路由器

系统监控

服务监控

  • 服务自带

    • Nginx自带status模块

    • PHP相应status模块

    • MySQL利用Percona官方工具进行监控

  • 通过自定义方法获取数据

    • MySQL show global status xxx;

    • Redis info指令信息


网络监控(混合云架构)

  • SmokePing

  • SmartPing


安全监控

  • 云服务直接用云安全组即可,或者补充本机iptables

  • 硬件防火墙

  • Web服务使用Nginx+Lua实现Web层面的防火墙,或者Openresty


日志监控

ELK、Graylog实现异常日志,错误日志关键字的监控。

业务监控

确定监控指标,监控起来,业务不同各不相同。

流量分析

建议使用百度统计,Google统计,商业,研发嵌入代码实现。或者使用piwik

可视化

Dashboard

自动化监控

通过API,批量操作

监控总结

完整的监控系统,需要对业务有详尽的了解,软件只是手段。

原文链接:https://zhuanlan.zhihu.com/p/342809838


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐