监控的对象(对象)
排名不分先后:
第一部分、基础设施监控
计算、存储、网络
监控的内容(结果)
监控的目的:(1)发现端倪;(2)故障通知;(3)自动修复
综合所述,监控的深度有以下这四方面:可用性监控、性能监控、日志监控、自定义监控;
可用性监控
1)这是最简单的层面监控,比如:监控端口是否活。
性能监控
比如:虽然CPU正常运作,但CPU的占用率是否一直处在一个很高的水平?
日志监控
主要是应用日志监控,其次还有安全审计日志、系统日志等。这些日志监控可确保我们人员操作的合规性。应用日志也会为后续的全链路监控提供跟踪依据,为故障定位作为参考依据。
自定义监控
我们会有很多来自于业务方面的需求,自己定义的指标,比如过去十分钟的成交量有多少,虽然这些kpi可以通过其他方式查询到,但是如果能够直接集成在监控系统中进行查询,提供附加的自定义监控,那就能更好地满足业务监控需求,从业务的角度去了解企业业务的运行状况。
监控的方法(工具)
MRTG – Multi Router Traffic Grapher
https://oss.oetiker.ch/mrtg/
https://github.com/oetiker/mrtg
https://en.wikipedia.org/wiki/Multi_Router_Traffic_Grapher
Perl 使用 SNMP 采集数据 生成 PNG 等图片,以 Web 形式展示
Cacti
PHP MySQL SNMP RRDtool LDAP
SmokePing
https://oss.oetiker.ch/smokeping
PING WWW DNS SSH RRDtool
Graphite
https://github.com/graphite-project/graphite-web
Wikipedia/Graphite
Python Django 存储数据 按需绘图
Nagios
https://github.com/NagiosEnterprises/nagioscore
https://en.wikipedia.org/wiki/Nagios
监控系统 服务可用性 网络信息 WebUI 服务可用性 告警
Zenoss Core
https://www.zenoss.com/get-started
CMDB 发现管理各类资产 监控和报告IT架构中的资源状态和性能 与CMDB关联的事件和错误管理系统 SMTP收集数据
Ganglia
http://ganglia.info
Wikipedia/Ganglia
分布式 跨平台 监控集群 开销低 RRDtool
OpenTSDB
HBase存储时序数据 数据存储 可接入告警系统 从大规模集群中采集(设备 系统 程序) WebUI 实时性高
Zabbix
数据拉取:Agent SNMP IPMI JMX Telnet SSH等等
PHP MySQL 告警 可扩展
Prometheus
Netdata
ntopng
流量监控工具
netdata
Netdata 是系统和应用程序的分布式、实时、性能、健康监控。 它是您在所有系统和容器上安装的高度优化的监视代理程序。
GitHub – https://github.com/netdata/netdata
OpenMetrics
OpenMetrics:一种云原生、高度可扩展的指标协议。它定义了大规模上报云原生指标的事实标准,同时支持文本表示协议和 Protocol Buffers 协议。虽然时间序列可以支持任意字符串或二进制数据,但 RFC 只针对和包括数字数据。得益于 Prometheus 的流行,作为 Prometheus 的监控数据采集方案,OpenMetrics 可能很快会成为未来监控的业界标准;
Lables
cluster, CLUSTER,集群名;
Variables
变量名 | 显示名 | 描述 |
---|---|---|
DS_PROMETHEUS | Data source | 数据源 |
cluster | Cluster | 集群名 |