【运维面试】k8s的监控指标 太过爱你忘了你带给我的痛 2022-11-16 10:50 225阅读 0赞 一般在公司里我们都是使用prometheus进行监控,先说一下prometheus的工作核心: prometheus是使用 Pull (抓取)的方式去搜集被监控对象的 Metrics 数据(监控指标数据),然后,再把这些数据保存在一个 TSDB (时间序列数据库,比如 OpenTSDB、InfluxDB 等)当中,以便后续可以按照时间进行检索。 有了这套核心监控机制, Prometheus 剩下的组件就是用来配合这套机制的运行。比如 Pushgateway,可以允许被监控对象以 Push 的方式向 Prometheus 推送 Metrics 数据。 而 Alertmanager,则可以根据 Metrics 信息灵活地设置报警。当然, Prometheus 最受用户欢迎的功能,还是通过 Grafana 对外暴露出的、可以灵活配置的监控数据可视化界面。 kubernetes的监控体系: 1. 宿主机的监控数据: 比如节点的负载,CPU,内存,磁盘,网络这些常规的信息,当然你也可以查看[https://github.com/prometheus/node\_exporter\#enabled-by-default][https_github.com_prometheus_node_exporter_enabled-by-default] 来看看这些指标,实在是太多了。 2. 对apiserver,kubelet等组件的监控,比如工作队列的长度,请求的QPS和数据延迟等,主要是检查k8s本身的工作情况 3. k8s相关的监控数据,比如对pod,node,容器,service等主要k8s概念进行监控。 在监控指标的规划上需要遵从USE原则和RED原则 USE: 1. 利用率 2. 饱和度 3. 错误率 RED原则: 4. 每秒请求数 5. 每秒错误数 6. 服务响应时间 这里需要注意: promotheus采用的是pull的模式。 [https_github.com_prometheus_node_exporter_enabled-by-default]: https://github.com/prometheus/node_exporter#enabled-by-default
还没有评论,来说两句吧...